Re: Mathematica and Lisp

*To*: mathgroup at smc.vnet.net*Subject*: [mg130057] Re: Mathematica and Lisp*From*: Richard Fateman <fateman at cs.berkeley.edu>*Date*: Thu, 7 Mar 2013 04:00:17 -0500 (EST)*Delivered-to*: l-mathgroup@mail-archive0.wolfram.com*Delivered-to*: l-mathgroup@wolfram.com*Delivered-to*: mathgroup-newout@smc.vnet.net*Delivered-to*: mathgroup-newsend@smc.vnet.net*References*: <kgse4s$jam$1@smc.vnet.net> <20130303072215.D75466867@smc.vnet.net> <CAEtRDSdZ37Q7yCggT8AGWkKncfF57V57Et5JxjQ6i1yBnSVePQ@mail.gmail.com> <kh163q$sa3$1@smc.vnet.net> <kh4d4r$70k$1@smc.vnet.net> <kh6c93$b26$1@smc.vnet.net> <kh77sk$q9c$1@smc.vnet.net>

On 3/6/2013 3:04 AM, David Bailey wrote: <snip ... Fateman advocates preference for FullForm for some uses> > > So perhaps we should extend your principle to maths itself? Why risk > students getting confused about the meaning of a + b c + d or f(a+b)- > better to teach students to use a notation equivalent to FullForm! This happens, to some extent, already. Students are advised to use parentheses to try to limit ambiguity. I've seen power(x,y) instead of x^y if x and especially y are long strings. Most mathematical functions are probably parenthesized prefix, eg sin cos tan atan sinh cosh.... There are a few where delimiters are kind of built in because they are underlines or overlines like complex conjugate or fractions. It is only in the case of + and * that infix becomes so prevalent. Mathematica of course makes a hash of this because sin(x) is a multiplication. But in any case it is a false impression that mathematics beyond (say) high-school level is presented in unambiguous formats. This > principle would be even more useful when they got to calculus, where > notations like dy/dx and integrals are hopelessly ambiguous in that the > terminating dx looks superficially as if it could commute with the > integrand! Actually this is not the problem, because context is a very big help, and we know that dy/dx is not the same as (d*y)/(d*x). After all, the d's would cancel producing y/x. The real problem in integral tables and such is the REST of the integral representation. You will see sin n x or x/ 2 pi . These notations probably often encourage students to perform > invalid manipulations - but even so, most people value them! Not the students. It is just another burden on them. Like the people who try to enrich the calculus courses with (say) Mathematica. The majority of students, according to surveys, do not view it as enrichment but merely another thing to learn. But that is another story. > > I guess Mathematicians themselves realised why operator notation is so > useful a long time back. It reduces the clutter and helps people to > concentrate on what matters. Ultimately the choice between FullForm and > operator form is a psychological question - not a math or computer > science one. Those of us who do a lot of programming, also value > operators that assist with that task too. The nice thing about programming is that it gives you the opportunity to name and re-use things like functions and subroutines. It allows you to do this to essentially arbitrary depth. Hence "Solve" does whatever it does, but you only have to remember one name. Mathematics allows you to do this, but you must keep the notation either on paper or in your head, and it is not usually "in the computer". In either case the use of appropriate notation helps, and some would say is essential in progress. That does not mean that all notation is good. Some notation increases the mental burden and may even increase the clutter. I have read papers that advance the art and science not one millimeter, but do nothing but lay claim to definitions and notations. Some editors mistakenly view this as progress. > > The Mathematica language offers users a lot of choice - which you seem > to abhor because some people don't choose to use it your way! No, I have no problem in people making choices. I complain that the design of the programming language EF is poor, at least in places. It encourages incorrect choices (bugs) and the production of unnecessarily difficult-to-read programs. Again I remind you that I am talking about EF, not the library of tools (like Solve). RJF > > David Bailey > http://www.dbaileyconsultancy.co.uk > > >

**References**:**Re: Mathematica and Lisp***From:*Richard Fateman <fateman@cs.berkeley.edu>