Python syntax in Lisp and Scheme
Peter Seibel
peter at javamonkey.com
Tue Oct 7 18:37:20 EDT 2003
More information about the Python-list mailing list
Tue Oct 7 18:37:20 EDT 2003
- Previous message (by thread): Python syntax in Lisp and Scheme
- Next message (by thread): Python syntax in Lisp and Scheme
- Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]
corey.coughlin at attbi.com (Corey Coughlin) writes: > Using parentheses and rpn everywhere makes lisp very easy to parse, > but I'd rather have something easy for me to understand and hard for > the computer to parse. That would be a strong argument--seriously--if the only folks who benefited from the trivial mapping between Lisp's surface syntax and underlying were the compiler writers. I certainly agree that if by expending some extra effort once compiler writers can save their users effort every time they write a program that is a good trade off. If the only thing a "regular" programmer ever does with a language's syntax is read and write it, then the only balance to be struck is between the perhaps conflicting goals of readability and writability. (For instance more concise code may be more "writable" but taken to an extreme it may be "write only".) But "machine parsability" beyond, perhaps, being amennable to normal machine parsing techniques (LL, LALR, etc.) should not be a consideration. So I agree with you. But Lisp's syntax is not the way it is to make the compiler writer's job easier. In Lisp "regular" programmers also interact with the code as data. We can easily write code generators (i.e. macros) that are handed a data representation of some code, or parts of code, and have only to return a new data structure representing the generated code. This is such a useful technique that it's built into the compiler--it will run our code generators when it compiles our code so we don't have to screw around figuring out how to generate code at runtime and get it loaded into our program. *That's* why we don't mind, and, in fact, actively like, Lisp's syntax. The point is not that the syntax, taking in total isolation from the rest of the language, is necessarily the best of all possible syntaxi. The point is that the syntax makes other things possible that *way* outweigh whatever negatives the syntax may have. I'd humbly suggest that if you can't see *any* reason why someone would prefer Lisp's syntax, then you're not missing some fact about the syntax itself but about how other language features are supported by the syntax. -Peter -- Peter Seibel peter at javamonkey.com Lisp is the red pill. -- John Fraser, comp.lang.lisp
- Previous message (by thread): Python syntax in Lisp and Scheme
- Next message (by thread): Python syntax in Lisp and Scheme
- Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]
More information about the Python-list mailing list