MathGroup Archive 2010

[Date Index] [Thread Index] [Author Index]

Search the Archive

Re: Mathematica daily WTF

  • To: mathgroup at
  • Subject: [mg115030] Re: Mathematica daily WTF
  • From: Richard Fateman <fateman at>
  • Date: Wed, 29 Dec 2010 05:55:34 -0500 (EST)
  • References: <ifcuiu$cg7$>

On 12/28/2010 7:09 AM, Andrzej Kozlowski wrote:

  The only exception that comes to my mind is direct application of 
anonymous functions such as:
> #^3&@2
> 8
> which seems to me the only genuine "functional" aspect of Mathematica

I agree.  But people like to think of f[x_]:=  as defining a function, 
and it is a useful illusion for about 99% of the time for 99% of users.

(I would also argue that all claims of similarity between Mathematica 
and Lisp,

  not to mention the supposed "borrowing" are based on a very 
superficial understanding of Mathematica).

Actually, the claims are generally made by people writing about 
Mathematica, and I suspect that it is that the people doing
the writing have only a superficial understanding of Lisp.

  As far as I know in its basic structure it is unlike any other 
programming language

Um, the important part of that statement is, "As far as I know".  Since 
there are clearly programming languages that are similar in basic 
structure that pre-date Mathematica.  Rule-based programming has a
substantial history.  See CLIPS, OPS-5, COMIT, METEOR (Bobrow), SNOBOL
and a pile of "expert system building tools" e.g. emycin...

some of these go back to 1966 or earlier.

  so it should not be surprising that
>> the meanings that Mathematica puts on of bread-and-butter
>> programming terms like "=="/"assignment", "value", and "dynamic
>> scope" are entirely sui-generis

When common programming terms are used in a different
manner, it sows the seeds of misunderstanding.

Just as the use of "function" in computer languages is
confusing compared to "function" in mathematics.

Note that SMP, Wolfram's predecessor to Mathematica, used
the term "projection" for something.  It was easiest to
think of projections as functions, though they
weren't really.

from a paper by Chris Cole and SW..

"The projection f [expr] represents the part of the
expression f selected by the "filter" expr. If f is a list,
the entry with index expr is selected. If f is a symbol
with no value, operations performed on f [expr] hold for
any value of f."


  • Prev by Date: Re: Mathematica daily WTF
  • Next by Date: Re: typesetting problems or bugs? need a professional stylesheet
  • Previous by thread: weird non-accidents, was Re: Re: Mathematica daily WTF
  • Next by thread: Re: Mathematica daily WTF