This is a pleasant and concise introduction to Mathematica, concentrating on its data structures and control structures rather than its myriad built-in mathematical functions. The book makes especially heavy use of lists and pure functions, giving Mathematica a flavor of the LISP programming language. Because Mathematica is primarily a functional programming language, this approach makes sense, but is unusual among Mathematica textbooks; these more commonly treat the program as a high-powered customizable calculator.
I say the book is “pleasant” because reading it is like having the author sitting next to you, answering questions just as you raise them. The book is particularly good at explaining how to organize output (and sometimes input). Just as you are thinking, “What a mess! What does it mean?”, the author steps in and shows you how to reformat it so it makes sense.
Paradoxically for a text on mathematical software, this book is not very concerned with solving math problems. Most of the examples are from number theory; the author says (p. viii), “I have mostly chosen problems having something to do with numbers as they do not need any particular background.” The “problem-centered” in the title means that the narrative is driven by looking a particular problems, rather than at commands; it is not a problem book, and few of the problems are challenging mathematically. A good book that shows how Mathematica can be used on hard math problems is Wagon’s Mathematica® in Action: Problem Solving Through Visualization and Computation.
This is a valuable book, despite its simplicity and introductory nature. Even though I’ve been using Mathematica for about fifteen years, I still learned several useful things from the book.
Allen Stenger is a math hobbyist and retired software developer. He is webmaster and newsletter editor for the MAA Southwestern Section and is an editor of the Missouri Journal of Mathematical Sciences. His mathematical interests are number theory and classical analysis. He volunteers in his spare time at MathNerds.org, a math help site that fosters inquiry learning.