3 ms·
This is similar to the way I compare Python and Lisp: Common ground: first class functions, a lot of flexibility, closures Lisp: macros, performance? Python:
by mitko 16y ago
This is similar to the way I compare Python and Lisp:
Common ground: first class functions, a lot of flexibility, closures
Lisp: macros, performance?
Python: easy to learn by example, readability, batteries included
I use Python day-to-day as I don't really need a macro system that much.
I also disagree that Lisp is more elegant - beauty is in the eye of the observer.
Edit: formatting.
- euccastro 16y agoBeauty is subjective; elegance less so. Python is the language I've used and use the most, and I'll easily concede that Scheme is more elegant than almost anything else I've seen, and Python hardly even compares. Metaclasses, decorators, 'for'/'while'/'with' statements, etc. etc. In Python they are all good, practical, powerful ideas. In Scheme they're just unnecessary. Scheme is more elegant because it's been a priority in its design. Python aims to be more practical, beginner-friendly and straightforward.
- eru 16y agoTry Haskell. It has a strange mix of beautiful elegant core, and lots of (useful) syntactic sugar added on top.
- euccastro 16y agoI did try it, but not enough, I guess, to tell the beautiful core you talk about from the rest. So Haskell seemed to me full of elegant ideas, yet less elegant, as a whole, than Scheme.
- Locke1689 16y agoWhich Scheme are you talking about? I find the awful type system of base R6RS to be extremely inelegant. Contracts and strong typing make formal reasoning about programs far more powerful, hence more modern Scheme-style languages like Racket.
- euccastro 16y agoGood catch. I was talking about R5RS and earlier.