Hi david
What you describe is a bit scary.
Because this is just changing the syntax but it is probably also breaking
refactorings and probably
other.
May I ask why would we need macros since after more than 30 years nobody
really need them.
So do you have good motivating cases for
quasi quotes
Opal supports compile time evaluation.
Stef
The ES6 design is sound and if you are in a hurry to get the capability
it
is a great way to go. Once you start using it and get a taste for
quasi-literal little languages you will find that you want more.
Having a quasi-literal that let's you name the little language to parse
you
open a very interesting door. After the dust settles you need a parser
and
compiler framework that allows plugins at every stage. You "MUST" have a
rich and stable AST and it must be usable as a quasi-literal because
transpilers abound. You wind up with transpiler code that is templated
and
quite "Lispy".
At the end of the day you will finally let in Macros. I believe thatJulia
got all this right. They stick a "@" in front of their macro invocations
so
you get rid of a lot of confusion. David Moon made the Julia macro
system a
thing of true beauty. Perfection actually.
At the end of the day you want Smalltalk Compile Time "Staged Meta
Evaluation".
Still, at a minimum go with the ES6 design. Consider "<|" because " ` "
is
hard to see. Some fonts do a terrible job with it. You could do both.
--
View this message in context:
http://forum.world.st/Re-vwnc-Does-anyone-have-a-new-string-literal-tp4667088p4936429.html
Sent from the Pharo Smalltalk Developers mailing list archive at
Nabble.com.
--
Using Opera's mail client: http://www.opera.com/mail/