TE
TechEcho
Home24h TopNewestBestAskShowJobs
GitHubTwitter
Home

TechEcho

A tech news platform built with Next.js, providing global tech news and discussions.

GitHubTwitter

Home

HomeNewestBestAskShowJobs

Resources

HackerNews APIOriginal HackerNewsNext.js

© 2025 TechEcho. All rights reserved.

Why Wolfram Mathematica did not use Lisp (2002)

166 pointsby gearhartalmost 10 years ago

24 comments

tzsalmost 10 years ago
I think the author is misremembering Wolfram&#x27;s claims. I recall attending the first open demo of SMP, where Wolfram (and I think co-author Chris Cole) were demoing it in a large Caltech lecture hall. Here&#x27;s what I recall.<p>They had tried to use Macsyma for their physics work, and found experimentally that it was too slow on what they considered to be &quot;medium&quot; problems, and could not handle &quot;large&quot; problems at all. They were trying to do things that were pushing the limits, and pushing them hard, of what could be done on the hardware of the day [1].<p>They showed some benchmarks comparing SMP to Macsyma using the kind of problems that had arisen in their physics research. For &quot;small&quot; problems, SMP was a bit faster. Maybe 2 or 3 times or so faster.<p>For &quot;medium&quot; problems, it was 100 times faster.<p>And it could do &quot;large&quot; problems.<p>I don&#x27;t think I ever heard Wolfram say anything about Lisp being 100 times slower than C in general. I only heard claims like that when he was talking specifically about building systems like SMP, and was comparing basing such systems on top of a general purpose high level language (Lisp) vs. basing them on something built and optimized specifically to support a system like SMP.<p>[1] The SMP work was done on CITHEP&#x27;s (Caltech High Energy Physics) VAX 11&#x2F;780. I was an undergrad at Caltech at the time, working part time at CITHEP as a system programmer and admin, so knew many people involved in SMP development and got to watch it as it progressed, and then was put into production by working physicists.
评论 #9801840 未加载
thanatropismalmost 10 years ago
Mathematica is an interesting case study for a general-purpose software package that happens to be more feature-full and functional -- not just &quot;more convenient&quot; or &quot;better UX&quot; -- than any open-source counterparts.<p>I tend to use some proprietary scientific software, but a lot of it is because academia already has already invested in codebases for, say, Stata, GAMS, Matlab and so on. But Matlab is two steps removed from raw Fortran; and what sets it apart from the many identical-syntax clones are a few narrowly-oriented toolsets aimed at some kinds of engineers.<p>Mathematica is the only one I buy versions for my home computer. It&#x27;s very, very good.
评论 #9800003 未加载
评论 #9800304 未加载
karcassalmost 10 years ago
&quot;I wonder which will become self-aware first -- Wolfram Alpha, or Stephen Wolfram.&quot;
评论 #9798399 未加载
评论 #9798776 未加载
adwfalmost 10 years ago
Wolfram has always seemed to me to have the biggest case of &quot;Not Invented Here&quot; syndrome I&#x27;ve ever heard of. I mean, not only did he have to make his new language, new search engine, etc. He even tried to make a new kind of science...<p>If that&#x27;s not extreme NIH, I don&#x27;t know what is.
评论 #9799295 未加载
评论 #9800521 未加载
评论 #9799456 未加载
评论 #9799395 未加载
dmlorenzettialmost 10 years ago
I wonder if Wolfram&#x27;s 100-times-slower reference point was based on a very particular comparison. Suppose you benchmarked a numerical algorithm that dealt with a lot of matrix-vector operations. And suppose you compared, on the one hand, a C or Fortran implementation that used arrays and native machine finite-precision numbers, against a Lisp implementation that used lists and the sort of &quot;exact&quot; arithmetic described in the usenet post.<p>This would not, of course, be a good comparison between the languages, but it might well give you a 100x speed difference. Taking Pitman&#x27;s story at face value, it sounds like Wolfram wasn&#x27;t very sophisticated about these things, and wasn&#x27;t open to listening to explications. So he might have extrapolated a single dumb benchmark into a universal truth.<p>At the same time, it sounds like Pitman tried to convince Wolfram to represent floats as the ratio of two bignums, &quot;with lots of other hidden bits to assure that any decimalization had enough bits to be precise.&quot; I can understand Wolfram not particularly wanting to taste any of that pie. I have worked with a simulation platform that uses paired BigNums <i>just</i> for time values (other values in the simulation use regular double-precision variables), and it was a big drain on simulation speed.
评论 #9799094 未加载
评论 #9799084 未加载
评论 #9801851 未加载
评论 #9799972 未加载
davesquealmost 10 years ago
Well, it&#x27;s not entirely surprising to hear an anecdote about a young (19 year old), brilliant programmer arrogantly dismissing legitimate possibilities.
评论 #9800002 未加载
jgrahamcalmost 10 years ago
Random Wolfram story, was at lunch yesterday at my old college and respected computer scientist who originally interviewed me. He told me that he first showed Wolfram a computer.<p>This guy was a friend of Wolfram&#x27;s mother who asked for help because 8 year old Stephen was &quot;bored with dinosaurs&quot; and wanted something else to think about.
评论 #9800907 未加载
pvgalmost 10 years ago
Wolfram himself has a far more detailed write-up on the development of SMP and Mathematica.<p><a href="http:&#x2F;&#x2F;blog.stephenwolfram.com&#x2F;2013&#x2F;06&#x2F;there-was-a-time-before-mathematica&#x2F;" rel="nofollow">http:&#x2F;&#x2F;blog.stephenwolfram.com&#x2F;2013&#x2F;06&#x2F;there-was-a-time-befo...</a><p>It might be biased or self-serving but it&#x27;s more interesting than an offhand USENET recollection about a brilliant and arrogant young man.
评论 #9800937 未加载
anthony_dalmost 10 years ago
Seems like a good example of technical people placing too much importance on a technical decision.<p>It seems clear Lisp would have been a perfectly fine choice, as would a number of other languages. It also seems unlikely the world (or even Mathematica) would be dramatically different for it.<p>I wish more &quot;X is better than Y because of Z&quot; discussions would admit aesthetics were an important factor. Instead we end up with convoluted justifications that just annoy everyone (Lisp is slow, C is fast, C++ is complicated)
评论 #9799632 未加载
评论 #9798182 未加载
评论 #9798189 未加载
orbifoldalmost 10 years ago
This might be obvious to many, but the language of Mathematica has better support for (&quot;abstract&quot;) currying than Lisp, something like<p>A[B, C][X, Y][Z]<p>does not straightforwardly translate into an S-Expression but is potentially convenient for symbolic algebra. I believe that I read this emphasis on currying in one of Wolfram&#x27;s own accounts on how Mathematica came to be. It is probably also important that the internal data structure used by Mathematica is not a list, I think the support for &quot;level specs&quot; points at how internally the data is most likely represented, although I&#x27;m not sure.
评论 #9799139 未加载
chrisbennetalmost 10 years ago
<i>&quot;During the dinner discussion leading up to this definition the foreword to one of the Mathematica books was mentioned, where Stephen Wolfram (in third person) wrote &quot;Stephen Wolfram is the creator of Mathematica and is widely regarded as the most important innovator in scientific and technical computing today.&quot; In honour of this self-assessment I suggest we call the unit of ego the Wolfram.&quot;</i> - &quot;Monumental egos&quot; blog post by Anders Sandberg<p><a href="http:&#x2F;&#x2F;www.aleph.se&#x2F;andart&#x2F;archives&#x2F;2009&#x2F;04&#x2F;monumental_egos.html" rel="nofollow">http:&#x2F;&#x2F;www.aleph.se&#x2F;andart&#x2F;archives&#x2F;2009&#x2F;04&#x2F;monumental_egos....</a>
评论 #9800755 未加载
jmountalmost 10 years ago
Another possible reason would be: Macsyma was already in LISP.
评论 #9798625 未加载
TazeTSchnitzelalmost 10 years ago
Isn&#x27;t Mathematica very Lispy? It looks like R-expressions.
评论 #9799461 未加载
评论 #9798165 未加载
gclaramuntalmost 10 years ago
I think is obvious that Wolfram won&#x27;t use anything that he can&#x27;t take full credit...
DonHopkinsalmost 10 years ago
Maybe KMP should have recycled Jerry Pournelle&#x27;s account for a certain bright 19-year-old, instead... ;)<p><a href="http:&#x2F;&#x2F;www.stormtiger.org&#x2F;bob&#x2F;humor&#x2F;pournell&#x2F;story.html" rel="nofollow">http:&#x2F;&#x2F;www.stormtiger.org&#x2F;bob&#x2F;humor&#x2F;pournell&#x2F;story.html</a><p>&quot;Personally, I&#x27;d just turn off his account. It&#x27;s not like it&#x27;s the first time, and he not only flaunts his use of our machines but stabs us in the back with grumblings about why he doesn&#x27;t like this or that program of ours when he gets a chance. (Am thinking particularly of an article he wrote which condemned Lisp for reasons amounting to little more than his ignorance, but which cited Teach-Lisp in a not-friendly light... The man has learned nothing from his presence on MC and sets a bad example of what people might potentially accomplish there. I&#x27;d rather recycle his account for some bright 12-yr-old...)&quot; -KMP
评论 #9802184 未加载
waynecochranalmost 10 years ago
If he had used Lisp how would he have ported it to so many machines? I programmed in Common Lisp quite a bit in grad school and I liked it, but it was always on a specific platform. I would use Lisp even now, but I&#x27;ll often use C&#x2F;C++ just because I know I can get it to work most everywhere.
评论 #9800366 未加载
micro_camalmost 10 years ago
Wolfram has said fellow student Rob Pike (who went on to co create go etc) convinced him to use C though i&#x27;ve never seen the reasons enumerated. So while he certainly comes off as arrogant and certainly reinvented a lot of stuff it isn&#x27;t like he didn&#x27;t listen to anyone...
chaostheoryalmost 10 years ago
say what you will about Wolfram, but he took a risk, got things done, and shipped something people wanted
jwmerrillalmost 10 years ago
What language features distinguish Mathematica from lisp? Are we just talking about the m-expression syntax, or are there more fundamental differences?
评论 #9799154 未加载
评论 #9799113 未加载
jakejakealmost 10 years ago
This quote struck me &quot;I&#x27;m pretty sure his response was that what tools others chose to use or not use was not his concern&quot;<p>On the one hand I feel a conflict of wanting to use every new, shiny tool. But a dose of this attitude would help me get a lot more work done.
mikerichardsalmost 10 years ago
The only reason I still subscribe to c.l.l is for awesome stories like this
laichzeit0almost 10 years ago
Wolfram is extremely cocky for a bald man.
评论 #9799308 未加载
danbmil99almost 10 years ago
TL; DR: Stephen Wolfram has high self-regard
arca_voragoalmost 10 years ago
I always just assumed it was mostly because of the desire to have a proprietary system he could generate revenue out of, instead of wading into GPL-esque territory that tends to go along with LISP.<p>It&#x27;s also one of the main reasons I have been using Octave and Python&#x2F;Anaconda.
评论 #9799092 未加载
评论 #9799008 未加载