[comp.sys.mac] Mathematica - I like it

jeff@ndcheg.cheg.nd.edu (Jeff Kantor) (07/29/88)

Yesterday I received my copy of Mathematica, and thought I would post a 
few comments.  As a sometimes user of SMP (a Symbolic Manipulation Program)
developed about 5-7 years ago by Steven Wolfram, I was attracted to  Mathematica
as a possibly friendlier and updated variant that would run on a less expensive
Macintosh platform.  I need such a tool to carry out routine, but rather
lengthy and error prone symbolic calculations  in the area of nonlinear control
theory.

I ordered the Enhanced version for the Mac II. (list price: $795). I have
successfully loaded and run this on a Mac SE with 4MB of memory and the
Radius Accelerator w/68881.  Now that I have had a chance to browse the manual,
apparently the only difference between the Standard version (list price $495)
and  the expensive version is support of the 68881.  Frankly, $300 seems like
a very steep price to pay for 68881 support.  Incidently, there is no upgrade
policy.  If you have the standard version, and later decide for the enhanced
version, be ready to fork over the full price for the new version.  This bit
of extortion is really uncalled for, in my opinion. I wonder what the upgrade
policy will be when version 2.0 comes out?

As others have already noted on the net, the Mathematica book from Addison-Wesley
contains the how-to-do-it bit.  You must purchase that seperately 
in order to find out
how to 'do' Mathematica.  The manuals that come with the software only
describe the Macintosh front-end.  It's sort of like the case for TeX, where
the TeXbook is a vital part of the documentation.  I think it's a bit cheesy
and presumptuous not to include the $30 paperback with the software, but there
you are.

The software is readily installed using the enclosed instructions.  It takes
about 3MB of disk.  It takes a minimum of 2MB ram to load the front-end and
kernal.  It's better to have 3MB for problem solving room.  4MB is probably
more realistic for any kind of serious use.  Perhaps more.

Before blasting Wolfram Research, however, consider that SMP regularly uses
10-20MB on a Sun Workstation (virtual memory saves the day.)  Symbolic
manipulators require elbow room (Maple notwithstanding). So that is simply
what it takes to put big software in small workstations.

Moreover, if the kernal is running remotely, the user can get by with 1MB
running only the front-end.  The catch is that not very many of us yet have
access to a remote kernal.  I can only imagine what will happen to campus
computer centers when Calc 1 students all start up remote Mathematica kernals
the night before problem sets are due! 

The front-end is very appealling.  The notebook metaphor is very nice, I'm
tempted to write a sort of 'living paper' regarding nonlinear observer design
for chemical reactors.  Illustrations, lot's of graphics, see what happens
when certain models are introduced for the reaction rate expressions, do the
closed loop simulations (numerically), that type of thing.  It's worth the
$495, and may well be a revolutionary product in its own right.  I don't say
that lightly.
 
The front end has some sort of postscript interpreter builtin.  You can
type PostScript commands, tag them with a PostScript attribute, and presto,
format the graphic.  And it goes two ways, unformat a graphic and you
see the PostScript description.  The manual says that its not a complete
PostScript Implementation, but doesn't say what's not there.

The graphics are pretty outrageous.  Shading, lighting, parametric plotting,
etc.  Also animation, provided the individual frames are computed ahead of
time.  The grey levels look OK on the Mac screen, and actively good on the
Laserwriter output.  Can't wait to see how things look in 256 colors that
are blended together by some sort of dithering algorithm.

The Mathematica kernal will seem very familiar to SMP users.  The syntax
is cryptic.  It will probably be flamed by a lot of neophytes, but praised
by SMP users as a significant improvement.  In fact, I like Mathematica.
It's brief and to the point, the control structures are not too hard to figure
out, and its suited to doing Math computations. But it is complex, just take
a look at Appendix B of the Mathematica book to get an idea of all the builtin
functions. Learning to program in Mathematica would be like learning to program
in any rich high level language.  One should expect a learning curve, maybe
a few days to learn basic common commands, a few weeks for writing functions,
maybe several months to become really proficient.

The online help is very well done.  I'm sort of old-fashioned, I don't esp.
care to read and contemplate complex matters written on a computer screen.
But others may find help to be an effective substitute for the book.

The software software has a nice feel to it, seems speedy enough and reasonably
robust.  Spelling errors in the dialog screens make me a bit nervous about
where other bugs might be. 

So is this a revolutionary product like the newspapers say?  For scientific
and engineering work, the Mathematica kernal is a practical alternative
to mainframe symbolic algebra packages.
Mathematica seems to be good implementation for
a low end workstation environment.  So the kernal should be regarded as an
evolutionary product.  By itself, something worthwhile.

The Front-end provides an exceptionally fine way of using the Mathematica
kernal. The ability to write 'living papers' has much potential for both
education and mathematically oriented engineering research.  Much more so,
in my opinion, than so-called hypertext. 

In summary, the overall Mathematica environment (kernal and front-end) might
well change how I  do my analytical work.  I'll spend the time it takes to 
learn to use it well.  It will nicely complement my other main research tool,
Matlab, a programmable numerical linear algebra package.  But I wonder if
people other than technical professionals will be willing to pay the stiff
price, or tolerate the arrogance of Wolfram Research sales policies.

Jeffrey Kantor
Univ. of Notre Dame

jeff@ndcheg.cheg.nd.edu

simon@alberta.UUCP (Simon Tortike) (07/29/88)

