Re: languages for CAS .. was: Re: Which is the best CAS
- From: hrubin@xxxxxxxxxxxxxxxxxxxx (Herman Rubin)
- Date: 18 May 2009 15:16:01 -0400
In article <4A10F1D4.30700@xxxxxxxxxxxxxxx>,
Richard Fateman <fateman@xxxxxxxxxxxxxxx> wrote:
Dave wrote:
Francogrex wrote:
I don't get your argument, your post is not very consistent, since if
you're going from the premise of learning a CAS and a programming
language at the same time, both Axiom and Maxima (or Macsyma) are
based on "common lisp", a language a lot more advanced in many ways
(not only compilation and speed) than python and actually any other
language (even C languages)...
Like it or not, python is in much wider use than lisp. In fact, "common
lisp" is not very common at all.
In monster.com in USA, there are 10 jobs listed for Lisp, 263 for
COBOL, 611 for python. 3,095 for C++ 2532 for C#, 1950 for visual
basic, 1175 for PHP, 4740 for Java.
At one time Pascal was considered a hot language. 25 jobs now.
Lisp has outlasted quite a few languages. It is called Common Lisp
because it was motivated by finding a common ground for otherwise
distinct Lisp dialects from MIT, Stanford, Xerox/BBN, and a few other
places.
A search of http://jobsearch.monster.co.uk/ for jobs with 'python'
generates 89. For lisp it generates 0, for Mathematica it generates 1.
How many of the python jobs are deathly dull commercial web hosting?
I suspect the Lisp jobs are, on average, far more interesting.
Most non-trivial uses of CAS's will require programming.
I don't see why. But I suppose you could define non-trivial to mean
"requires programming".
I see an
advantage when the programming is based on a widely used language.
Then the advantage should be Java, not Python.
The user-level language in Maxima is "based on" Algol 60, which is
"based on" mathematical notation.
Sorry, Algol 60 is only vaguely based on mathematical
notation. What a Flexowriter could produce also had
a large effect on the language.
A very MAJOR part of the usefulness of "mathematical
notation" is that expressions can be written compactly and
in an easy to read format. Both of these are important;
the lack of a compact notation hindered mathematical
development at all stages. None of the languages cited
meets the requirements.
The computer can read whatever humans can write, but
not the other way. A modern computer is a superfast
subimbecile; it is not going to reason, but only to
do exactly what it is told.
Lisp has virtually all capabilities, but does not meet
the standard of compactness and easy readability. It
does have a means of providing multiresult functions,
but not as (a, b, c) = f(x, y), which should have been
in all languages after FORTRAN. I do not mean that
(a, b, c) is a vector or a struct, but that (in this case)
three outputs of the appropriate types are produced
somewhere, and the optimizer should decide where and
when to put them.
We also need a good macro language, so that a mathematician
can define an expression as a macro. For example, in using
an assembler language, we might want to have an overloaded
operator macro x = y - z, which is translated into the
appropriate code, using the types but with type override.
While machine independence is in general a good idea, it is
very expensive at times, and the user might need to get at
machine instructions, or give directions to the compiler.
I myself have made use of "ignoring" types.
--
This address is for information only. I do not claim that these views
are those of the Statistics Department or of Purdue University.
Herman Rubin, Department of Statistics, Purdue University
hrubin@xxxxxxxxxxxxxxx Phone: (765)494-6054 FAX: (765)494-0558
.
- Follow-Ups:
- Re: languages for CAS .. was: Re: Which is the best CAS
- From: Martin Rubey
- Re: languages for CAS .. was: Re: Which is the best CAS
- References:
- Which is the best CAS
- From: Francogrex
- Re: Which is the best CAS
- From: Francogrex
- Re: Which is the best CAS
- From: Dave
- languages for CAS .. was: Re: Which is the best CAS
- From: Richard Fateman
- Which is the best CAS
- Prev by Date: URGENT >>Assembly CODE project
- Next by Date: Re: languages for CAS .. was: Re: Which is the best CAS
- Previous by thread: Re: Which is the best CAS
- Next by thread: Re: languages for CAS .. was: Re: Which is the best CAS
- Index(es):
Relevant Pages
|