Re: Lisp and Scheme with fewer parentheses / Mathematica??
- From: "cwarren89@xxxxxxxxx" <cwarren89@xxxxxxxxx>
- Date: Tue, 8 Jan 2008 17:45:26 -0800 (PST)
Can you say flamebait? Also, it almost looks like you're siding with
Jon Harrop. Careful, that might turn you into a creature impenetrable
by vague, geeky concepts like "logic." But then, I fear you've already
passed the point of no return.
On Jan 8, 3:18 pm, Xah Lee <x...@xxxxxxxxxx> wrote:
2008-01-07.
I just ran into a newsgroup post, where the redoubtable Richard J
Fateman (a well-known Mathematica hater) sullies Mathematica by
sputtering computer sciency obfuscation.
Here's the source of the message:
http://groups.google.com/group/comp.lang.lisp/msg/163eb656becfcab6?dm...
Newsgroups: comp.lang.lisp
From: "Richard J. Fateman" <fate...@xxxxxxxxxxxxxxxxx>
Date: Tue, 14 Nov 2006 11:58:23 -0800
Local: Tues, Nov 14 2006 11:58 am
Subject: Re: Lisp and Scheme with fewer parentheses / Mathematica??
-----------------------------------------------
In the following, i dissect Richard's writings as a reply to that
post.
Jon Harrop wrote:
「Everything in Mathematica is a "macro" because it is a rewrite system
so all "functions" are actually rewrite rules that map exprs to exprs
whereas functions in normal languages map values to values.」
Richard Fateman wrote:
「1. Rule-based transformation systems such as Mathematica are not
doing macro-expansions. Macro expansions typically map "templates for
programs" into "programs". Mathematica programmers typically define
rules (though they think of them as conventional functions for the
most part). There are lots of rule-based systems. Prolog is perhaps
most prominent today, but there were lots of expert system tools
designed over the last 20 years, and before that there were languages
like SNOBOL.」
Give me a fucking flying break.
What Richard Fateman is doing here, is to resort to computer sciency
mumble jumble to sell his point.
In the same way, lispers can argue that there's no parenthesis in lisp
as a lisp fanatic Pascal Costanza has argued, or that lisp's “sort”
doesn't destroy its argument. (These phenomenon is fashionly known in
this decade as the “There's no spoon” syndrom. (how the *** the world
has degraded, where metaphors these days are from Hollywood movies.
(*** the tech geekers)))
Lisper morons daily swoon giddily about how their “macros” feature is
so fantastic and out-of-this-world that blows all other languages.
These lisping morons do not realize, in Mathematica, just about every
line of code is what lisper's would call macro in the full context of
the word's practical meaning and applicability, and a far more
powerful and flexible one at that. (beyond lisper's imagination,
literally.)
Now, Richard tries to bend this by saying, using a ruse constructed
out of programing language classification, that Mathematica is rule-
based. Meanwhile, throwing in dead languages like Prolog and SNOBOL in
juxtaposition, trying to give the impression that these are the same
class as Mathematica.
Consider, even Lisp is also rule based. The compiler based on a bunch
of rules to contruct machine code based on the source code. It is thus
rule based. Lisp's macro facilities, is also rule-based like
Mathematica. It is just a very primitive one.
Jon Harrop wrote:
「Everything in Mathematica is a "macro" because it is a rewrite system
so all "functions" are actually rewrite rules that map exprs to exprs
whereas functions in normal languages map values to values.」
Richard wrote:
「2. I don't know what distinction you mean to make by referring to
"normal" languages, but in Lisp as well as in Mathematica, a value can
be an arbitrary symbolic expression.」
Sure you don't, because your eargerness to belittle Mathematica
prevented you from interpreting a normal sentence in its normal sense.
Let me tell you, symbols, is also a value. Got it?
The way Jon Harrop expressed it is perfectly sensible.
Richard wrote:
「Lisp is better at issues involving scope, binding, functions, but not
so much so that a typical physicist/programmer would necessarily
notice.」
This is the latch-on, where we can see, Richard's eagerness to sell
lisp.
Richard wrote the following moronic long paragraph:
「3. Computer-assisted symbolic math is a special case for infix
because so many people use infix notation for non-computer-assisted
symbolic math. Unfortunately, the full scope of math notation as input
syntax is substantially missing from Mathematica, C, Python ...
Compare any of these languages to TeX. (Mathematica tries to provide
for typesetting, but mostly as output. So do other computer algebra
systems like Maple, Macsyma/Maxima, ...) The substantial failure of
infix notation outside of the realm of simple arithmetic is often
unnoticed by people who use programming languages primarily for simple
arithmetic! Pick up a symbolic logic textbook and open it up in the
middle, and see if you can figure out the syntax. It is pretty hard
because typically the infix operator " " (that is, a space) or
concatenation (that is, no space), has several meanings. In fact, in
conventional algebra, concatenation is overloaded. consider a(b+c)
vs. f(b+c) vs cos(b+c). What operation is implicit just to the left
of the (? How many meanings are there for "." in your favorite infix
language?... My belief is that an excess of infix notation is a
crutch. It certainly helps if you are weak, but hinders you if you are
pushing the limits.」
I couldn't possibly start to dissect this rambling passage, other than
starting to write a complete standalone essay about the meaning and
semantics of notations. Luckily, i have started such a essay
previously. Please see:
★ The Concepts and Confusions of Prefix, Infix, Postfix and Fully
Functional Notations
http://xahlee.org/UnixResource_dir/writ/notations.html
★ The Codification of Mathematicshttp://xahlee.org/cmaci/notation/math_codify.html
★ the TeX Pestilencehttp://xahlee.org/cmaci/notation/TeX_pestilence.html
Xah
x...@xxxxxxxxxx
?http://xahlee.org/
- References:
- Lisp and Scheme with fewer parentheses / Mathematica??
- From: Xah Lee
- Lisp and Scheme with fewer parentheses / Mathematica??
- Prev by Date: Re: Lisp and Scheme with fewer parentheses / Mathematica??
- Next by Date: Re: PROBE-FILE and open FILE-STREAMs
- Previous by thread: Re: Lisp and Scheme with fewer parentheses / Mathematica??
- Next by thread: packages, system definitions, and file paths
- Index(es):