Mathematica Programming: An Advanced Introduction, is mostly for people who want to understand Mathematica programming, and particularly those Mathematica users who would like to make a transition from a user to a programmer, or perhaps those who already have some limited Mathematica programming experience but want to improve their command of the system. Expert Mathematica programmers will probably find little new information in the book.
The first part of the audience for this book are scientists who would like to understand Mathematica programming better, to take advantage of the possibilities it offers. The second part are (software) engineers who may consider Mathematica as a tool for a prototype design. In this context, Mathematica can serve as a tool of "experimental programming", especially useful in projects where some non-trivial computations/research have to accompany programming.
Introduction | Elementary Operations | Lists | Rules, Patterns and Functions | Functions on Lists and Functional Programming | Writing Efficient Programs: Some Techniques and Applications