I changed it. I also tried to `alias mixin(parmName) = __a;`, but that didn't work :/ . Don't know if bug?

I find when using mixins that indeed, either you mixin the *minimal* amount of code, or you just create a single massive block with format, eg:

```D
mixin(format(
q{
    alias %$1s = __a;
    alias %$2s = __b;
    return %$3s;
}, parm1Name, parm2Name, fun));
```

I find it is what reads the clearest when you have a big mixin block. But in *this* case:
a) There may be a bigger cost on the compiler (these are *very* used templates)
b) It adds a new import to functional, which means it might change the behavior of what is a legal string lambda or not.

So in this case, I don't think it was a good choice to do that.