Re:The Lx Programming Language
by thelazydogsback on Friday November 01, 2019 @12:46PM
(#21420842)
T4 barely counts, as it's string- and not AST-based.
For meta-programming to be useful, IMHO it really needs to be part of the language and base tool-chain.
I certainly don't want to write code in Java, f'rinstance, that needs random compiler plug-in to weave in AOP calls, etc. But in Lisp, Prolog (and not Elixer, etc.) macros are part of "how stuff works".
Then languages like D don't have metaprogramming capabilities if using AST based one is considered a requirement.
Re:The Lx Programming Language
by thelazydogsback on Friday November 01, 2019 @12:47PM
(#21420878)
F# quotations are nice, but it's really too bad that .Compile() doesn't use the actual compiler tool-chain and creates super-slow code. I understand due to history why it doesn't, but it certainly would be easier if F# used the Roslyn tool-chain.
.NET has T4 templates, attributes, reflection, expression trees, and F# adds code quotations to the mix.