4 ms·
Lisp doesn't need to use s-expressions (i.e. parentheses), that just-so-happens to be the most popular serialisation format. These examples look more like I-exp
by chriswarbo 7y ago
Lisp doesn't need to use s-expressions (i.e. parentheses), that just-so-happens to be the most popular serialisation format. These examples look more like I-expressions to me ( https://srfi.schemers.org/srfi-49/srfi-49.html https://srfi.schemers.org/srfi-49/srfi-49.html ); i-expressions and s-expressions are equivalent and can be converted back and forth trivially.
Lisps can also support arbitrary input formats using reader macros, so it might be using that (I haven't looked at the implementation yet).
- blunte 7y agoBut with sexps, if your code suffers some formatting catastrophe (such as all instances of whitespace being reduced to a single space), the sexp code is trivially recoverable/reformattable. Depending on whitespace and indentation creates such fragile code that I can't understand why the trade-off would be made.
- nerdponx 7y agoFormatting catastrophes are exceedingly rare. You have your code in version control anyway, right?
- chriswarbo 7y agoIf that's a concern then serialise using s-expressions. You can still edit using i-expressions or something equivalent if you like (it's trivial to convert, after all). Code on-disk doesn't need to be the same as code in-editor (for example, syntax highlighting isn't saved to disk either)