On Saturday, 11 January 2014 at 16:07:30 UTC, Philippe Sigaud
wrote:
I'm a bit leery of putting D call syntax into semantic actions,
because it'll also explode the Pegged grammar size (I'm fairly
sure
I'd have to pull in a big part of D if I want to get function
calls
right). That's one feature I wanted at one time, but I'm not
sure it's
a good idea.
Yes, and I would not be able to argue this is the definite way to
handle things anyway. It's a try at type checking with little
regard to efficiency. I'm just happy it works with Timon Gehr's
extremely simple solution. :3
On Saturday, 11 January 2014 at 20:52:15 UTC, Timon Gehr wrote:
import std.string, std.algorithm;
enum semanticArray = ["derp", "lala"];
mixin(semanticArray.map!(a=>`T `~a~`(T)(T t) {
t.name ~= "`~a~`";
return t;
}`).join());
Here, have a heart. <3