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 02:24 ilbot3 joined
masak Ven``: trying again. available. 11:25
(in the weekends I typically have a window between 13-17 or so where the little one is sleeping and I can do 007 stuff) 11:31
Ven`` masak: trying again as well, then - I was eating 11:52
masak here. :) 12:57
I was doing the 007 refactor.
this refactor is fun -- feels like folding a sock into itself
I was teaching Python this Thursday/Friday. made me file github.com/masak/007/issues/244 just now 12:58
Ven`` yes, I saw it go through 13:06
masak attempts to asset-capture Val::Exception 13:08
Ven``: re `return` and its semantics in `quasi`: I actually don't have a horse in that race
Ven``: I just fear people are gonna try it, expecting it to have my proposed semantics
Ven``: I can see the use case behind your proposed semantics too, but I don't see why `return` should be unhygienic by default, when the prior art in Perl 6 is that it's hygienic 13:09
Ven``: oh! here's maybe a way to think about it. in Perl 6, `return $x` works as if it were a function `return($x)` secretly defined by the innermost surrounding Routine 13:12
Ven``: yadda yadda yadda, the lookup semantics of `return` reduces to that of lexical variables
Ven`` Perl 6 takes a route explicitly different from most other languages where theres a peg to put leave and return on 13:13
masak I'm listening 13:14
(speaking of pegs, I really should do something about github.com/masak/007/issues/173 ) 13:17
Ven`` had to re-read it all. I forgot that mostly 13:39
I mean having blocks being actual object, which you can return/leave/... from pretty much at any point
mh, I'm still unsure about how I feel for an "infix:<+>" parameter. But I guess there's no reason it shouldn't work? 13:40
basically #173 is about making these legit "first class" 13:41
wrt return:
I think the mean issue is that `return` leaves from a sub, not from a block.
"quasi { return; say 1; }" not printing anything would make sense if quasis always generated subs, or if return left blocks 13:42
if we get Perl6's leave, then it should definitely exit from the quasi block 13:43
return is very explicitly about subs.
masak little one woke up; will backlong and reply properly later 13:59
at this point, though: I do see your point about a quasi block being a block rather than a sub. point taken.
18:23 Ven`` joined
masak I guess some of the curent uncertainty (for me, at least) comes down to "are quasis/injections proper *blocks*, or are they *routines*?" 20:01
(and I agree that in the absence of evidence to the contrary, they do appear to be just blocks) 20:02
masak sleeps 20:16
Ven`` They really don't look like subs to me 20:33