Message Boards Message Boards


Learning to program in the Wolfram Language: where to start?

Posted 10 years ago
5 Replies
0 Total Likes
Hello, I have read with avid interest the new developement with the Wolfram language and would like to start leaning how to program in it. I am particularly interested in its integration of natural language. 

So far, I have found a free course on Mathematica and a paid course on Wolfgram programming but no free course/ressource on the latter, could someone please direct me where to start?

Thanks a lot, André 
POSTED BY: Andre Munro
5 Replies
For a slightly more advanced level do take a look at these two free books:

Mathematic Programming: an advanced introduction, by Leonid Shifrin

Power Programming with Mathematica: The Kernel, by David Wagner.

The second book is again old, but very useful.  It was released for free recently.

Regarding the natural language (Wolfram|Alpha) integration, I'd say forget about it if you want to do serious work.  I find it useful in two ways:  if you're a beginner, you can try to type in something in Engish and have the system translate it to a program Mathematica expression.  That will be a starting point for you to find and to learn the correct syntax.  I also find it useful to retreive data from Wolfram|Alpha, but that's not really Mathematica programming, just querying for data.

To learn, use the tutorials I linked, and browse the main active Mathematica forums (this one and Mathematica.SE).
POSTED BY: Szabolcs Horvát
Take a look at this long list of categorized resources:

It has a list of beginner tutorials as well.

Personally I like to recommend starting with Programming Paradigms via Mathematica.  It is very old, but it is a good and still relevant introduction, especially if you not particularly fluent in other programming languages either.  It has exercises to test yourself.  Once you worked on through this, you can move on to study the details and new additions to the language.  You are going to keep using the reference manual constantly while you work with Mathematica, and while you work through the course I suggested.
POSTED BY: Szabolcs Horvát
Posted 10 years ago
i may be biased LOL but the best introduction to WL for self-instruction is free and is available for dowload at  (the newest version with 4 Game of Life programs as examples i the final section was just posted yesterday, 12/3/13) of course, there are other books that you can buy (including some by me LOL - note: i no longer get book royalties from any of them so i have no financial stake in anyone buying them) which are quite good and useful  (note: i have found free pdf's of essentially every single one of these books on the Internet but it takes a great deal of searching to locate them - looking for the specific book title doesn't work - i don't understand the google search algorithm) but the tutorial is the actual material used for teaching WL many times at many places to many different types of people - i.e. it is extensively field tested). my suggestion based on my own learning experience (which was based on what my original programmming guru, shawn sheridan at wolfram research (note: to get an idea about shawn - who is a great guy -  see him ask steve jobs a question at is to find a well-written WL program that interests you (in my case it was roman maeder's random walk program) and dissect it to learn how it works and then start to modify the program in whatever way you want (note: it would be great if you could go to the Demos and download a program that iterest you from there but i find the code there to often be less than optimum and to be inside a wrapper of code used to make the demo - e.g the Manipulate function - making it difficult to 'unwrap' to get to the core code. I strongly urge you to NOT learn to program procedurally because it is a terrible style of programming (according to SW himself). once you've learned how to program in WL using its functional, rule-based, pattern-matching  styles, you can always use procedural constructs if you asnt but do not start off that way or you'll be learning to think (and programming is a type of thinking) in an awful way. of ourse this is all IMO.
POSTED BY: Richard Gaylord
I think I have found the answer to my own question:

P.S: Thanks a lot Frank
POSTED BY: Andre Munro
I have a Raspberry Pi with Mathematica and the Wolfram language on it.  It looks to me that the Wolfram language is the language used in Mathematica, but in command line form, rather than in a notebook.
POSTED BY: Frank Kampas
Reply to this discussion
Community posts can be styled and formatted using the Markdown syntax.
Reply Preview
or Discard

Group Abstract Group Abstract