2 ms·
What LISP has, uniquely, is its macro system which, unlike text-based macro system like C, operate on the abstract syntax tree level.
by teddyh 4y ago
What LISP has, uniquely, is its macro system which, unlike text-based macro system like C, operate on the abstract syntax tree level.
- jacobmartin 4y agoFor sure. Additionally, the syntax of lisp also makes these AST macros ergonomic and, in many cases, beautiful. Rust has AST-transforming macros, but they're harder to use because the syntax is more complex. They're also quite ugly.
- deleted 4y ago[deleted]
- bmitc 4y agoIs that enlightening though? For example, Common Lisp, Scheme, Racket, Clojure, Elixir, and Prolog all have abstract syntax tree macro systems that all differ from one another. And I would argue that macros should, in general, be avoided. They can be very enabling though to extend the given language when used with constraint and moderation.