eslisp
eslisp copied to clipboard
un-opinionated S-expression syntax and macro system for JavaScript
…an --output or -o command line switch. I noticed that writing to the standard output during macro-expansion ends up writing into the source code generated by eslc. Since it is...
The documentation says lisp-like hygienic macros are supported but there isn't much else by way of documentation. Can you elaborate? Most of the time (Common) Lisp style macros are not...
Which VS Code extension to you recommend to use for eslisp? I started using [Lisp by Yasuhiro Matsumoto](https://marketplace.visualstudio.com/items?itemName=mattn.Lisp), but I'm unsure if better ones are available. What are your thoughts...
@vuolen [noticed](https://gitter.im/anko/eslisp?at=5e1f9525123d916da2433a6b) that newer estree nodes like `ClassDeclaration` were erroring when macros output them. I fixed that in https://github.com/anko/eslisp/commit/a792d031ff59a16b7ed80aba59fc72e4fad7d58a (published in 0.8.1) the best I can right now… which was...
At the moment, there is no programmatic access to the parser (currently [sexpr-plus](https://github.com/anko/sexpr-plus)), which would be necessary to customise syntax (e.g. for square-bracket array notation). This can to some degree...
At the moment, the compiler cannot resolve source locations beyond where macros are called. It deliberately treats macros as black boxes, to insulate user macros from having to know anything...
That's [this `get`](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Functions/get): At the moment, eslisp cannot emit this: ``` js var obj = { a : get() { ... }, b : set() { ... } }; ```...
Numbers are crudely checked against the regex `/-?\d+(\.\d+)/` (accounting for two regexes with identical meaning. This is very restrictive compared to most languages. Example of the full ES6 offering: -...