On Feb 3, 2005, at 9:30 AM, Steven E. Harris wrote:
I've only played with "small" lisp variants, not the huge monsters like Common Lisp. CL strikes me as the PL/I of the functional programming world -- is this actually so?
Well, CL is most closely akin to C++ or maybe Java in scope and purpose. It's no more functional than imperative; it's a systems programming language supporting various programming styles. You suggest that CL is too large. Most people who use it regularly find it, if anything, too small.
The problem is that CL gained its reputation for being large back in a time when most languages did not have a "standard library". When you see "Common Lisp", think "Lisp" + "Common Lisp Standard Library".
Suddenly, it doesn't seem so big.
It is probably the fact that Lisp had built-in hash tables with very few restrictions on keys before practically any other language that gives it a lot of the reputation for power. I know that Python programs which use tuples as hash keys tend to be much smaller than the same programs in Perl (which I believe requires you to do gymnastics to make hash keys strings, but that may have changed in the language since I last used it).
I often find Common Lisp extremely annoying in that it doesn't have a full peer reviewed, unit tested, data structures library along the lines of the STL.
I actually had to write a heap implementation for it recently. I was *not* amused.
If I have to do that too often, it kind of defeats any gains from the language. However, the VLSI stuff I am currently doing requires its own complex, custom data structures, anyhow. So, I'm somewhat insulated from that problem right now.
-a
--
KPLUG-List mailing list [email protected] http://www.kernel-panic.org/cgi-bin/mailman/listinfo/kplug-list
