Mastering mathematica Programming methods and applications - Gray, John W. (San Diego Academic Press, 1998)