recent links:
Ingolf Dahl | Advanced Directx examples | ArneEide | MarkSenn | Rbarrere | Wiki sandbox page | hattons | Mathematica resources
|
From NewWiki
Implications
March 2005: Chris Chiasson One thing that the Mathematica book does not cover, as an issue of scoping, is the set of ''implications'' of the coding principles: "Mathematica is a system built on a fairly small set of very powerful principles. This book describes those principles, but by no means spells out all of their implications. In particular, while the book describes the elements that go into Mathematica programs, it does not give detailed examples of complete programs. For those, you should look at other publications." - Stephen Wolfram, The Mathematica Book When I was beginning to learn Mathematica (I wonder if I am still beginning), one of the problems I had involved thinking in terms of things like definitions and function calls. Mathematica does not seem to have these. Mathematica has an expression engine with pattern matching. When someone typesIn[1]:= f[x_]=x!
Out[1]:=
Agreed. I noticed this and as a programmer, found the notion of a function definition as a pattern to be matched to be intriguing. I think the Maeder book on Mathematica Programming gives some perspective here as well, but I admit I am only just beginning to consider the broader implications of this. The generalizations used to implement the 'everything is an expression' is another concept I find intriguing. Sorry I don't have more to add than that--at this point, at least. October 2005: SarahF
See the discussion tab for this page for some basics on function definitions in Mathematica. Much more could be said... November 15th 2005: STH I find the following attributes and idioms to be very suggestive of the essence of how Mathematica and mathematics are related.
- Flat
- Orderless
- OneIdentity
- Optional
- Listable
In[3]:= x_ + y_.//FullForm
Out[3]:=
In[4]:= Attributes[Plus]
Out[4]:=
In[5]:= DefaultValues[Plus]
Out[5]:=
In[6]:= x_ * y_.//FullForm
Out[6]:=
In[7]:= Attributes[Times]
Out[7]:=
In[8]:= DefaultValues[Times]
Out[8]:=
In[9]:= x_ ^ y_.//FullForm
Out[9]:=
In[10]:= Attributes[Power]
Out[10]:=
In[11]:= DefaultValues[Power]
Out[11]:=
Ingolf Dahl
Advanced Directx examples
discussion
