Carl Mäsak
Carl Mäsak
This macro should somehow register itself as "routine-terminating", so that (among other things) we get linter warnings when putting statements (or even intra-expression sequence points) temporally after a `recurse()`.
It bothers me a bit that I had to invent the `::[..]` syntax just to do this. Lexical variables are nice and simple, and this complicates them quite a bit...
Note that the `once` block is necessary there. If we removed it completely, we would return `None` instead of `False` sometimes out of the quasi. If we put the initialization...
> ...I still consider it cleaner and more minimal than the `::[..]` syntax. And good riddance, too. I realized later that having that syntax would've sold the static properties of...
> or maybe allowing them but giving them `once` semantics (Perl-style). I've come around to this option being the nicest one. It's very Perlish and Strangely Consistent to do the...
When don't you want symbols and hygiene in this case? My guess is "never". You never don't want that. Or [nearly never](https://en.wikipedia.org/wiki/H.M.S._Pinafore#Productions), like 99% never. So the next logical idea,...
> `my COMPILING::active = False;` Looking at this with fresh eyes, I find that confusing. Even I'm reading the code, going "then why wouldn't it get set to `False` every...
> The corresponding trick works with `state` in Perl 6, because the `state` declarator is a heads-up that something phaser-y is going on. So let's use the `state` declarator too...
I've started in on this. Early progress can be tracked in https://github.com/masak/007/tree/masak/add-community-code . Haven't really gotten stuck as such, but have realized along the way that, since the tests are...
I need to look at this again. It would be really helpful for those modules to be tracked by the Alma repo. Still need to do what the above comment...