|
|
|
|
|
by int_19h
2232 days ago
|
|
The line between "language" and "library" can be very blurry - it certainly is in case of Lisp. Suppose we take something like Python, which has a standard library module to parse ASTs, modify them, and eval them. It might look a tad more ugly than Lisp (esp. with quoting and unquoting), but I don't see why this should be considered a fundamental difference, enough so to justify its use as the sole determining factor of a "true Lisp". And besides, what about popular languages that do have full-fledged macros? Say, Rust or D. |
|
You might argue, quite convincingly, that Rust and D have valuable ergonomic barriers to doing some of those things since macros have a non-trivial cost in your codebase regarding complexity and readaiblity. But the ergonomics of a macro is Lisp are pretty close to the optimal for ease of use.