Drexel dragonThe Math ForumDonate to the Math Forum



Search All of the Math Forum:

Views expressed in these public forums are not endorsed by Drexel University or The Math Forum.


Math Forum » Discussions » Software » comp.soft-sys.math.mathematica

Topic: Mathematica and Lisp
Replies: 83   Last Post: Mar 5, 2013 10:12 PM

Advanced Search

Back to Topic List Back to Topic List Jump to Tree View Jump to Tree View   Messages: [ Previous | Next ]
David Bailey

Posts: 714
Registered: 11/7/08
Re: Mathematica and Lisp
Posted: Jan 22, 2013 11:18 PM
  Click to see the message monospaced in plain text Plain Text   Click to reply to this topic Reply

On 22/01/2013 07:40, Richard Fateman wrote:

>> Well I'd imagine that engineers who simply want to perform a
>> mathematical calculation - one that doesn't come straight out of the
>> box, like an isolated integral - the Mathematica language is probably
>> easier to use than LISP.

>
> Using Mathematica as a simple command language -- a front end to the
> symbolic mathematics application program underneath -- is quite
> different from using Mathematica as a language in which to build
> significant new applications.

I tried to describe exactly that situation in my original comment - one
in which the user had to write a little code to get what he wants.
>
> Even so, you seem to forget the trouble new users have in typing
> simple mathematics into Mathematica. The surprise when sin(x)/x
> turns out to be sin.
>

This is true, but one way or another, they are going to face this with
any computer algebra package because in CA variables can't be restricted
to be single letters - there just aren't enough of them. I used to give
an introduction to Mathematica, and I used to show examples like that
early on, and motivate people by pointing out that ordinary math
notation is actually ambiguous - e.g. f(x)/x - once they saw that, the
extra rules of Mathematica made perfect sense.
>>>>

>
> First of all, it would be (foo 1 2 3). No commas.
>

Yes - a typing error, but it probably also shows how long ago I gave up
on LISP!
> and that the language did live up
>> to its name: Lots of Irritating Sets of Parentheses! Once it had to add
>> other constructs that elegance was lost.

>
> Any experienced Lisp programmer these days will use an editor that keeps
> track of both indentation and parentheses, and so the structure of a
> program will be quite evident from the indentation. A programmer
> will probably first notice the error in indentation and correct it by
> adding or removing a parenthesis. It is an enormous boon to the
> construction of programs with nested structure, such as if-then-else
> conditionals, and mathematical expressions. In case you hadn't noticed,
> the parenthesis structure for large deeply nested mathematical
> expressions is difficult for humans to comprehend accurately;
> fortunately the INPUT lines in Mathematica are generally short, while
> the OUTPUTS are the complicated ones.
>
> The prefix vs. infix issue is also a red herring. If Lisp programmers
> wanted to use infix they would use any of a number of free infix front
> ends. They rarely do.

Having 3 types of brackets, definitely helps to discern the structure,
even with indentation. Perhaps LISP could have been improved by
permitting all three, to be used interchangeably so long as they paired
correctly.

