Hacker News new | past | comments | ask | show | jobs | submit login

Lol. It might have been true in the 1980s when Mathematica 1.0 came out (on version 12.3 now).

Now I think Mathematica is a combination of C, C++, Java, and of course Mathematica code. C and C/C++ libraries are used for the symbolic stuff and some libraries, Java is used for database connections and so forth, and I think they do eat their own dog food by implementing new functionality using existing Mathematica code. That's a little bit yucky, but no different than many ecosystems today. At least everything seems pretty seamless to me.




It wasn't true. Maclisp was competitive with Fortran in the 1970s. Wolfram didn't know enough about Lisp -- or computing in general -- to make such a claim.

Source: https://web.archive.org/web/20081121205217/http://ymeme.com/...


Thanks for linking (I remember reading this on here a few years ago, but couldn't remember enough to Google for it). It seems the author's claims of 2.5 to 5 seem to match a lot of the current benchmarks out there for GCC vs SBCL, so that seems to have remained consistent over time. I'm not sure if they'd be in better shape if they had stuck to an approach such as Macsyma or not. Perhaps a lot of effort could have been avoided, perhaps not.


The usual reasons to not develop or even reimplement custom languages (like the language for a computer algebra system) was/is performance and memory. Plus the limited availability of compilers for certain computer types.

Even during the 80s memory was very expensive (workstations) and limited (PCs). Thus it could have made sense to implement a language such that it runs in smaller space to save a lot of money on the user side. Still, there were Lisp-based computer algebra systems on small (Derive, MuMath/MuSimp, ...) and large computers (REDUCE, Macsyma, Scratchpad)...

Also depending on the availability of a certain Lisp system was problematic, when a C or later a C++ compiler was usually provided... -> but then one was responsible for the maintenance of the implemented.


That was kinda what I would've guessed. Even if lisp was just fine doing symbolics, it would've been a bigger resource hog than something custom done well. I wasn't aware of the lisp CAS on smaller systems. I figured when Mathematica first came out, lisp was mainly running on things like symbolics lisp machines. Is that incorrect?


When Mathematica came out (1988) there were already Lisps for PCs and Macs. Lisp at that time made the switch to Common Lisp. Symbolics Lisp Machines were used for higher-end AI, CAD, etc. domains. There was a bunch of very different options across many platforms (PCs, Macs, UNIX Workstations, ...). Macsyma itself ran on various platforms, incl. Lisp Machines, UNIX, VAX/VMS, and then also on Windows.

Derive even ran on some TI calculators. It was written in muLISP.


You need to write a book on this history lol.




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: