Welcome to the Dictionary of Programming Languages, a compendium
of computer coding methods assembled to provide information and
aid your appreciation for computer science history.
Browse the dictionary by clicking on a section:
A
B
C
D
E
F
G
H
I
JK
L
M
N
O
P
QR
S
T
UV
WXYZ+
Get a full dump of the dictionary:
List of Names
Short Form
Full Form

Mathematica
 Language type:
M  Mathematical or Simulation
 Description:
Mathematica is a formidable commercial
system for symbolic mathematics and
graphics. Most of the system is written
in the Mathematica language, a powerful
hybrid interpreted language for expressing
mathematical formulae and procedures.
The end user also employs the Mathematica
language to perform describe the problems
they wish Mathematica to solve to computations
they want it to undertake.
The language has a very broad complement
of features:
 Rulebased semantics will patternmatching
 Variety of data types: symbols, several
kinds of numbers, lists, vectors, arrays,
graphics objects, strings, etc...
 Full set of procedural controlflow constructs
 Facilties for reflection and onthefly
construct of code
Data elements in Mathematica are
strongly typed, but the language system
performs many types of automatic
conversion, especially on numbers.
All numbers in Mathematica are
unlimited precision: integers, reals,
rationals, and complex. Programmers
can also define their own data types,
after a fashion.
[Note: in a sense, Mathematica has only
one nonprimitive data type: the "basic form." All
aggregate data and symbolic expressions in Mathematica are internally stored
as a head and a body, where the head defines the
data type. Programmers can create their
own head types, and do, and in that sense
they are defining new data types.]
For many users, the power of the Mathematica
system is its immense library of predefined
functions. These functions fall into
several broad groups, some of which are: arithmetic,
algebra, calculus, graphics, I/O,
programming, and the GUI interface.
As an interpreter, Mathematica can
easily import new functions and
package dynamically. Several hundred
such packages have been written for
the system, in academia and industry.
There is only one Mathematica, now in
its third major release. The system
is available commercially for Windows,
Macintosh, and most Unix platforms.
 Origin:
 See Also:
 Remarks:
Programming with Mathematica has all the
ease and pleasure of using
the best interpreters. Availability
of procedural, functional, and rulebased
programming models allow the user to
experiment and choose the most suitable
style for their background and problem
domain. Of course, choice of style can
have very serious implications for
performance  the mathematical core is
far faster at performing some kinds of
operations than others.
Like Hope, Mathematica allows the
programmer to set up very complex
pattern matching rules to control how
functions are applied during computation.
This capabilities is very powerful;
users have coded up significant areas of
mathematical research in the language.
The rivalry between Mathematica and its
leading competitor Maple sometimes gets
bitter. Both have their strengths, but
in the area of the programming language,
Mathematica is somewhat more powerful.
 Links:

 Date:
 Sample code:
(* RandomWalk example from Maeder, 1990 *)
RandomWalk::usage = "RandomWalk[n] plots a random walk of length n"
RandomWalk[n_Integer] :=
Block[{loc = {0.0, 0.0}, dir, points= Table[0, {n+1}], range = N[{0, 2 Pi}]},
points[[1]] = loc;
Do[
dir = Random[Real, range];
loc += {Cos[dir], Sin[dir]};
points[[i]] = loc,
{i, 2, n+1}];
Show[ Graphics[{Point[{0,0}], Line[points]}],
Framed > True, AspectRation > Automatic]
]
Descriptions in this dictionary are ©199799 Neal Ziring. Some
examples copyright of their respective authors. Some
technologies and languages are trademarked. Permission to
copy descriptions is granted as long as authorship credit is preserved.
Comments on this dictionary, corrections and suggestions, are all welcome.
Please use email, the address is ziring@home.com
[Ziring MicroWeb Home]
[Dictionary Start]
[Sign Guestbook]
Dictionary and script maintained by Neal Ziring, last major modifications 3/18/98. Most recent
additions to dictionary and master list, 1/00.