|
6macros: discussing the finer points of Perl 6 macros, Qtrees, and how to stay sane | irclog: irclog.perlgeek.de/6macros/today Set by moderator on 28 July 2015. |
|||
|
01:52
ilbot3 joined
05:00
masak joined
14:19
Ven joined
|
|||
| Guest12884 | masak: sorry! I'm still on holidays. Not much data to use | 14:38 | |
| Ven`` | I will say, however: I don't believe in "least surprise" or anything like that :) | ||
| I think there is something to be said about lexicality/sub-lexicality and hygiene | 14:39 | ||
| if you make the case for `return` returning out of the macro itself, you could *maybe* go on a slippery slope and make a case for exceptions | 14:40 | ||
| (they use the call stack, which is dynamic, but from the macro's invocant, which is not hygienic) | 14:41 | ||
| masak | no need to apologize for being on holiday. ;) I'm sorry I'm not able to review your PR more promptly. | 18:26 | |
| I confess to not knowing what "sub-lexical" means. | |||
| (but I was thinking about `is parsed` today and needing to serve two masters in terms of lexical OUTER. I think the boring-but-sane thing might be something like `is parsed(sub (G) { return / ... <G.ident> ... / })`, or, sugared, `is parsed(-> G / ... <G.ident> .../)` -- anything more clever would be playing with fire) | 18:28 | ||
| I *do* make the case for `return` returning out of the macro itself. that's the current default behavior. | 18:29 | ||
| but it's a fairly useless default, since we know from basic facts about timing that a `return` would never *constructively* exit the macro | 18:30 | ||
| I'm making the case for `return` to refer to the surrounding injection, which would still be lexical in a curiously sideways way | 18:31 | ||
| "injection-lexical" | 18:32 | ||
|
19:33
cognominal joined
22:18
cognominal joined
23:56
masak joined
|
|||