Unless the infix front end distinguished reliably between code and data
(which I don't think it could, in general), you would still have a
problem - ideally you want to see

sin(a)

but

(apples oranges pears)

Also, if you print out an expression, you want the first format, and if
you print a list, you want the second. If you print a fragment of code,
you may want to see a mixture of both styles. Extra types of brackets
make all that simple.
>

> I rarely write programs of any length in Mathematica, because (as I've
> said) I hold the programming language in generally low regard.
> On the other hand I am pretty much familiar with the language because
> I wrote a parser for it (in Lisp) some time ago, and in my experience
> one of the best ways to really learn a language is to "implement" it.


Did you implement it, or just parse it?

I do agree about learning a language by implementing it. Two of us once
wrote a Fortran compiler in Fortran (!!), and bootstrapped it. It was
widely used on Prime computers. One of the things I discovered, was that
the old issue about Fortran's context sensitive grammar, was an utterly
trivial problem!
>
> I do find it an object of curiosity to see how some ideas are
> expressed by the symbolic mathematical routines (e.g. integration).
> And the Solve (and related, e.g. Reduce) programs have followed
> an interesting path of improvement.
>
> It is also useful for finding high-precision values of numerical
> library functions to compare to other programs, e.g. Bessel functions,
> that I was experimenting with. Unfortunately for Mathematica, I found
> bugs in
> its Bessel function (reported and acknowledged by them).
> Here's one in version 8 (I do not yet have version 9 installed)
> q=429515858585961022071539/6922263581864661506963;
>
> a=N[BesselJ[0,q],45];
> b=N[BesselJ[0,q],100];
> c=N[BesselJ[0,q],45];
>
> a==c
> returns False.


>
> If I were using a computer to do something that required correct answers
> for, say, life safety, like building a bridge, I would follow WRI's
> advice and not use Mathematica.
> (see http://www.wolframalpha.com/termsofuse/)


So have you found the perfect language - one in which none of the
functions contain imperfections, and yet which offers anything
approaching the computational sophistication of Mathematica?

BTW, I wouldn't be surprised if a lot of safety critical code isn't
written in Fortran!

David Bailey
http://www.dbaileyconsultancy.co.uk






Date Subject Author
1/11/13
Read Mathematica and Lisp
amzoti
1/12/13
Read Re: Mathematica and Lisp
Richard Fateman
1/12/13
Read Re: Mathematica and Lisp
David Bailey
1/14/13
Read Re: Mathematica and Lisp
Richard Fateman
1/14/13
Read Re: Mathematica and Lisp
David Bailey
1/16/13
Read Re: Mathematica and Lisp
Richard Fateman
1/18/13
Read Re: Mathematica and Lisp
David Bailey
1/22/13
Read Re: Mathematica and Lisp
Richard Fateman
1/22/13
Read Re: Mathematica and Lisp
David Bailey
1/24/13
Read Re: Mathematica and Lisp
Richard Fateman
1/25/13
Read Re: Mathematica and Lisp
Richard Fateman
1/26/13
Read Re: Mathematica and Lisp
Murray Eisenberg
1/26/13
Read Re: Mathematica and Lisp
Murray Eisenberg
1/26/13
Read Re: Mathematica and Lisp
W. Craig Carter
1/16/13
Read Re: Mathematica and Lisp
Murray Eisenberg
1/16/13
Read Re: Mathematica and Lisp
Richard Fateman
1/16/13
Read Re: Mathematica and Lisp
David Bailey
1/18/13
Read Re: Mathematica and Lisp
Murray Eisenberg
1/31/13
Read Re: Mathematica and Lisp
Noqsi
2/2/13
Read Re: Mathematica and Lisp
Daniel Lichtblau
2/3/13
Read Re: Mathematica and Lisp
Richard Fateman
2/2/13
Read Re: Mathematica and Lisp
Richard Fateman
2/3/13
Read Re: Mathematica and Lisp
David Bailey
2/5/13
Read Re: Mathematica and Lisp
Richard Fateman
2/6/13
Read Re: Mathematica and Lisp
David Bailey
2/6/13
Read Re: Mathematica and Lisp
Richard Fateman
2/3/13
Read Re: Mathematica and Lisp
Andrzej Kozlowski
2/5/13
Read Re: Mathematica and Lisp
Richard Fateman
2/6/13
Read Re: Mathematica and Lisp
David Bailey
2/8/13
Read Palette problem with Feynman slash notation
Dave Snead
2/5/13
Read Re: Mathematica and Lisp
Bill Rowe
2/6/13
Read Re: Mathematica and Lisp
Joseph Gwinn
2/3/13
Read Re: Mathematica and Lisp
Matthias Bode
2/3/13
Read Re: Mathematica and Lisp
Noqsi
2/6/13
Read Re: Mathematica and Lisp
Richard Fateman
2/6/13
Read Re: Mathematica and Lisp
David Bailey
2/6/13
Read Re: Mathematica and Lisp
mathgroup
2/4/13
Read Re: Mathematica and Lisp
Alex Krasnov
2/6/13
Read Re: Mathematica and Lisp
Noqsi
2/8/13
Read Re: Mathematica and Lisp
Richard Fateman
2/9/13
Read Re: Mathematica and Lisp
János Löbb
2/9/13
Read Re: Mathematica and Lisp
Richard Fateman
2/10/13
Read Re: Mathematica and Lisp
michael
2/10/13
Read Re: Mathematica and Lisp
Bill Rowe
2/8/13
Read Re: Mathematica and Lisp
Andrzej Kozlowski
2/8/13
Read Re: Mathematica and Lisp
Noqsi
2/9/13
Read Re: Mathematica and Lisp
Richard Fateman
2/10/13
Read Re: Mathematica and Lisp
David Bailey
2/9/13
Read Re: Mathematica and Lisp
Matthias Bode
2/15/13
Read Re: Mathematica and Lisp
Noqsi
2/17/13
Read Re: Mathematica and Lisp
David Bailey
2/18/13
Read Re: Mathematica and Lisp
Joseph Gwinn
2/18/13
Read Re: Mathematica and Lisp
David Park
2/22/13
Read Re: Mathematica and Lisp
Richard Fateman
2/23/13
Read Re: Mathematica and Lisp
David Bailey
2/23/13
Read Re: Mathematica and Lisp
Richard Fateman
2/25/13
Read Re: Mathematica and Lisp
David Bailey
2/26/13
Read Re: Mathematica and Lisp
Richard Fateman
2/27/13
Read Re: Mathematica and Lisp
Bill Rowe
2/27/13
Read Re: Mathematica and Lisp
Richard Fateman
3/2/13
Read Re: Mathematica and Lisp
Bill Rowe
3/3/13
Read Re: Mathematica and Lisp
Richard Fateman
3/3/13
Read Re: Mathematica and Lisp
Noqsi
3/5/13
Read Re: Mathematica and Lisp
Richard Fateman
3/5/13
Read Re: Mathematica and Lisp
Vince Virgilio
3/3/13
Read Re: Mathematica and Lisp
Bob Hanlon
1/16/13
Read Re: Mathematica and Lisp
Noqsi
1/16/13
Read Re: Mathematica and Lisp
Richard Fateman
1/18/13
Read Re: Mathematica and Lisp
Noqsi
2/23/13
Read Re: Mathematica and Lisp
Dr. Peter Klamser
2/25/13
Read Re: Mathematica and Lisp
Richard Fateman
2/26/13
Read Re: Mathematica and Lisp
Noqsi

Point your RSS reader here for a feed of the latest messages in this topic.

[Privacy Policy] [Terms of Use]

© Drexel University 1994-2014. All Rights Reserved.
The Math Forum is a research and educational enterprise of the Drexel University School of Education.