6 comments

[ 2.7 ms ] story [ 15.0 ms ] thread
> So, yes, lisp does not HAVE a lot of libraries. But what people miss is that lisp doesn't NEED libraries.

This sounds a bit overly optimistic to me...

> I am the lead developer on Axiom which is a very large lisp project (about 1 million things of code) to do computer algebra. The help system and graphics were implemented in C but browsers did not exist at the time (1970s). These are being reimplemented in lisp using Firefox and the canvas facility.

> In the past I helped develop a product for building rule-based programs which was sold by IBM. It was entirely in lisp.

> I helped develop an expert system (FAME, a Finance and Marketing Expert) to price and sell IBM mainframe hardware. It was written entirely in lisp.

> I developed a language (KROPS) which was a symmetric representation of a knowledge language (KREP, Knowledge Representation) and a rule-based language (OPS5 A rule-based language). It was entirely in lisp.

> I developed a robot planning program to build and assemble objects from their computer-aided design descriptions (BOXER - A Design- to-Build system). It was entirely in lisp.

This sounds a bit like if he hasn't needed libraries yet, lisp probably doesn't need libraries.

This is an impressive list, but it sounds like these programs are all within the same general category, and that category is a particular sweet-spot for lisp.

I think when people complain about a lack of library support in lisp they aren't looking for libraries for symbolic manipulation but for more mundane things.

>In Java I need "factory objects", "visitors", and other such pieces of "design patterns". In lisp, I have never needed to write a "factory". The whole "visitor" pattern becomes a 1-line (map...) call.

You don't need any of those things, although they (regrettably) certainly are in the culture.

I searched for this so many times. I thought it was a blog post, not a ML one.
I presume that "graph" here means "data structure" rather than "graphics". I could see creating the data structure in Lisp code just in passing, with no library needed. Easy. Computer graphics? Not so much.