Why doesn Lisp have a Benevolent Dictator like Perl or Python?
Lisp does in fact have a benevolent, if extremely hands-off, dictator: its inventor John McCarthy. However the only diktat he has issued is that no dialect in the Lisp family of languages shall call itself simply “Lisp”. Thus we have Common Lisp, Scheme, Elisp, AutoLisp, XLISP, ISLISP, and others. Common Lisp, on the other hand, does not have a benevolent dictator because it is a language defined by a standard, not by a single individual (c.f. Perl or Python) or organization (c.f. Java). Prior to Common Lisp there were a number of competing Lisp dialects, some with several implementations, each with their own dictator, benevolent or otherwise. Common Lisp arose in an attempt to bring that diversity somewhat under control without killing off all the innovation that was going on in the different research labs and companies using and implementing Lisp. The language standard does two things: On one hand, it establishes a contract between users and implementers of a language so that program
• Lispers view the diversity of Lisp implementations as a feature, not a bug. Most people, if they care to look, can find an implementation that fits their needs. (Some legitimate gripes do exist, however, and Brad and Peter formed the CL-Gardeners project to help address them.) Lisp has a rich history of implementations on diverse platforms, with different requirements and target audiences. While the current set of common platforms has narrowed somewhat, Lispers still want the language (as opposed to any particular implementation of the language) to allow a lot of flexibility as far as implementation tradeoffs. So you have compilers, interpreters, bytecode compilers, Lisp in C, Lisp in Java, Lisp in Lisp, and many other choices. • Lisp is very customizable — so much so that lispers frequently write entire languages to help them get their work done. Working in a medium like that, differing tastes and the need to choose “horses for courses” create a tendency toward divergence in languag
– @ Lispers view the diversity of Lisp implementations as a feature, – not a bug. Most people, if they care to look, can find an – implementation that fits their needs. (Some legitimate gripes do – exist, however, and Brad and Peter formed the CL-Gardeners project – to help address them.) Lisp has a rich history of implementations on – diverse platforms, with different requirements and target audiences. – While the current set of common platforms has narrowed somewhat, – Lispers still want \i{the language} (as opposed to \i{any particular – implementation of} the language) to allow a lot of flexibility as – far as implementation tradeoffs. So you have compilers, – interpreters, bytecode compilers, Lisp in C, Lisp in Java, Lisp in – Lisp, and many other choices. – – @ Lisp is very customizable — so much so that lispers frequently – write entire languages to help them get their work done. Working in – a medium like that, differing tastes and the need to choose “horses – for courses” cre