MathGroup Archive 2011

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

Search the Archive

Re: Mathematica daily WTF

  • To: mathgroup at
  • Subject: [mg115134] Re: Mathematica daily WTF
  • From: Andrzej Kozlowski <akoz at>
  • Date: Sat, 1 Jan 2011 04:26:31 -0500 (EST)
  • References: <ifj6n0$594$> <>

On 31 Dec 2010, at 17:36, Richard Fateman wrote:

> On 12/30/2010 4:04 PM, Andrzej Kozlowski wrote:
>> On 29 Dec 2010, at 11:55, Richard Fateman wrote:
>>> When common programming terms are used in a different
>>> manner, it sows the seeds of misunderstanding.
> So many errors.
> I wonder why your mail system does not interact properly with my mail system? Your message has one long line, that my mailer refuses to
> deal with, so I have to insert newline characters.
> my notes are prefixed with ---

The problems occur only with messages posted to the MathGroup. I now believe that there is some basic incompatibility between the MathGroup and Apple's or perhaps the default encoding used by the

>> Actually, it works both ways.
> In fact, this is closely
> related to an aspect of the Mathematica programming language
> for which you have explicitly expressed a dislike (in a private
> exchange with me): the fact that it contains all these
> "procedural" constructs like loops etc.
> --- I do not hold this view, and I wonder how you came to believe
> --- I hold this view.

OK, perhaps I misunderstood you. I was referring to something you once wrote to me, which could have however referred to a dislike of how procedural programming is implemented in Mathematica:
> When using the "procedural" parts, I find strange things happen. Then
> I recall that it is really doing pattern matching, and f[x_]:= .. is
> a rule.

anyway, it does not matter as far as the point I was making is concerned, which is that the C-like structure of Mathematica procedural programs is helpful to people (somewhat) familiar with C or Fortran.

> While this
> certainly would be offensive to the aesthetics of a pure functional
> language like Lisp (or better Scheme),
> --- Lisp is certainly not a pure functional language. In fact it has
> --- a construct called loop.  Scheme is not a pure functional language
> --- either. It supports imperative state-based programming.

Well, anything which allows you to program by "side effects" is supports imperative programming. It does not mean it is considered "good style" to program in this way. O.K., I should have written Haskell. Would not have made any difference to my argument.
> While Mathematica's
> procedural programming is usually unattractive and often inefficient,
> --- Huh? I don't understand why you think M's procedural
> --- programming is (especially?) unattractive. Or inefficient.
> --- Perhaps you mean its implementation is inefficient? This
> --- has to do with the difficulty of compiling it, so it
> --- is partly a language issue. It could be partly overcome
> --- by adding (optional) type declarations as in lisp.

I wonder whether you are really incapable of understanding what to everyone else is obvious or just pretend to do so. (I suspect its the latter and that for some reason you find this amusing).  Obviously my meaning was that in Mathematica in most cases a procedural program can be replaced by a more compact and, to most people, more elegant looking, "functional" one. Of course we know that generally they are both something else, but the latter kind tend to be more elegant and more efficient (without compiling, of course, which can't be used for programs that perform symbolic computation - an obvious thing that somehow you decided to forget).

> there are plenty of users who will not use anything else
> (including one user who frequently takes similar positions
> to yours on various Mathematica related issues) and would
> not even consider a alternative program that used Lisp
> for programming - just for that very reason.
> ---  Lisp supports essentially any
> --- programming "paradigm" that anyone has come up with,
> --- functional, state-based, rule-based, object-oriented,
> --- constraint-based, graphical, etc.
> --- I assume the person referred to above, talking about Lisp
> --- does not know that much about Lisp.

The user in question obviously does not know Lisp and I sure would not spend any time to try to learn it.

>> What I referred to as a matter of "convenient syntax"
> is actually a quite crucial issue, for most people easily
> overriding in importance anything else mentioned in this thread.
> --- Huh? You said M's programming is unattractive.  Are you
> --- saying that Function[{x},N[x^x]]  just will not do, and
> --- users crucially need the convenient syntax  (#^#//N)&   instead?
I said nothing of the sort. What on earth makes you think I did?

> ---  Happy New year

Thank you,Same to you. Should I wish that all out Mathematica wishes come true? Would this not be some sort of paradox?


  • Prev by Date: Re: Mathematica daily WTF
  • Next by Date: Re: Mathematica daily WTF
  • Previous by thread: Re: Mathematica daily WTF
  • Next by thread: Re: Mathematica daily WTF