Why don't people like lisp?

Pascal Costanza costanza at web.de
Wed Oct 22 20:56:48 EDT 2003


Andrew Dalke wrote:

> Paul Rubin:
> 
>>You could of course do something similar in Lisp, but normally you'd
>>just use S-expressions instead of concocting your own weird syntax
>>every time you want to build a small language into something.  Then
>>you just use the regular Lisp "read" function and the S-expressions
>>get parsed automatically for you.  Your whole parser becomes just one
>>line of code.
> 
> 
> Ahh, but that's writing the domain language to fit the implementation
> language.

Yes, but we Lispers don't care about that. As I said before, syntax is 
boring. ;)

To be more specific:

Getting domain-specific in Lisp doesn't (necessarily) mean to adopt the 
notation of that domain. Lisp is rather pigheaded wrt notation - it 
strongly prefers s-expressions, i.e. prefix notation.

Getting domain-specific rather means to model the abstractions of that 
domain.

This means that when you program in most languages, the program source 
code will consist of objects, methods, functions, closures, and so on. 
Whereas when you get domain-specific, you see the abstractions of that 
domain and nothing else (or at least not much else).

For example, the + operator is an abstraction of the domain of 
mathematics. Getting domain-specific means to make the + operator 
available in a way so that you don't care how it is actually implemented 
beneath. It doesn't necessarily mean that you need to switch to infix 
notation.


Pascal





More information about the Python-list mailing list