Programming in Mathematica - Maeder, Roman E. (Addison-Wesley Longman, Inc., 1997)