In article <601@ndcheg.cheg.nd.edu>, jeff@ndcheg.cheg.nd.edu (Jeff Kantor) writes:
> In summary, the overall Mathematica environment (kernal and front-end) might
> well change how I  do my analytical work.  I'll spend the time it takes to 
> learn to use it well.  It will nicely complement my other main research tool,
> Matlab, a programmable numerical linear algebra package.  But I wonder if
> people other than technical professionals will be willing to pay the stiff
> price, or tolerate the arrogance of Wolfram Research sales policies.
> 
> Jeffrey Kantor
> Univ. of Notre Dame
> 
> jeff@ndcheg.cheg.nd.edu
I just got a note today from the FaceIt people (FaceIt Facets) with
ads for two products developed using the latest FaceIt interface. One 
expensive one was for plotting, but the one that got my attention was
an implementation of the Matlab FORTRAN source, MacMatlab, for only
US$50.00.  Two applications are provided, one to run on MC68000, and
one for 68020/68881 units.  It included 3d plotting, so I wasted no time
ordering it.  I used to use APL for matrix manipulation, but no one has
come out with an APL that will run on a Mac II yet.  Trapeze is quite good
at linear algebra, but isn't quick and dirty, nor does it do 3d plots.
  -------------------
Simon Tortike
Dept Min, Met &    UUCP:   ...{ubc-vision,mnetor}!alberta!simon
  Petroleum Engg   BITNET: stortike@ualtavm
Univ. of Alberta   AGT:    403/432-3338
Edmonton, AB
Canada T6G 2G6

jeff@ndcheg.cheg.nd.edu (Jeffrey C. Kantor) (08/01/88)

In article <1491@pembina.UUCP>, simon@alberta.UUCP (Simon Tortike) writes:
> In article <601@ndcheg.cheg.nd.edu>, jeff@ndcheg.cheg.nd.edu (Jeff Kantor) writes:
> > learn to use it well.  It will nicely complement my other main research tool,
> > Matlab, a programmable numerical linear algebra package.  But I wonder if
> > people other than technical professionals will be willing to pay the stiff

> ...but the one that got my attention was
> an implementation of the Matlab FORTRAN source, MacMatlab, for only
> US$50.00.  Two applications are provided, one to run on MC68000, and
> one for 68020/68881 units.  It included 3d plotting, so I wasted no time
> ordering it.  I used to use APL for matrix manipulation, but no one has
> come out with an APL that will run on a Mac II yet.  Trapeze is quite good
> at linear algebra, but isn't quick and dirty, nor does it do 3d plots.
>   -------------------
> Simon Tortike
> Dept Min, Met &    UUCP:   ...{ubc-vision,mnetor}!alberta!simon
>   Petroleum Engg   BITNET: stortike@ualtavm
> Univ. of Alberta   AGT:    403/432-3338

Matlab is a numerical linear algebra package that is available from a number
of sources.  But they are not all the same!

Matlab was orginally written in Fortran as an interactive front end to Linpack
and Eispack.  This was done by Cleve Moler at U. New Mexico for instructional
use.  The Fortran code is apparently public domain (but please don't ask me
how to get a copy).  That code was subsequently used as the basis for a couple
of commericial control design packages, Control-C and Matrix-X.

The MathWorks was started by several individuals involved with the development
of the Fortran code, including Cleve Moler.  They apparently rewrote the code
from scratch in C to make it more efficient, include more features, a much
better Macro facility, and for portability.  The MathWorks version is available
on PC's, Macs, Vaxes, Suns, 386's, perhaps others as well.  The Macro facility
is very well done, it's really better described as a programming language
complete with functions, local & global variables, control structures, etc.
The good thing is that primatives operate on vectors and matrices, making it
easy to very quickly write some impressive numerical codes.

Several Univ. (Illinois and Minnesota are two) have put Macintosh front ends
on the original Fortran code.  I've looked at these, and while they are
nice products for the price (ca. $50), I don't think they are up to same 
standard as the MathWorks product.  Particularly regarding the Macro facilities.
I think most technical professionals willing to spend the time to learn
to Matlab properly won't mind the higher price of the MathWorks (typ. $400-$800,
with good discounts for Univ.).  It really is an outstanding product if you
are doing any type of Scientific Computing involving matrices or vectors.

Jeff Kantor
Univ. of Notre Dame

jeff@ndcheg.cheg.nd.edu

-- 
Jeff Kantor                      US Mail:  Department of Chemical Engineering
                                           University of Notre Dame
    uucp:  iuvax!ndmath!ndcheg!jeff        Notre Dame, IN   46556  USA
internet:  jeff@ndcheg.cheg.nd.edu

phssra@emory.uucp (Scott R. Anderson) (08/02/88)

In article <601@ndcheg.cheg.nd.edu> jeff@ndcheg.cheg.nd.edu (Jeff Kantor) writes:
>But I wonder if
>people other than technical professionals will be willing to pay the stiff
>price, or tolerate the arrogance of Wolfram Research sales policies.

Well, this is one technical professional who won't pay the stiff price, at
least not out of his own pocketbook.  I also don't appreciate their sales
policies ($300 for 68881 support?  Come on!)  I'll just continue to use
Macsyma on the local mainframe instead.

*                                     Scott Robert Anderson
  *      **                           gatech!emoryu1!phssra
   *   *    *    **                   phssra@emoryu1.{bitnet,csnet}
    * *      * *    * **
     *        *      *  * * * * * * * * * * * * * * * * * * * * * * * * * * * *