Perl 6 - the future is here, just unevenly distributed

IRC log for #6macros, 2017-08-27

| Channels | #6macros index | Today | | Search | Google Search | Plain-Text | summary

All times shown according to UTC.

Time Nick Message
01:52 ilbot3 joined #6macros
02:24 ilbot3 joined #6macros
11:25 masak Ven``: trying again. available.
11:31 masak (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:52 Ven`` masak: trying again as well, then - I was eating
12:57 masak here. :)
12:57 masak I was doing the 007 refactor.
12:57 masak this refactor is fun -- feels like folding a sock into itself
12:58 masak I was teaching Python this Thursday/Friday. made me file https://github.com/masak/007/issues/244 just now
13:06 Ven`` yes, I saw it go through
13:08 * masak attempts to asset-capture Val::Exception
13:08 masak Ven``: re `return` and its semantics in `quasi`: I actually don't have a horse in that race
13:08 masak Ven``: I just fear people are gonna try it, expecting it to have my proposed semantics
13:09 masak 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:12 masak 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 masak Ven``: yadda yadda yadda, the lookup semantics of `return` reduces to that of lexical variables
13:13 Ven`` Perl 6 takes a route explicitly different from most other languages where theres a peg to put leave and return on
13:14 masak I'm listening
13:17 masak (speaking of pegs, I really should do something about https://github.com/masak/007/issues/173 )
13:39 Ven`` had to re-read it all. I forgot that mostly
13:39 Ven`` I mean having blocks being actual object, which you can return/leave/... from pretty much at any point
13:40 Ven`` 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:41 Ven`` basically #173 is about making these legit "first class"
13:41 Ven`` wrt return:
13:41 Ven`` I think the mean issue is that `return` leaves from a sub, not from a block.
13:42 Ven`` "quasi { return; say 1; }" not printing anything would make sense if quasis always generated subs, or if return left blocks
13:43 Ven`` if we get Perl6's leave, then it should definitely exit from the quasi block
13:43 Ven`` return is very explicitly about subs.
13:59 masak little one woke up; will backlong and reply properly later
13:59 masak 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 #6macros
20:01 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:02 masak (and I agree that in the absence of evidence to the contrary, they do appear to be just blocks)
20:16 * masak sleeps
20:33 Ven`` They really don't look like subs to me

| Channels | #6macros index | Today | | Search | Google Search | Plain-Text | summary