Mastering Mathematica® - Programming Methods and Applications - John Gray (Academic Press, 1994).pdf
ISBN 0122960408
This text addresses the use of Mathematica as a symbolic manipulator, a programming language and a general tool for knowledge representation. Also included is coverage of functional programming, rule-based programming, procedural programming, object-oriented programming and graphics programming