Perl 6 - the future is here, just unevenly distributed

IRC log for #perl6, 2015-04-27

Perl 6 | Reference Documentation | Rakudo

| Channels | #perl6 index | Today | | Search | Google Search | Plain-Text | summary

All times shown according to UTC.

Time Nick Message
00:07 tinyblak joined #perl6
00:18 TimToady and that fails no tests, so obviously we never tested the flattening of the method forms
00:19 dalek roast: 931a0de | TimToady++ | S03-junctions/misc.t:
00:19 dalek roast: test that junctional methods do not flatten
00:19 dalek roast: review: https://github.com/perl6/roast/commit/931a0de3bc
00:20 laouji_ joined #perl6
00:21 TimToady m: say ((1,2,3),(4,5,6)).any == 3
00:21 camelia rakudo-moar b80de3: OUTPUT«any(True, True)␤»
00:22 TimToady m: say any((1,2,3),(4,5,6)) == 3
00:22 camelia rakudo-moar b80de3: OUTPUT«any(False, False, True, False, False, False)␤»
00:22 TimToady what it used to say
00:26 hobbs joined #perl6
00:36 ssqq joined #perl6
00:36 dalek roast: 44d4696 | TimToady++ | S03-junctions/misc.t:
00:36 dalek roast: also test that listop forms are flattening
00:36 dalek roast: review: https://github.com/perl6/roast/commit/44d46964d4
00:39 laouji_ joined #perl6
00:41 jnthn joined #perl6
00:43 gcole joined #perl6
00:44 TimToady note this change may also have ecosystem fallout, even though roast didn't
00:48 laouji_ joined #perl6
00:57 raiph .tell jepeway I've added a comment to your gist
00:57 yoleaux raiph: I'll pass your message to jepeway.
01:00 colomon http://smoke.perl6.org/report looks like there has already been some ecosystem issue over the weekend… bunch of new failures since the 23rd.
01:00 yoleaux 24 Apr 2015 07:09Z <nine> colomon: ah, yes, I do not handle overloading at all, yet. Maybe I should have a look at that soonish.
01:01 TimToady well, this is the part of the GLR we knew we need to get out of the way because API
01:03 colomon TimToady: aye, I just hope someone looks at the issues.  :)
01:03 colomon any idea how pm’s team did in the robot worlds this weekend?
01:04 TimToady ain't heard
01:22 Spot__ joined #perl6
01:46 ilbot3 joined #perl6
01:46 Topic for #perl6 is now »ö« Welcome to Perl 6! | http://perl6.org/ | evalbot usage: 'p6: say 3;' or rakudo:, std:, or /msg camelia p6: ... | irclog: http://irc.perl6.org | UTF-8 is our friend! | feather will shut down permanently on 2015-03-31
01:48 chenryn joined #perl6
01:51 ugexe example output for a better picture: https://gist.github.com/ugexe/dd3169b7fe1a80e30ef6
02:05 yeahnoob joined #perl6
02:08 aborazmeh joined #perl6
02:08 aborazmeh joined #perl6
02:16 dalek rakudo/nom: 9f7c71f | TimToady++ | src/core/Junction.pm:
02:16 dalek rakudo/nom: remove commented code
02:16 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/9f7c71f34f
02:32 gcole joined #perl6
02:40 ssqq joined #perl6
02:42 ssqq I think the method `first` of `List` should have default behaviour just like Lisp: get the first element of List.
02:43 ssqq (1,2,3).first #=> 1
02:44 ssqq (1,2,3).last #=> 3; (1,2,3).rest #=> (2,3)
02:48 konsolebox joined #perl6
02:53 raiph joined #perl6
02:55 TimToady why duplicate [0] and such?
02:55 noganex_ joined #perl6
02:56 TimToady and most of the time we end up dealing with that using binding: ($first, *@rest)
02:57 TimToady besides, it should obviously be .car and .cdr :)
03:08 ssqq TimToady: last elements of array `[*-1]` is ugly, .last is better.
03:11 ssqq TimToady: .car and .cdr have been out of style, `first` and `last` is modern.
03:13 TimToady last is terribly ambiguous ("previous"?) and last already means something else in Perl
03:14 TimToady and nothing about Lisp can be construed as "modern" :P
03:14 TimToady except in the prior-to-postmodern sense :)
03:15 ssqq TimToady: I think `(1,2,3).first` is more natural than `(1,2,3)[0]`
03:15 TimToady and we're not in the business of pulling in every meme we can from other languages anyway--that was Perl 1's jobb :)
03:16 TimToady and why overload .first anyway, when .head is unambiguous
03:16 ssqq Maybe I poison in `Lisp` too much.
03:16 TimToady we're quite willing to borrow ideas from other languages, but specific syntax...not so much...
03:17 dalek rakudo/nom: 13aed01 | TimToady++ | src/core/Hash.pm:
03:17 dalek rakudo/nom: flattery gets .classify and .categorize nowhere
03:17 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/13aed01b86
03:29 ssqq_ joined #perl6
03:32 dalek rakudo/nom: fff887e | TimToady++ | src/core/Any.pm:
03:32 dalek rakudo/nom: min/max/minmax deflatting
03:32 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/fff887e611
03:32 skids std: grammar A { token foo-bar { <[A]> }; token TOP { <[B] + foo-bar> } };
03:32 camelia std 28329a7: OUTPUT«ok 00:00 138m␤»
03:33 skids m: grammar A { token foo-bar { <[A]> }; token TOP { <[B] + foo-bar> } };
03:33 camelia rakudo-moar 9f7c71: ( no output )
03:33 skids oh its runtime.
03:33 skids m: grammar A { token foo-bar { <[A]> }; token TOP { <[B] + foo-bar> } }; A.parse("A");
03:33 camelia rakudo-moar 9f7c71: OUTPUT«Method 'bar' not found for invocant of class 'A'␤  in regex TOP at /tmp/7frYnpHMaF:1␤  in method parse at src/gen/m-CORE.setting:16852␤  in block <unit> at /tmp/7frYnpHMaF:1␤␤»
03:45 dalek ecosystem: 71068f3 | (David Farrell)++ | META.list:
03:45 dalek ecosystem: Added Pod::Perl5
03:45 dalek ecosystem: review: https://github.com/perl6/e​cosystem/commit/71068f3e1a
04:00 rhr joined #perl6
04:01 konsolebox joined #perl6
04:10 labster I'm almost tempted to define bytes as octets in S99 so I can close https://github.com/perl6/specs/issues/85
04:21 gcole joined #perl6
04:41 chenryn joined #perl6
04:55 laouji_ joined #perl6
05:15 kaare_ joined #perl6
05:36 rindolf joined #perl6
05:40 chenryn joined #perl6
06:06 domidumont joined #perl6
06:09 diana_olhovik joined #perl6
06:09 gcole joined #perl6
06:11 domidumont joined #perl6
06:19 FROGGS joined #perl6
06:22 FROGGS o/
06:24 raydiak \o
06:30 jnthn o/
06:30 nwc10 \o
06:30 nwc10 "you have no messages"
06:31 nwc10 including, you have no messages from ASAN
06:31 jnthn phew :)
06:32 labster \o/
06:44 eli-se joined #perl6
06:48 RabidGravy joined #perl6
06:56 labster m: 1 x "''''"
06:56 camelia rakudo-moar fff887: OUTPUT«Cannot convert string to number: base-10 number must begin with valid digits or '.' in '⏏''''' (indicated by ⏏)␤  in sub parse-int-frac-exp at src/gen/m-CORE.setting:7463␤  in sub parse-simple-number at src/gen/m-CORE.setting:7633␤  in sub parse-…»
06:57 labster hm, maybe that string in the error should escape single quotes.
06:59 Rounin joined #perl6
07:00 jnthn Or just pick the same quotes that regexes use to put in that error
07:03 virtualsue joined #perl6
07:03 raydiak m: say "" ~~ /^$/
07:03 camelia rakudo-moar fff887: OUTPUT«「」␤»
07:04 raydiak m: say "「」" ~~ /../
07:04 camelia rakudo-moar fff887: OUTPUT«「「」」␤»
07:05 labster m: (1 x "a").WHAT.say
07:05 camelia rakudo-moar fff887: OUTPUT«Cannot convert string to number: base-10 number must begin with valid digits or '.' in '⏏a' (indicated by ⏏)␤  in sub parse-int-frac-exp at src/gen/m-CORE.setting:7463␤  in sub parse-simple-number at src/gen/m-CORE.setting:7633␤  in sub parse-rea…»
07:06 labster m: my $x = "a"; (1 x "a").WHAT.say
07:06 camelia rakudo-moar fff887: OUTPUT«Cannot convert string to number: base-10 number must begin with valid digits or '.' in '⏏a' (indicated by ⏏)␤  in sub parse-int-frac-exp at src/gen/m-CORE.setting:7463␤  in sub parse-simple-number at src/gen/m-CORE.setting:7633␤  in sub parse-rea…»
07:06 labster m: my $x = "a"; (1 x $x).WHAT.say
07:06 camelia rakudo-moar fff887: OUTPUT«Cannot convert string to number: base-10 number must begin with valid digits or '.' in '⏏a' (indicated by ⏏)␤  in sub parse-int-frac-exp at src/gen/m-CORE.setting:7463␤  in sub parse-simple-number at src/gen/m-CORE.setting:7633␤  in sub parse-rea…»
07:06 jnthn uh, Match objects I mean
07:06 salv0 joined #perl6
07:06 _mg_ joined #perl6
07:07 labster I vaguely feel like that should be a Failure, not sure why.
07:09 xfix joined #perl6
07:10 telex joined #perl6
07:10 moritz TimToady: thanks, fixed
07:10 yoleaux 26 Apr 2015 21:53Z <TimToady> moritz: ss/need to much/need to know much/
07:13 Rounin joined #perl6
07:13 salv00 joined #perl6
07:14 salv0 joined #perl6
07:18 virtualsue_ joined #perl6
07:20 zakharyas joined #perl6
07:24 dalek roast: b634151 | lizmat++ | S16-filehandles/io.t:
07:24 dalek roast: Remove test for #124394, it's tested elsewhere
07:24 dalek roast: review: https://github.com/perl6/roast/commit/b634151410
07:24 synbot6 Link:  https://rt.perl.org/rt3//Publ​ic/Bug/Display.html?id=124394
07:24 lizmat and good *, #perl6!
07:24 labster good * lizmat
07:24 labster m: "a".Numeric.WHAT.say
07:24 camelia rakudo-moar fff887: OUTPUT«(Failure)␤»
07:25 labster m: "a".Int.WHAT.say
07:25 camelia rakudo-moar fff887: OUTPUT«Cannot convert string to number: base-10 number must begin with valid digits or '.' in '⏏a' (indicated by ⏏)␤  in sub parse-int-frac-exp at src/gen/m-CORE.setting:7463␤  in sub parse-simple-number at src/gen/m-CORE.setting:7633␤  in sub parse-rea…»
07:27 lizmat last news about pmichaud's team is: 5th place (woolfy++)
07:27 FROGGS (pmichaud's team)».++
07:29 nwc10 5th place in the known universe?
07:30 dalek roast: 52a016a | lizmat++ | S16-filehandles/io.t:
07:30 dalek roast: When you remove a test, adjust the count, duh!
07:30 dalek roast: review: https://github.com/perl6/roast/commit/52a016a0b1
07:30 lizmat world championship robotics
07:30 nwc10 "world championship" is roughly "known universe", if you follow my sense of humour
07:31 lizmat I'm not that terran centric  :-)
07:31 lizmat meanwhile, with all the last changes, startup on my machine has gone up from .20 to .32  seconds
07:32 lizmat I also understand 5th out of 64 teams
07:34 moritz that's pretty impressive
07:34 jnthn Indeed.
07:34 bjz joined #perl6
07:34 jnthn Congrats to them :)
07:35 mr-foobar joined #perl6
07:35 araujo joined #perl6
07:35 jnthn lizmat: If the NFG merge is within the scope of that increase, it's entirely possible that doing a load of NFG-ing at startup as we load various string heaps could be part of it.
07:36 jnthn lizmat: Thankfully for that one, callgrind can tell me how much of an issue it is, and I've a good idea how to solve it. :)
07:36 lizmat feels like it
07:36 TimToady it's unlikely to be the GLR api changes
07:36 jnthn TimToady: Agree.
07:36 lizmat agree
07:37 jnthn I kinda suspected we might take a startup hit from switching NFG one, but punted worrying about that until I'd got past the "make it work" phase. :)
07:37 jnthn s/one/on/
07:37 lizmat yeah, that's why I didn't mention it until now  :-)
07:38 jnthn Anyways, I'll do some measuring tomorrow and see if that's it. :)
07:38 lizmat kewl  :-)
07:39 FROGGS TimToady: do we want to support this?  my $Letter = True; say "foo..." ~~ / <:$Letter>+ /
07:40 nwc10 jnthn: in theory, we could serialise in NFG. Or, at least, have an option, enabled during setting compiation, to serialise as NFG, and bootstrap the NFG table from the serialised blob.
07:40 nwc10 or, have a "trusted" flag on the seralisation saying that we've confirmed there's nothing NFG-able in here
07:41 dalek rakudo/nom: 0a68977 | TimToady++ | src/core/List.pm:
07:41 dalek rakudo/nom: deitemize combination/permutations
07:41 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/0a68977f87
07:41 dalek roast: 19ddb08 | TimToady++ | S32-list/ (2 files):
07:41 dalek roast: de-itemize combinations/permutations
07:41 dalek roast: review: https://github.com/perl6/roast/commit/19ddb08555
07:41 jnthn nwc10: In practice, latin-1 already *is* in NFG, and more compact than UTF-8, and cheaper to decode than UTF-8, so we probably win more overall just by storing those strings we can as latin-1. :)
07:41 jnthn (which was my plan :))
07:42 nwc10 although if (post Christmas) someone (else) writes the 8 bit NFG, it might be that the setting uses fewer than 128 non-ASCII characters, so it can all be stored as 8 bit
07:42 TimToady FROGGS: beats me
07:42 nwc10 but agree, seralising to Latin 1 where viable feels like a win.
07:42 FROGGS k, leave it out for now
07:43 domidumont joined #perl6
07:43 abraxxa joined #perl6
07:43 jnthn FROGGS: Do we do :Letter($Letter) already?
07:43 FROGGS jnthn: yes
07:43 jnthn Hmm
07:44 jnthn It's arguable :)
07:44 jnthn It's cute :)
07:44 jnthn (today) ;)
07:44 FROGGS it is a colonpair
07:45 jnthn Right
07:45 jnthn That's what makes it arguable :)
07:45 FROGGS well, it can be extended later very easily...
07:46 FROGGS thing is, I need to check what the jvm is doing here at all, since getuniprop_{str,int} is not supported yet
07:46 FROGGS so I probably do that first so I can apply my patches
07:47 FROGGS and add or unfudge tests, since there was not a single passing todo :o(
07:50 FROGGS m: say "foo" ~~ "foo"|"bar" ?? 1 !! 0
07:50 camelia rakudo-moar fff887: OUTPUT«1␤»
07:50 FROGGS m: say ("foo"|"bar").ACCEPTS("foo") ?? 1 !! 0
07:50 camelia rakudo-moar fff887: OUTPUT«1␤»
07:50 FROGGS m: say (("foo"|"bar").ACCEPTS("foo") ?? 1 !! 0).perl
07:50 camelia rakudo-moar fff887: OUTPUT«1␤»
07:50 FROGGS hmmm
07:50 cschwenz joined #perl6
07:51 lizmat m: use strict <foo bar>   # what should this do ?
07:51 camelia rakudo-moar fff887: OUTPUT«===SORRY!===␤This representation (P6str) does not support associative access␤»
07:51 lizmat my approach at the moment, is that it goes out to find a module with that name
07:52 lizmat and then fail atm:
07:52 lizmat $ 6 'use strict <foo bar>'
07:52 lizmat ===SORRY!===
07:52 lizmat Could not find strict in any of
07:52 lizmat m: use strict
07:52 camelia rakudo-moar fff887: ( no output )
07:52 FROGGS and without the arglist it would use the pragma? that feels strange
07:53 lizmat well, I can let it die then and there as well  :-)
07:53 FROGGS I mean, if we do not handle options passed to pragmas yet we should say so
07:53 lizmat that's what I'm working on now
07:53 lizmat before, any options passed to pragmas were simply ignored or caused LTA errors
07:53 cschwenz That also has huge potential to conflict with http://design.perl6.org/S22.html#emulates
07:53 FROGGS ahh
07:55 zakharyas joined #perl6
07:58 bjz joined #perl6
07:58 gcole joined #perl6
07:59 FROGGS cschwenz: in what way?
08:00 cschwenz "use JSON::XS:auth<cpan:MLEHMANN>;"
08:00 cschwenz admitedly there is an "auth" there, but still…
08:01 cschwenz *admittedly
08:01 FROGGS I still don't see a connection to pragmas here
08:02 jnthn There's no ambiguity; the :auth is part of the name
08:02 jnthn Arguments come after whitespace
08:03 jnthn use Foo :auth<bar>; # use Foo, pass one argument (and probably get an error for trying)
08:04 lizmat so jnthn, you're saying that:
08:04 lizmat $ 6 'use strict:auth<foo>'
08:04 lizmat ===SORRY!===
08:04 lizmat Could not find strict in any of:
08:04 lizmat feels correct but:
08:04 dalek roast: eec1d5e | TimToady++ | S32-list/ (2 files):
08:04 dalek roast: .unique and .squish don't flatten
08:04 dalek roast: review: https://github.com/perl6/roast/commit/eec1d5e123
08:04 andreoss joined #perl6
08:04 lizmat $ 6 'use strict <foo bar>'
08:04 lizmat ===SORRY!===
08:04 lizmat Could not find strict in any of
08:04 dalek rakudo/nom: 3a2f8a5 | TimToady++ | src/core/List.pm:
08:04 dalek rakudo/nom: .unique and .squish don't flatten
08:04 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/3a2f8a57df
08:04 lizmat should fail with something like "strict doesn't take any parameters" ?
08:05 jnthn lizmat: The latter is certainly correct
08:05 jnthn lizmat: The first we may want to recognize they're using a built-in pragma that doesn't accept ver/auth search.
08:06 lizmat ok, I'll make it that way then
08:06 jnthn And so give a slightly more helpful error.
08:06 jnthn Otherwise we'll only get somebody reporting it as LTA :P
08:06 lizmat but only if the module cannot be found?  or not try to load anyway ?
08:07 jnthn lizmat: My first inclination is "don't even try", but maybe that's restricting people writing their own definition of strict...otoh we don't have the facilities to really do such a thing yet.
08:08 lizmat if we would allow access to %*PRAGMAS, it could work, no?
08:08 jnthn %*PRAGMAS is just a stand-in for now
08:08 jnthn We need a better mechanism eventually.
08:09 jnthn Ties into masak++'s QTree work, I suspect.
08:09 lizmat ok, well, then we shouldn't restrict just yet, then
08:09 jnthn yeah...guess it's Perl-ier not to :)
08:10 lizmat fwiw, my next thing would be using the %*PRAGMAS framework for handling 'use lib'
08:10 jnthn So maybe you already have it right. :)
08:16 andreoss the readline interface is now broken with perl6-m
08:16 jnthn readline interface?
08:16 darutoko joined #perl6
08:16 andreoss repl
08:17 andreoss how do you call it?
08:17 jnthn Broken in what sense?
08:17 jnthn I think you need to install some module to get history/tab-completion support.
08:17 jnthn (Since it was moved out of the VM)
08:17 cschwenz andreoss:  do you mean the linenose reimplementation of readline?
08:18 cschwenz *linenoise
08:18 andreoss ^A, ^E etc don't work
08:18 andreoss so i putted rlwrap in bin/perl6
08:20 andreoss it was a nice feature, I guess some people want it out of the box.
08:20 jnthn I assume we'll ship the module needed with R*, so most end users will get it out of the box.
08:21 sqirrel joined #perl6
08:27 dakkar joined #perl6
08:28 dalek rakudo/nom: 34f7992 | lizmat++ | src/Perl6/ (2 files):
08:28 dalek rakudo/nom: Move module loading logic to World
08:28 dalek rakudo/nom:
08:28 dalek rakudo/nom: Step #1 towards making module loading more S11/S22 compatible.
08:28 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/34f79928e1
08:36 domidumont1 joined #perl6
08:40 zeleiadi joined #perl6
08:43 dalek rakudo/nom: 1dd95d4 | lizmat++ | src/ (2 files):
08:43 dalek rakudo/nom: Make 'use strict <foo bar>' give a better error
08:43 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/1dd95d4fb1
08:44 lizmat afk for a bit&
08:50 bjz joined #perl6
08:54 laouji__ joined #perl6
08:55 hobbs joined #perl6
08:59 [Tux] joined #perl6
09:03 dalek rakudo/nom: 589da72 | lizmat++ | src/Perl6/World.nqp:
09:03 dalek rakudo/nom: Don't use try if it's not needed
09:03 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/589da7205e
09:04 * lizmat is off for some flea market hunting on king's day
09:05 DrForr Rather glad NLPW wasn't during King's Day this time 'round.
09:11 espadrine joined #perl6
09:13 darutoko joined #perl6
09:24 domidumont joined #perl6
09:24 salv0 joined #perl6
09:29 rurban joined #perl6
09:29 RabidGravy is there any particular reason that, e.g., Promise, uses nqp::lock, nqp::unlock directly rather than using Lock.protect() ?
09:31 jnthn Performance tuning is the good answer now, but the historical one is that Promise came first.
09:32 masak good antenoon, #perl6
09:32 RabidGravy er
09:32 RabidGravy p
09:32 RabidGravy erp
09:32 masak m: say "er" ~ "p"
09:32 camelia rakudo-moar 589da7: OUTPUT«erp␤»
09:32 RabidGravy :)
09:33 masak m: sub infix:<~->($big, $small) { $big.subst($small, "") }; say "erp" ~- "p"
09:33 camelia rakudo-moar 589da7: OUTPUT«er␤»
09:35 [ptc] m: qqx{perl6 /tmp/not-existent.txt}
09:35 camelia rakudo-moar 589da7: OUTPUT«qx, qqx is disallowed in restricted setting␤  in sub restricted at src/RESTRICTED.setting:1␤  in sub QX at src/RESTRICTED.setting:11␤  in block <unit> at /tmp/NFohEJ3iFP:1␤␤»
09:35 bjz joined #perl6
09:36 jnthn o/ masak
09:40 masak Perl 6 day today \o/
09:40 masak I should probably start by looking at the RT queue
09:41 masak notably #124321
09:41 synbot6 Link:  https://rt.perl.org/rt3//Publ​ic/Bug/Display.html?id=124321
09:43 dalek perl6-examples: 7b0ad5d | paultcochrane++ | categories/shootout/fasta.p6:
09:43 dalek perl6-examples: Correct filename in usage information
09:43 dalek perl6-examples: review: https://github.com/perl6/perl​6-examples/commit/7b0ad5d7d3
09:43 dalek perl6-examples: 33de77f | paultcochrane++ | categories/shootout/k-nucleotide.p6:
09:43 dalek perl6-examples: Don't use tabs in output
09:43 jnthn Calling .^make_pun is surely wrong
09:43 FROGGS but funny :D
09:43 jnthn It'll create one every time
09:43 dalek joined #perl6
09:43 jnthn .^inheritalize gets the pun
09:44 RabidGravy dalek got exterminated?
09:44 RabidGravy the irony
09:44 FROGGS uff, this autothreads the .ACCEPTS call: perl6 -e 'say "foo0½¼1bar" ~~ / <:Arabic("Latin" | "Common")>+ /'
09:44 jnthn Though maybe we should have a .^pun that does similar, and make inheritalize delegate to it.
09:45 masak +1
09:45 masak ok, so that was easy. the problem is in... NativeCall, then?
09:45 FROGGS yes
09:48 * masak adds this to the ticket
09:48 * masak tries to reproduce the original problem, and also to make it go away with .^inheritalize
09:49 masak yep, and yep.
09:50 vendethiel m: class A{has $.a;sub f {:$.a}}; say A.new(:5a).f.perl
09:50 camelia rakudo-moar 589da7: OUTPUT«5===SORRY!5=== Error while compiling /tmp/fomgrrQnWp␤Variable $.a used where no 'self' is available␤at /tmp/fomgrrQnWp:1␤------> 3class A{has $.a;sub f {:$.a7⏏5}}; say A.new(:5a).f.perl␤»
09:50 vendethiel m: class A{has $.a;method f {:$.a}}; say A.new(:5a).f.perl
09:50 camelia rakudo-moar 589da7: OUTPUT«:a(5)␤»
09:50 masak -         typed.^make_pun;
09:50 masak +         typed.^inheritalize;
09:50 masak fixes it.
09:51 vendethiel .oO( he's taking away our puns! )
09:51 masak vendethiel: but note in the backlog that there's the possibility of adding a .^pun meta-method
09:54 gcole joined #perl6
09:54 jnthn Yes, but the MOP could make it prettier to get right :)
09:54 masak -Opretty
09:55 Alina-malina joined #perl6
09:56 jnthn masak: If you fancy doing the MOP patch, then move the logic in RolePuning.nqp's inheritlaize method into a pun method, and make inheritalize call pun
09:56 nwc10 [ptc]: are you killing dalek again? :-)
09:58 * masak .oO( <hulk smash> Puny Role! ) :P
10:02 masak we're gearing up for lunch here, so the fix'll have to be after that.
10:02 masak but the path forward seems clear.
10:03 FROGGS m: say '0.0' ~~ 0 ^..^ 1
10:03 camelia rakudo-moar 589da7: OUTPUT«True␤»
10:03 FROGGS m: say 0.0 ~~ 0 ^..^ 1
10:03 camelia rakudo-moar 589da7: OUTPUT«False␤»
10:03 jnthn munch lunch then punch
10:03 FROGGS :o(
10:04 FROGGS m: say '1.0' ~~ 0 ^..^ 1
10:04 camelia rakudo-moar 589da7: OUTPUT«False␤»
10:04 FROGGS ?
10:04 FROGGS there is a bug, right?
10:04 jnthn m: say (+'0.0').perl
10:04 camelia rakudo-moar 589da7: OUTPUT«0.0␤»
10:04 jnthn m: say +'0.0' > 0
10:04 camelia rakudo-moar 589da7: OUTPUT«False␤»
10:04 jnthn Hm, and an odd one at that.
10:04 jnthn m: say +'0.0' > 0e0
10:04 camelia rakudo-moar 589da7: OUTPUT«False␤»
10:04 jnthn m: say +'0.0' > 0.0
10:04 camelia rakudo-moar 589da7: OUTPUT«False␤»
10:05 FROGGS well, tbf the range code for .ACCEPTS is kinda hairy
10:07 FROGGS but that also means that my colonpair unicode property patch is fine
10:12 Alina-malina joined #perl6
10:14 lolisa joined #perl6
10:15 * FROGGS reported it as RT #124400
10:15 FROGGS m: say '0.0' cmp 0
10:15 camelia rakudo-moar 589da7: OUTPUT«More␤»
10:17 scumdog left #perl6
10:18 timotimo o/
10:21 MARTIMM joined #perl6
10:26 domidumont joined #perl6
10:33 masak FROGGS++ # RT #124440
10:33 synbot6 Link:  https://rt.perl.org/rt3//Publ​ic/Bug/Display.html?id=124440
10:33 masak (kind of missing from that bug report: expectations, Rakudo version)
10:35 masak though the expectations can be filled in by a reader who wants to hazard a guess, it's always good to be specific.
10:37 jnthn *nod*
10:38 jnthn It's a tricky one since I *think* cmp is behaving as designed when being given two different types.
10:48 gcole joined #perl6
10:50 chenryn joined #perl6
10:57 eli-se joined #perl6
10:58 masak right. it's more obviously wrong with the infix:<~~>, because there a cast to the rhs type is kind of expected.
11:04 chenryn joined #perl6
11:26 raiph joined #perl6
11:26 RabidGravy does the  Scheduler.cue({}, :every => 2) have a higher level abstraction?
11:27 RabidGravy (I can't find one)
11:28 masak RabidGravy: what kind of higher-level abstraction are you looking for?
11:29 RabidGravy any really - you can get plain cue({}) and cue({}, in => 1) from Promise but every and times not
11:31 RabidGravy In the concurrency document I am trying to draw the comparison between the higher and lower level interfaces
11:32 muraiki joined #perl6
11:32 RabidGravy every() for instance could be a method on Promise that returns a Supply that emits a promise for every execution of the code
11:32 RabidGravy (and times() similarly)
11:33 timotimo you can get a periodic supply to call your stuff for you
11:34 timotimo http://doc.perl6.org/routine/interval
11:34 RabidGravy ah, yes I had completely forgotten that, cheers
11:34 RabidGravy stand easy
11:44 RabidGravy all good then, I can stop worrying, but actually the thought experiment of how I might implement that is fruitful anyhow
11:47 eli-se joined #perl6
11:56 gcole joined #perl6
12:03 domidumont joined #perl6
12:06 colomon joined #perl6
12:10 [Tux] <slik>Another 20% slowdown?</slik>
12:12 rjbs- Does p6 have the equivalent of Python's for/else?
12:12 timotimo rjbs-: i can never remember how exactly that works
12:12 timotimo [Tux]: please keep in mind that there's currently a significant slow-down the more modules you have in your database
12:13 [Tux] it is *runtime* not startup time
12:13 [Tux] two days ago 35.5 seconds, yesterday 41, today 49
12:14 timotimo good to know
12:14 [Tux] testing again, might have hit a bad moment
12:14 timotimo but yeah ... that sucks :(
12:14 [Tux] 39 now
12:15 rjbs- timotimo: The else block is called if the for loop was not ended early.
12:15 abraxxa joined #perl6
12:15 [Tux] I kanda liked Davids proposal
12:16 rjbs joined #perl6
12:16 [Tux] and/or zefram's contuniue/on_last/on_complete
12:16 raiph joined #perl6
12:17 timotimo [Tux]: ok, that's still bad, but at least doesn't seem like a new regression
12:18 [Tux] indeed
12:18 [Tux] https://github.com/Tux/CSV​/blob/master/README.speed for the pro/regression since 201410
12:28 eli-se joined #perl6
12:31 dalek perl6-examples: 5bf39d0 | paultcochrane++ | categories/shootout/n-body-v2.p6:
12:31 dalek perl6-examples: Correct example now that .map isn't flat
12:31 dalek perl6-examples:
12:31 dalek perl6-examples: After the change ecd3159 which stopped .map from flattening, this example
12:31 dalek perl6-examples: stopped working.  To have the equivalent functionality, one needs to use
12:31 dalek perl6-examples: .for instead of .map.
12:31 dalek perl6-examples: review: https://github.com/perl6/perl​6-examples/commit/5bf39d0f6a
12:33 [Tux] error reporting is currently waaaaaaay of with the line number:
12:33 [Tux] Attribute $!errors not declared in class Text::CSV
12:33 [Tux] at /pro/3gl/CPAN/Text-CSV6/lib/Text/CSV.pm:1511
12:33 [Tux] that should have been line 464
12:33 [Tux] 1511 is the first line *after* the class
12:37 hoelzro morning #perl6
12:38 cschwenz o/ hoelzro
12:38 hoelzro o/ cschwenz
12:39 hoelzro FROGGS: do you have an idea on how compunit file naming could work differently in the future to support .so/.dll/etc files?
12:40 hoelzro I would like to help with that effort so that Linenoise is ready by the next release
12:43 FROGGS hoelzro: can talk about that later?
12:44 hoelzro FROGGS: sure, just ping me when you're available
12:45 FROGGS k
12:45 FROGGS thanks :o)
12:46 hoelzro no problem =)
12:47 masak hello from a train!
12:48 hoelzro o/ masak
12:48 moritz \o
12:48 nine hoelzro: at the PQAH using a (numeric) folder per distribution and plain file names within that folder looked like the solution
12:49 FROGGS nine: that's at least my current favourite
12:49 FROGGS though we should perhaps Punycode the filenames
12:50 nine Sounds like a sensible precaution
12:50 FROGGS but taking care of MyDist/share and installing it into a sensible location is something that can be done in parallel to fixing the other issues
12:54 hoelzro that seems reasonable
12:54 hoelzro if you punycode the filename, though, what happens for .so and .dll files, since it's the c library/OS that locates them, rather than the VM?
12:56 FROGGS hoelzro: well, they hopefully are ascii only... or we decide to not punycode stuff from share
12:57 moritz I'd only punycode stuff that the VM loads
12:58 FROGGS that would be bin/ and lib/
12:58 moritz lib/
12:58 moritz do we ever load bin ourselves?
12:58 FROGGS well, we locate them via compunitrepos
12:59 FROGGS but that covers All The Things of a dist anyway
12:59 moritz which operation causes us to look for stuff in bin/?
12:59 masak ok, now let's try and spectest and fix #124321...
12:59 synbot6 Link:  https://rt.perl.org/rt3//Publ​ic/Bug/Display.html?id=124321
12:59 FROGGS running such a script
12:59 FROGGS moritz: like when you run the installed 'panda'
13:00 moritz FROGGS: and there's a wrapper involved somewhere?
13:00 FROGGS it will look for a 'bin/panda' in the compunitrepos, and will run that
13:00 FROGGS aye
13:00 felher joined #perl6
13:00 moritz eeks
13:00 FROGGS so you can have multiple dists providing a panda binary/script
13:00 FROGGS moritz: when have you been since dec' 2013?
13:01 moritz when indeed?
13:01 moritz or where, for that matter?
13:01 FROGGS no, I mean you are asking stuff that was discussed several times (and there exist advent posts about that topic)
13:02 moritz yes, my p6 involvement has been declining
13:02 FROGGS thing is we need a way to support multiple versions of dists, which cover dists that provide executables
13:02 * masak knows the feeling :/
13:03 masak used to be a time I backlogged everything. everything!
13:03 moritz FROGGS: ok, good point
13:03 moritz masak: same here
13:03 moritz and then came kid no. 2
13:03 FROGGS so we install a generic wrapper script, that does the same magic as a 'use' statement for modules
13:03 FROGGS or 3 :o)
13:04 hoelzro I think we're going to have to make NativeCall aware of the compunit repo stuff
13:04 FROGGS hoelzro: I'd prefer a more general solution
13:05 * masak .oO( this problem requires... a more *general* solution. <mad laughter> )
13:05 hoelzro FROGGS: what I mean by that is I think if we're going to store .so and .dll files at locations in the repository, we can't rely on the OS dynamic linker to be able to find them
13:05 FROGGS so if you compile a lib (to /share in your dist), you shall be able to do: sub mynative() is native(%?RESOURCE<share/mylib.so>) { ... }
13:05 FROGGS or something like that
13:05 hoelzro hmm, I think that would work
13:06 hoelzro depending on the linker impl
13:06 FROGGS yes, the OS will not look everywhere for libs, that's for sure
13:08 FROGGS moritz: sorry if my comment earlier was offending :S
13:08 colomon masak, moritz: I don’t think I ever backlogged everything.  :)  Do wish I had more time for p6, but then, right now I pretty much wish I had more time for everything.
13:10 moritz FROGGS: it wasn't
13:10 FROGGS phwe
13:10 FROGGS phew*
13:10 hoelzro for the time being, maybe I should disable the linenoise check, or at least have a way to override it
13:10 moritz sometimes I'm just wondering myself where I've been
13:10 FROGGS hoelzro: why? does it hurt?
13:10 masak colomon: yeah, same.
13:11 hoelzro FROGGS: if you have Linenoise installed, you can't run the REPL at all
13:11 hoelzro because Linenoise.pm can't find liblinenoise.so
13:11 masak colomon: it seems to be a repeating thing that I have a bunch of good ideas when I have absolutely no time to implement them. instead, I try to write things down.
13:11 FROGGS ups
13:11 masak spectest failure in t/spec/S17-channel/basic.t
13:11 masak "Bad plan.  You planned 17 tests but ran 16."
13:12 masak passes if I run it directly, either with `perl6` or with `make`
13:12 masak (oh, and the spectests were run with TEST_JOBS=4, so maybe that's a factor, too)
13:14 cognominal joined #perl6
13:15 masak we have no NativeCall tests in t/spec ?
13:17 FROGGS only in t
13:17 FROGGS masak: it is not part of the language
13:18 masak oh!
13:18 masak where should the test for #124321 go? it does test for a bug in NativeCall.
13:18 synbot6 Link:  https://rt.perl.org/rt3//Publ​ic/Bug/Display.html?id=124321
13:19 masak t/04-nativecall/04-pointers.t seems the perfect place for it.
13:20 FROGGS yeah, think so too
13:20 DrForr It's resolved? Yay.
13:20 FROGGS a one line fix IIRC
13:20 FROGGS masak++
13:20 DrForr Yeah, ^.make_pun is repeating itself.
13:21 masak DrForr: about to write a test and then fix it. so not quite yet.
13:21 DrForr Ah, okay.
13:21 masak I'm on a train, so if I drop out unexpectedly it's because the train has formed its own private little Internet all of a sudden.
13:22 * masak wonders if he's the Rakudo committed with the highest average velocity per commit
13:22 DrForr Depends. Are you on the Eurostar?
13:24 FROGGS hmmm, has jnthn already committed from a plain yet?
13:25 moritz I'm pretty sure pmichaud has
13:28 masak pointed question (no pun intended):
13:29 masak there are two occurrences of .make_pun in NativeCall.pm
13:29 masak one in Pointer, one in CArray
13:29 masak both of them are in a ^parameterize method
13:29 Possum joined #perl6
13:29 masak are both wrong? (defaulting to "yes", but want to double check)
13:30 masak i.e. should both be replaced by a call to .^inheritalize ?
13:31 FROGGS masak: very likely yes
13:32 FROGGS masak: because I used CArrays as a preset for Pointers
13:32 masak FROGGS: are you savvy enough to produce a failing test case, similar to the minimal one in https://rt.perl.org/Ticket/Display.html?id=124321 but for CArray ?
13:32 masak then I could add it to the test file.
13:34 FROGGS I can try
13:34 pyrimidine joined #perl6
13:35 masak ++FROGGS
13:35 * masak just realized he has to write some C code for this test
13:36 andreoss joined #perl6
13:36 FROGGS m: use NativeCall; class Bug { sub rl_get_screen_size( Pointer[Int], Pointer[Int] ) is native( 'foo' ) { * }; method rl-get-screen-size( Pointer[Int] $r, Pointer[Int] $c ) { rl_get_screen_size( $r, $c ) } }
13:36 camelia rakudo-moar 589da7: OUTPUT«5===SORRY!5=== Error while compiling /tmp/yrmE8kMqXO␤Calling rl_get_screen_size(Pointer, Pointer) will never work with declared signature (Pointer, Pointer)␤at /tmp/yrmE8kMqXO:1␤------> 3e( Pointer[Int] $r, Pointer[Int] $c ) { 7⏏5rl_get_scre…»
13:36 andreoss m: (1...10).rotor(3,2).perl.say
13:36 camelia rakudo-moar 589da7: OUTPUT«((1, 2, 3), (4, 5), (6, 7, 8), (9, 10))␤»
13:36 andreoss is it wrong?
13:36 FROGGS that's the example from the ticket
13:37 masak right.
13:37 moritz andreoss: .rotor changed shortly after the release
13:38 moritz andreoss: and it's right that way by the new design docs
13:38 masak I'm currently trying to get a test to express this using eval_lives_ok -- since the error happens during the compile phase, that feels reasonable.
13:38 moritz andreoss: if you want the old (3 elemes with 2 overlap, you must say)
13:38 andreoss what is the name of old rotor method?
13:38 moritz m: say (1..10).rotor(3 => -2).perl
13:38 camelia rakudo-moar 589da7: OUTPUT«((1, 2, 3), (2, 3, 4), (3, 4, 5), (4, 5, 6), (5, 6, 7), (6, 7, 8), (7, 8, 9), (8, 9, 10))␤»
13:38 moritz andreoss: rotor
13:38 andreoss ok, thanks
13:39 masak having limited success so far. it gives a different error from within the eval_lives_ok :/
13:41 FROGGS masak: ahh, now I got ya... I shall write a test for CArray, not Pointer
13:42 masak sorry if that was unclear :)
13:42 masak yeah, I think I got the Pointer case already. setbacks notwithstanding.
13:42 FROGGS m: use NativeCall; class Bug { sub foo-sub( CArray[int8] ) is native( 'foo' ) { * }; method foo-method( CArray[int8] $c ) { foo-sub( $c ) } } # masak
13:42 camelia rakudo-moar 589da7: OUTPUT«5===SORRY!5=== Error while compiling /tmp/S9mQ3TC8ak␤Calling foo-sub(IntTypedCArray[int8]) will never work with declared signature (IntTypedCArray[int8])␤at /tmp/S9mQ3TC8ak:1␤------> 3 method foo-method( CArray[int8] $c ) { 7⏏5foo-sub( $c ) …»
13:43 masak aha. I needed to `use NativeCall` inside of the eval.
13:44 masak FROGGS: thanks!
13:44 masak FROGGS: you just won us another test today! :)
13:44 FROGGS \o/
13:44 masak will commit these separately.
13:45 masak yep -- this test captures it.
13:45 masak (git stash -p) # like, seriously, ++
13:45 masak er
13:45 masak (git stash -p)++ # like, seriously, ++
13:45 hobbs joined #perl6
13:48 dalek rakudo/nom: 1c916bc | (Carl Masak)++ | / (3 files):
13:48 dalek rakudo/nom: Pointer.^parameterize made fresh puns every time
13:48 dalek rakudo/nom:
13:48 dalek rakudo/nom: It shouldn't -- this commit fixes that, with a regression test.
13:48 dalek rakudo/nom:
13:48 dalek rakudo/nom: Bug discovered by DrForr++. This takes care of RT #124321.
13:48 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/1c916bc62b
13:48 synbot6 Link:  https://rt.perl.org/rt3//Publ​ic/Bug/Display.html?id=124321
13:49 masak ok, I'm gonna close the ticket first, then fix all the rest.
13:49 masak (I also found a flaw in Str.indent that I want to address later. work begets more work.)
13:51 colomon masak++
13:52 masak coming back to Perl 6 and tinkering like this feels like therapy.
13:54 colomon masak: absolutely yes
13:54 jdv79 joined #perl6
13:54 dayangkun joined #perl6
13:54 colomon masak: sometimes it feels like the small stuff I manage to accomplish for p6 is the only positive thing I ever do with computers.  :\
13:55 dayangkun joined #perl6
13:56 * masak hugs colomon
13:56 moritz masak: that reminds me of my doc writing experience, where quite often I notice some imperfections and want to fix them instead of documenting them
13:57 masak moritz: in the RPG analogy, we're multiclass, I guess.
13:58 alini joined #perl6
13:58 [Tux] Files=21, Tests=19054, 56 wallclock secs ( 2.91 usr  0.17 sys + 144.75 cusr  1.63 csys = 149.46 CPU)
13:58 [Tux] Result: PASS
13:59 [Tux] .oO( it'll be harder and harder to sneak new errors in without being detected )
13:59 moritz masak: in the RPGs I've played, everybody eventually learned to fight :-)
14:01 skids joined #perl6
14:01 dalek rakudo/nom: 2ce3cda | (Carl Masak)++ | / (3 files):
14:01 dalek rakudo/nom: CArray.^parameterize made fresh puns every time
14:01 dalek rakudo/nom:
14:01 dalek rakudo/nom: It shouldn't -- this commit fixes that, with a regression test.
14:01 dalek rakudo/nom:
14:01 dalek rakudo/nom: Bug discovered while working commit
14:01 dalek rakudo/nom: 1c916bc62bffd4c921132fb4e04191dddb1a9cba. FROGGS++ confirmed that
14:01 dalek rakudo/nom: the code in CArray was based on Pointer, and provided the failing
14:01 dalek rakudo/nom: test case (FROGGS++).
14:01 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/2ce3cdafc7
14:02 _mg_ joined #perl6
14:03 masak [Tux]: I hope I remember to say this regularly, but -- the work you're doing with CSV is very important, and has found real bugs in Rakudo and noticeably increased quality in some of our processes.
14:03 masak [Tux]++
14:03 FROGGS it is such an awesome feeling to remove the last fudge line from a test file by implementing something...
14:13 skids joined #perl6
14:13 moritz FROGGS: oh yes
14:16 FROGGS m: say "\x[1ea2]\x[5b4]def" ~~ m/\c[LATIN CAPITAL LETTER A WITH HOOK ABOVE,HEBREW POINT HIRIQ]/
14:16 camelia rakudo-moar 589da7: OUTPUT«False␤»
14:17 cognominal what is a pun in this context?
14:19 dalek doc: 76c3921 | (Jonathan Stowe)++ | lib/Language/concurrency.pod:
14:19 dalek doc: start on Promises
14:19 dalek doc: review: https://github.com/perl6/doc/commit/76c3921003
14:19 dalek doc: a91940a | (Jonathan Stowe)++ | lib/Language/concurrency.pod:
14:19 dalek doc: More promises
14:19 dalek doc: review: https://github.com/perl6/doc/commit/a91940a8d8
14:19 dalek doc: a75537b | (Jonathan Stowe)++ | lib/Language/concurrency.pod:
14:19 dalek doc: largely done with Promises
14:19 dalek doc: review: https://github.com/perl6/doc/commit/a75537bf2d
14:19 masak m: role R { method greet { say "OH HAI" } }; R.new.greet
14:19 camelia rakudo-moar 2ce3cd: OUTPUT«OH HAI␤»
14:20 masak cognominal: the role R acts as a class in order for us to be able to run .new on something
14:20 masak cognominal: that's punning.
14:21 masak (I mildly dislike that in Perl 6, the word "punning" got to mean basically only this conversion. whereas in wider CS it refers to any implicit type conversion, for example from 0 to False.)
14:23 FROGGS there is not a single test for <:Foo($bar)> it seems :o(
14:24 cognominal masak: so that is a reification of a role into a class so as to use like a class?
14:24 masak cognominal: yes.
14:25 masak cognominal: basically the role composing "into itself", or into an empty anonymous class, or how best to express it.
14:25 cognominal so it means only that sort of implicit conversion, from role to class?
14:26 masak in Perl 6 it only means that. in a wider, non-Perl 6 context, it can refer to any implicit conversion.
14:26 eli-se joined #perl6
14:26 masak see https://en.wikipedia.org/wiki/Type_punning
14:27 arnsholt In C type-punning is a pointer a* being reinterpreted as a b* IIRC
14:29 cognominal pointer punning for the punter...
14:30 cognominal excuse my londonian French
14:31 ShimmerFairy Hm, I've gotten to a point where I need a sublist for a delimited block item (=begin item/=end item), and I have to say it feels incredibly weird that I have to put =item2 blocks *outside* the =begin item block
14:32 ShimmerFairy I'd rather be able to put an =item (not =item2) in the delimited item block.
14:43 masak ShimmerFairy: that does sound a bit weird, yes.
14:44 masak and (if I may say so), insufficiently Damianesque.
14:44 ShimmerFairy masak: the =item2 and such variants are useful when you're not using delimited blocks, but in the case of delimited blocks it feels more sensible to have nesting =item blocks instead.
14:46 ShimmerFairy (but even then, there _might_ be a weak argument that sublists make the parent list item inherently multi-paragraph, and thus requiring the delimited form and making =item2 etc. useless)
14:51 dalek rakudo/nom: 71b0f06 | (Carl Masak)++ | src/Perl6/Metamodel/RolePunning.nqp:
14:51 dalek rakudo/nom: create RolePunning.pun method
14:51 dalek rakudo/nom:
14:51 dalek rakudo/nom: as outlined in the discussion at
14:51 dalek rakudo/nom: http://irclog.perlgeek.de/p​erl6/2015-04-27#i_10508709
14:51 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/71b0f064ef
14:53 skids joined #perl6
14:53 masak ShimmerFairy: reminds me a bit about HTML5's new <header> element, vs the older <h1>, <h2> etc
14:54 ShimmerFairy masak: if you think about it, one usually prefers  sub level() { ... level(); ... }   over  sub level1() { ... sub level2() { ... sub level3() { ... } } }  :P
14:55 masak how to test that a thing does not warn?
14:55 masak ShimmerFairy: yes, I buy your argument. even not having fully soaked myself in the details of this case.
14:56 ShimmerFairy masak: to be fair, the level1() etc. version would probably be a  macro levelN  instead of a multitude of inner sub definitions
14:58 ShimmerFairy My parenthetical statement basically says "if you have a sublist, chances are the parent list item isn't _just_ a sublist, and has at least another block of text beforehand or something."
15:03 masak ShimmerFairy: I'm not smart enough at the moment to design things. maybe you could come up with a short description of how you would like the world to be -- like in a gist or something -- and then post that here on channel?
15:04 ShimmerFairy sure, Pod isn't usually suitable for pure IRC, what with it being line-oriented and all :)
15:05 masak that, too :)
15:10 telex joined #perl6
15:17 flussence masak: <header> isn't a replacement for <h$n>, they've instead redefined <h1> to do that based on the section nesting depth
15:18 flussence (<header> is one of those sectioning tags)
15:18 domidumont joined #perl6
15:20 masak flussence: yup.
15:21 masak flussence: I tried searching for it, but was unsuccessful: somewhere on the web is an algorithm where you can put in you HTML5 structure and see what actual section/heading structure that results in.
15:21 masak (because apparently, with both <heading> and <h$N>, that's now necessary)
15:24 raiph joined #perl6
15:24 ShimmerFairy masak: here, hopefully it's clear what my thoughts are :)    https://gist.github.com/lue/7de4a42e001c84a5e34f
15:24 masak oh, it's you lue :)
15:24 masak didn't recognize you with that fairy.
15:25 ShimmerFairy :)
15:26 masak ok, I read through your gist.
15:27 masak it would be useful to get TheDamian's reaction to this.
15:27 masak I feel like your proposal is a good one if-and-only-if it doesn't clash with some other nice idea about POD/Pod that someone already had.
15:28 masak like "no, items do not nest because <good reason>"
15:28 masak I agree that your expectations make more sense from, say, a HTML background.
15:28 ShimmerFairy masak: sure, this only comes up because, after having a bunch of block items, I came to writing one that needs a sublist, and it felt soooo wrong to type =end item and then "oh by the way I'm not done, here's a sublist"
15:29 ShimmerFairy masak: I suppose that's my issue in a nutshell: I don't want to say =end item until it actually ends :)
15:32 ShimmerFairy Writing Pod lately has shown a few interesting issues in Pod::To::HTML and rakudo; right now I'm trying to see if unbusting the table parser won't be too hard :)
15:33 flussence Pod, as it stands, feels closer to the mid-2000s perl6 design than what we have today.
15:35 ShimmerFairy Yes, it feels like something that hasn't been touched upon much (it doesn't help that I've been ignoring that time I worked on turning the specs into Pod6, because I'm still hoping someone more able in maintaining something that important will come along :P)
15:35 masak flussence: that is an interesting way to phrase it.
15:37 flussence I guess the message I'm going for is: this doesn't wow people like the rest of the language, because the rest has had so much more effort poured into it
15:37 [Coke] [Tux]++ (backscroll points for CSV++)
15:39 ShimmerFairy flussence: careful, you're starting to get me in a "what if I completely redesigned Pod" mood... :P
15:39 [Coke] we unsurprisingly get a lot of that sort of thing in Perl 6.
15:40 ShimmerFairy (oh, to whoever is able to change the channel topic: feather will shut down permanently almost a month ago ☺)
15:40 sqirrel joined #perl6
15:40 tony-o yes it is
15:41 masak flussence: right. Pod indeed doesn't wow me. and I have one big reason for that:
15:41 masak flussence: Markdown.
15:42 rindolf joined #perl6
15:42 ShimmerFairy (come to think of it, =finish feels like a special case for people too lazy to write =end pod at the end of the file :P)
15:42 masak there are so many ways in which Pod is not Markdown, and I kinda wish it were.
15:43 masak ShimmerFairy: no, it's not the same.
15:43 flussence =finish is cat>>-friendly
15:43 masak ShimmerFairy: =finish stops the parser.
15:43 tinyblak joined #perl6
15:44 ShimmerFairy which parser? The code part, or the whole thing (like the stuff after \end{document} in LaTeX)?
15:45 masak ShimmerFairy: are you familiar with __END__ from Perl 5?
15:45 ShimmerFairy as much as the rest of Perl 5, which is to say not at all :)
15:46 ShimmerFairy (which is why I'm always frustrated when a part of the specs leaves something out because "it's the same in P5", incidentally)
15:46 tony-o why not just integrate markdown in pod style ..
15:46 masak ShimmerFairy: "The two control characters ^D and ^Z, and the tokens __END__ and __DATA__ may be used to indicate the logical end of the script before the actual end of file. Any following text is ignored." -- http://perldoc.perl.org/per​ldata.html#Special-Literals
15:47 masak ShimmerFairy: __END__ and __DATA__ indicate the end of the program. no further parsing of Perl takes place after that.
15:51 ShimmerFairy wow, rakudo's pod table code is confusing
15:51 RabidGravy to me pod in 6 feels like much more of a chore than in 5, it's not even like it's that much more verbose but a few bits here and a few bits there and it goes over the edge
15:51 masak ShimmerFairy: my point is, `=finish` is *not* equivalent to writing `=end pod` -- it's more equivalent to The Ultimate `=end` to end everything.
15:52 ShimmerFairy Alright, I get that :)
15:52 masak I see some places where Pod attempts (and sometimes even succeeds) at being an improvement on POD.
15:53 timotimo oh my
15:53 masak perhaps my biggest favorite is being able to attach Pod stuff to individual units of code.
15:53 timotimo current wordpress can be attacked via the comments function
15:53 flussence meep.
15:53 RabidGravy hahahaha
15:53 timotimo just looking at the comment while you're logged in as an administrator will execute code with your privs
15:54 eli-se joined #perl6
15:55 masak oh, is_run seems to get me what I need for testing that something doesn't warn.
15:55 masak feels a bit heavy-handed, but it works.
16:00 ShimmerFairy masak: I can't seem to figure out the table processing code right now; should I file a rakudobug in this case? (I initially thought about bugging the person who wrote the code, but then I remembered we have a bug tracker ☺)
16:01 cschwenz left #perl6
16:05 masak ShimmerFairy: sorry, I missed the steps where you ended up in the table processing code.
16:06 masak ShimmerFairy: I thought you were talking about lists.
16:06 ShimmerFairy masak: separate issue. The way I write tables isn't being handled by rakudo correctly
16:06 masak oh, ok.
16:06 ShimmerFairy sample code: https://gist.github.com/lue/3256e0cc1b934e7cd513
16:06 masak then please go ahead and file a rakudobug.
16:07 masak the thing about =item etc. sounds like it rather belongs at https://github.com/perl6/specs/issues
16:08 ShimmerFairy masak: yeah. Though now I'm kinda itching to run with "make an updated S26". Just for fun though, no guarantees it would amount to anything :)
16:09 masak I think any such venture would have to be an iterative thing. not a big "second system" thing.
16:09 masak but I agree it's worth doing.
16:09 ShimmerFairy masak: sure, I wouldn't pretend I've come up with the perfect solution :)
16:11 masak actually, I take that back. maybe some parts of Pod as it stands today needs big jumps to improve instead of small ones.
16:11 gfldex joined #perl6
16:11 masak but I still doubt it'd be One Big Jump.
16:16 timotimo masak: try CONTROL?
16:18 timotimo m: { warn "oh noes!"; CONTROL { say "control called" } }
16:18 camelia rakudo-moar 71b0f0: OUTPUT«control called␤oh noes!  in block <unit> at /tmp/pqdzIwV2ju:1␤␤Trying to unwind over wrong handler␤»
16:19 masak timotimo: oh, good point.
16:19 masak timotimo++
16:21 masak yep, that seems to do it. \o/
16:21 timotimo yays
16:26 * masak discovers that there were already tests *in that file* using CONTROL
16:27 timotimo :)
16:32 dnmfarrell joined #perl6
16:34 masak ok, I have a fix for the .indent thing, too.
16:34 timotimo i didn't know .indent was broken :S
16:34 masak not broken per se.
16:35 timotimo bugged, then :)
16:35 masak I just felt it was a bit harsh on ws-only lines.
16:35 timotimo oh
16:35 masak this affects things like heredocs.
16:35 timotimo right, it should not warn if a line is only whitespace (and the wrong amount, at that)
16:35 masak right.
16:35 masak too little, to be specific.
16:35 timotimo aye
16:35 masak there's prior art: vim de-indentation.
16:36 timotimo if there's too much, it ought to show up in the result of the heredoc, IMO
16:36 masak anyway, I have it working, but I want to run through the spectests before committing.
16:36 masak timotimo: yes, of course.
16:36 timotimo we are in violent agreement, then :)
16:36 masak so I'll push later tonight.
16:36 masak now, detrain &
16:38 amaliapomian joined #perl6
16:39 xfix joined #perl6
16:45 TimToady I am coming to the conclusion that having a method like .for that shares its name with a statement_control keyword is a probably a mistake, for a number of reasons
16:45 timotimo mistake.for
16:45 moritz .oO( call it .each )
16:46 TimToady it prevents having a listop 'for', and it induces a hobgoblin desire to have a "map" statement control, which doesn't work several ways
16:46 timotimo don't we already have an .each that's supposed to work a bit like a junction?
16:46 moritz timotimo: I think so, yes
16:46 TimToady yes, but that's different
16:46 timotimo it can't be different if .each is both .for and .each :)
16:46 TimToady no, I'd rename it to .flatmpa
16:46 TimToady .flatmap
16:47 moritz flatmpa sounds like a video codec
16:47 TimToady then for the statement control corresponding to .map, use some other topicalizer, such as "over", which works for both statement control and statement modifier
16:48 TimToady "mapping" would also work, but seems a bit clunkier
16:49 TimToady "over" also has vague connotations of riding up over the mess down below
16:50 TimToady the other alternative is to use some atrocity like 'mfor'
16:51 TimToady which would have a bit of mnemonic value, at the expense of ugliness
16:52 TimToady it's kind of a pity that 'over' doesn't start with 'm'...
16:52 TimToady maybe I should look at all the m-words in the dictionary...
16:53 timotimo meh ... meep ... moo ...
16:53 TimToady mangle...mung...
16:53 timotimo meow
16:55 TimToady maul...
16:55 TimToady these all seem too side-effecty...
16:56 timotimo mash
16:57 TimToady many reads more like a junction
16:57 timotimo indeed
16:58 TimToady maraud :)
16:58 timotimo marinade
16:58 TimToady maps, hmm
16:58 * timotimo stops playing word-association (or word-disassociation)
16:59 TimToady *.foo maps @list
16:59 TimToady possible
16:59 TimToady maps @list -> { ... } is a little odder
17:00 TimToady and only works as a verb; as a noun, reads like there are multiple maps, instead of one (or gets read as 'mappings' perhaps)
17:01 TimToady massage :)
17:01 TimToady works on the control, but not the modifier...
17:02 gfldex why don't you grep '^m' /usr/share/dict/words | less ?
17:02 gfldex there are more then 4000 words to choose from
17:04 TimToady gfldex: what do you think I'm doing?
17:04 TimToady actual command: look m | grep '^m' | grep -v '........' | less
17:05 TimToady (first grep to remove proper nouns)
17:06 gfldex without *nix Perl 6 would not be possible :)
17:06 TimToady another alternative is to steal 'for' for the map equivalent, and come up with something else for flatmap
17:07 TimToady (or force people to write 'for flat', if we want to be mean :)
17:07 TimToady that would tend to confuse anyone coming from a flattening langauge though
17:10 liztormato joined #perl6
17:10 liztormato TimToady: spread ?
17:10 smash joined #perl6
17:10 perlvim joined #perl6
17:10 b2gills I'm less concerned for newcomers than for the Perl 6 experts, that is I want it consistent what ever that entails
17:11 b2gills m: say 'bow ties' ~~ Cool
17:11 camelia rakudo-moar 71b0f0: OUTPUT«True␤»
17:14 TimToady m: say 'unicorns' ~~ Real
17:14 camelia rakudo-moar 71b0f0: OUTPUT«False␤»
17:14 _mg_ joined #perl6
17:17 jepeway joined #perl6
17:17 diana_olhovik joined #perl6
17:23 raydiak morning #perl6
17:27 colomon o/
17:28 TimToady nothing good in the 'm's, alas
17:31 dalek perl6-roast-data: 5bd2683 | coke++ | / (9 files):
17:31 dalek perl6-roast-data: today (automated commit)
17:31 dalek perl6-roast-data: review: https://github.com/coke/perl6​-roast-data/commit/5bd2683eef
17:35 raydiak doesn't help with the problem but it's kinda reassuring when the expert linguist has as much difficulty naming things as I do :)
17:37 diana_olhovik_ joined #perl6
17:41 timotimo the end point of ... doesn't smartmatch?
17:41 timotimo m: "a", { $_ ~ ("a".."z").pick } ... /foo/
17:41 camelia rakudo-moar 71b0f0: OUTPUT«Unhandled exception: Method '!cursor_start' not found for invocant of class 'Str'␤   at <unknown>:1  (/home/camelia/rakudo-inst-2/share/nqp/l​ib/Perl6/BOOTSTRAP.moarvm::4294967295)␤ from <unknown>:1  (<ephemeral file>::31)␤ from src/gen/m-CORE.setting…»
17:41 b2gills In Promise.pm I noticed there are a few `$!status == Broken | Kept`, I wonder if they could/should be written as `?$!status`
17:41 FROGGS joined #perl6
17:42 moritz b2gills: or $!status != Planned
17:43 timotimo right; == doesn't junction-unfold at the moment :S
17:43 moritz which might be a bit more self-documenting than !?$status
17:43 timotimo i may need a tiny bit of jnthntime to make that work properly again
17:45 timotimo m: "a", { $_ ~ ("a".."z").pick } ... * ~~ /foo/
17:45 timotimo m: say "a", { $_ ~ ("a".."z").pick } ... * ~~ /foo/
17:45 camelia rakudo-moar 71b0f0: OUTPUT«(timeout)»
17:45 camelia rakudo-moar 71b0f0: OUTPUT«a av avt avtt avttl avttlx avttlxf avttlxfs avttlxfse avttlxfsec avttlxfsecu avttlxfsecux avttlxfsecuxj avttlxfsecuxjc avttlxfsecuxjch avttlxfsecuxjchs avttlxfsecuxjchsb avttlxfsecuxjchsbe avttlxfsecuxjchsbeu avttlxfsecuxjchsbeuh avttlxfsecuxjchsbeuhe avtt…»
17:55 TimToady timotimo: I have a fix, I think
17:57 TimToady we need a test too
17:57 TimToady dunno if this rates an RT
17:57 timotimo aye, but i'll be AFK for a bit first :S
17:57 timotimo (ideally it would be a test that doesn't tend to timeout camelia when run :P)
17:57 [Coke] getting several failures on all backends in S01-perl-5-integration/*
17:58 FROGGS hmmm, I don't
17:59 FROGGS maybe the Inline::Perl5 support detection is wonky on OSX?
17:59 TimToady m: say "fom" ... /foo/
17:59 camelia rakudo-moar 71b0f0: OUTPUT«Method '!cursor_start' not found for invocant of class 'Str'␤  in block  at src/gen/m-CORE.setting:22268␤  in block  at src/gen/m-CORE.setting:10164␤  in block  at src/gen/m-CORE.setting:10168␤  in method reify at src/gen/m-CORE.setting:10195␤  i…»
17:59 [Coke] Shouldn't even be running the tests, I don't install Inline::Perl5
17:59 [Coke] I know I fixed that bug once...
18:00 liztormato joined #perl6
18:02 liztormato [Coke]: fwiw, no problems with skipping Inline::Perl5 tests on OSX
18:03 [Coke] yah, this is on p6c.
18:03 [Coke] er, hack.
18:03 [Coke] OH.
18:04 [Coke] because t/harness was updated, not t/spec/test_summary
18:04 [Coke] so, on me. I'll fix it for the hackathon.
18:04 timotimo p6: say "hi"
18:04 camelia rakudo-moar 71b0f0: OUTPUT«hi␤»
18:05 liztormato left #perl6
18:09 Peter_R joined #perl6
18:09 dalek rakudo/nom: e6cdd26 | TimToady++ | src/core/operators.pm:
18:09 dalek rakudo/nom: in ... don't call Regex as a closure match
18:09 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/e6cdd26d78
18:09 dalek roast: b6a281d | TimToady++ | S03-sequence/misc.t:
18:09 dalek roast: test for /foo/ endpoint
18:09 dalek roast: review: https://github.com/perl6/roast/commit/b6a281de9b
18:10 TimToady timotimo++ for finding easy bugs to fix :)
18:14 xfix_ joined #perl6
18:24 dwarring joined #perl6
18:35 dwarring howdy
18:35 FROGGS hi dwarring
18:35 dwarring r: sub s(:@p) { say ("x",@p).join("|")}; s(:p("a", "b")); s(:p())
18:35 camelia rakudo-{moar,jvm} 71b0f0: OUTPUT«x|a b␤x|␤»
18:35 dwarring gidday FROGGS
18:36 tinyblak joined #perl6
18:36 dwarring ^^ @p stopped flattening over the last few days
18:36 moritz .join did
18:36 yoleaux moritz: Sorry, this command is admin-only.
18:37 dwarring moritz: ah ok
18:37 moritz dwarring: use join('|', "x", @p) or ("x", @p).flat.join('|')
18:37 dwarring moritz: thanks, will fix in CSS::Module
18:38 moritz m: say (1, <a b c>).join('|');
18:38 camelia rakudo-moar 71b0f0: OUTPUT«1|a b c␤»
18:39 dalek doc: 9c384b6 | moritz++ | lib/Type/List.pod:
18:39 dalek doc: List.join: mention that the method form does not flatten
18:39 dalek doc: review: https://github.com/perl6/doc/commit/9c384b6f58
18:43 TimToady I think I'm coming to the conclusion that, in the overall scheme of things, it would be better if for does not flatten
18:45 mohij joined #perl6
18:45 TimToady and if we have a flattening for, that one should be slightly dehuffmanized, though 'for flat ...' is a bit too much dehuff
18:45 moritz RabidGravy: I'm not too happy with the concurrency docs introducing low-level stuff first, when we want to encourage folks to use the composable, high-level features whenever possible
18:46 moritz TimToady: I missed most of the IRC discussions so far; have you considered if prefix:<|> can be abused as a flattening operator?
18:47 TimToady it's a bit limited, compared to 'flat'
18:47 TimToady and doesn't actually work in non-arg lists at the moment
18:47 moritz RabidGravy: also the concurrency docs shouldn't try to duplicate the API docs for the various types
18:48 RabidGravy moritz, entirely can be re-ordered I just did it in the order it makes sense to me
18:52 TimToady m: say (1, |<a b c>).join('|');
18:52 camelia rakudo-moar e6cdd2: OUTPUT«5===SORRY!5=== Error while compiling /tmp/kFfFLhhWz3␤Arg-flattening | is only valid in an argument list␤at /tmp/kFfFLhhWz3:1␤------> 3say (1, |7⏏5<a b c>).join('|');␤»
18:52 TimToady for instance, it rejects it there
18:54 RabidGravy and I'm pretty certain it will bear at least a second pass with better examples but I'll just carry on with what I have right now.
18:54 MARTIMM joined #perl6
18:54 TimToady m: sub postfix:<_>(\list) { list.flat }; say (1, <a b c>)_.join('|');
18:54 camelia rakudo-moar e6cdd2: OUTPUT«1|a|b|c␤»
18:55 * lizmat nudges timotimo ever so lightly
18:55 timotimo oh yes
18:56 timotimo i was about to play a "round" of disgaea, so the nudging was probably well in order :P
18:58 * raydiak has wondered for some time why prefix:<|> doesn't just do .flat outside of an arg list similar to prefixes @ and % and $ mapping to .list, .hash, and .item
18:58 TimToady .flat is not quite the same, insofar .flat will not successfully insert arguments into an argument list
18:59 TimToady .flat tells a list to lose its inner parens, but it does nothing about the grouping of the list as a whole
19:00 ecocode joined #perl6
19:00 TimToady all functions and methods currently implicitly return a single argument, meaning there are implicit parens around any return
19:01 TimToady if you say "foo bar(), baz()" you are guaranteed to be passing 2 arguments to foo
19:01 TimToady even if bar or baz return a list
19:01 TimToady we're not gonna break that
19:02 TimToady there are only two ways to get around that currently, 1) declare a slurpy sig to bind to, or 2) use prefix:<|>
19:03 TimToady .flat is not good enough
19:03 raydiak agreed it would be a different meaning outside of the arg list, though it would do what people intend in lists usually, I think...e.g. (1, |<a b c>) would work
19:03 raydiak don't want the | for the flatmap though, personally, so I'm off on a tangent anyway
19:04 TimToady essentially it would translate to 'lose the implicit outer parcel'
19:05 lizmat I guess post-GLR, that would be "lose the implicit outer list", right ?
19:05 yqt joined #perl6
19:06 TimToady yes, and it occurs to me that 'for flat' actually won't work, unless for strips the parcelizing/listing around what flat returns
19:07 lizmat .oO( hoping to think outside of the Parcel here )
19:07 [Coke] m: say „old/sold/liquidated module“ # did this ever get impl?
19:07 camelia rakudo-moar e6cdd2: OUTPUT«5===SORRY!5=== Error while compiling /tmp/vJfillxvAf␤Unable to parse expression in low smart double quotes; couldn't find final '”' ␤at /tmp/vJfillxvAf:1␤------> 3idated module“ # did this ever get impl?7⏏5<EOL>␤    expecting any of:…»
19:07 [Coke] . o O (nope)
19:07 dalek doc: 2bbb0e2 | (Jonathan Stowe)++ | lib/Language/concurrency.pod:
19:07 dalek doc: Start with supplies
19:07 dalek doc: review: https://github.com/perl6/doc/commit/2bbb0e26d1
19:07 dalek doc: 33ffe84 | (Jonathan Stowe)++ | lib/Language/concurrency.pod:
19:07 dalek doc: More supply
19:07 dalek doc: review: https://github.com/perl6/doc/commit/33ffe849b0
19:07 dalek doc: 330d4c9 | (Jonathan Stowe)++ | lib/Type/List.pod:
19:07 dalek doc: Merge branch 'master' of github.com:perl6/doc
19:07 dalek doc: review: https://github.com/perl6/doc/commit/330d4c9aa9
19:07 geekosaur looks like it tried?
19:07 TimToady it's just a smop, though having multiple stoppers might be a bit hard with the current design of the nibbler
19:08 TimToady geekosaur: trouble is there are two cultures of final quotes there, split about 50/50
19:09 [Coke] I'm ok if we don't support every combination.
19:09 koo6 joined #perl6
19:09 TimToady if you assume consistency, then you can say that using “ as a closer means you *aren't* using it for an opener, so you shouldn't treat it as nestable quotes
19:10 pmichaud good afternoon, #perl6
19:10 lizmat pmichaud o/
19:11 nwc10 pmichaud: congratulations to your team.
19:11 TimToady m: say ““foo””
19:11 camelia rakudo-moar e6cdd2: OUTPUT«“foo”␤»
19:11 pmichaud nwc10: thanks.  We had an excellent contest but a bit of a disappointing finish (not being selected for playoffs, despite having highest scores in our division)
19:12 TimToady m: say „„foo””
19:12 camelia rakudo-moar e6cdd2: OUTPUT«„foo”␤»
19:12 TimToady anyway, I suspect the other can be made to work as well
19:12 hobbs joined #perl6
19:13 dalek doc: 1b5df49 | moritz++ | lib/Language/concurrency.pod:
19:13 dalek doc: Clean up concurrency docs
19:13 dalek doc:
19:13 dalek doc: 1) move high-level APIs to the top (partially done)
19:13 dalek doc: 2) use less speculative language ("would")
19:13 dalek doc: 3) supply output along with examples
19:13 dalek doc: 4) start with simpler examples
19:13 dalek doc: 5) more links, including to external sources for general topics
19:13 dalek doc: review: https://github.com/perl6/doc/commit/1b5df49b44
19:13 masak pmichaud! \o/
19:13 moritz RabidGravy: ^^ please check if I resolved the conflicts correctly in the commit above
19:15 flussence joined #perl6
19:18 masak "but then what if he knew how I am when I know that I'm not what he thinks that he wants" -- my new favorite line from "Into The Woods"
19:18 masak who*
19:18 RabidGravy moritz, that's great matey, merged fine
19:21 TimToady masak: anapests are not just for limericks :)
19:21 nine I've always found it strangely inconsistent that | can be used to flatten only in argument lists
19:22 TimToady though it could be argued that limericks are really amphibrachs
19:22 dalek doc: 8c07f04 | moritz++ | lib/Language/concurrency.pod:
19:22 dalek doc: More Promise cleanup
19:22 dalek doc: review: https://github.com/perl6/doc/commit/8c07f0433b
19:22 TimToady "flat" is badly overloaded there
19:23 FROGGS like my flat
19:23 TimToady it's a special interpolator right now, and has nothing to do with .flat
19:24 moritz RabidGravy: please write the docs in present tense (for consistency with rest of doc.perl6.org)
19:24 TimToady m: say ((1,2,3),(4,5,6)).flat.perl # note that the outer parens are precisely the ones that .flat does not remove (or if it does, it puts them back :)
19:24 camelia rakudo-moar e6cdd2: OUTPUT«(1, 2, 3, 4, 5, 6)␤»
19:25 TimToady it's the job of | to remove those outer parens for an argument list, and maybe (we hope), when interpolating into any list
19:26 ecocode left #perl6
19:26 TimToady m: say ((1,2,3),|(4,5,6)).perl
19:26 camelia rakudo-moar e6cdd2: OUTPUT«5===SORRY!5=== Error while compiling /tmp/ZF5dC1OqxD␤Arg-flattening | is only valid in an argument list␤at /tmp/ZF5dC1OqxD:1␤------> 3say ((1,2,3),|7⏏5(4,5,6)).perl␤»
19:26 TimToady m: say list((1,2,3),|(4,5,6)).perl
19:26 camelia rakudo-moar e6cdd2: OUTPUT«((1, 2, 3), 4, 5, 6)␤»
19:27 TimToady arguable those should be the same
19:27 dalek doc: 293c2ba | moritz++ | lib/Language/concurrency.pod:
19:27 dalek doc: Concurrency: use present tense
19:27 dalek doc: review: https://github.com/perl6/doc/commit/293c2ba38d
19:28 TimToady m: say list((1,2,3),|((4,5,6))).perl
19:28 camelia rakudo-moar e6cdd2: OUTPUT«((1, 2, 3), 4, 5, 6)␤»
19:28 TimToady m: say list((1,2,3),|(1,(4,5,6))).perl
19:28 camelia rakudo-moar e6cdd2: OUTPUT«((1, 2, 3), 1, (4, 5, 6))␤»
19:29 TimToady m: say list((1,2,3),|((4,5,6),)).perl
19:29 camelia rakudo-moar e6cdd2: OUTPUT«((1, 2, 3), (4, 5, 6))␤»
19:29 TimToady possibly | is being overaggressive stripping two parens there
19:30 dalek rakudo/nom: 735ab5f | lizmat++ | src/Perl6/World.nqp:
19:30 dalek rakudo/nom: Nothing in speculation about Devel::Trace
19:30 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/735ab5fcbc
19:30 masak anapests. I like.
19:32 Rounin joined #perl6
19:32 moritz lizmat++
19:38 telex joined #perl6
19:39 _mg_ joined #perl6
19:39 tinyblak joined #perl6
19:39 dalek rakudo/nom: 85a2654 | lizmat++ | src/Perl6/World.nqp:
19:39 dalek rakudo/nom: Check longnameness before extra parameterness
19:39 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/85a26541d0
19:46 dalek doc: ad4585c | (Steve Mynott)++ | lib/Language/ (3 files):
19:46 dalek doc: typos
19:46 dalek doc: review: https://github.com/perl6/doc/commit/ad4585cd7b
19:46 [Coke] TimToady: you want a ticket for the weird quote combo?
19:47 [Coke] (with a test?)
19:47 labster m: use MONKEY_TYPING;
19:47 camelia rakudo-moar e6cdd2: ( no output )
19:47 labster shouldn't that have a warning?
19:48 dalek rakudo/nom: 7f49dd6 | lizmat++ | src/Perl6/World.nqp:
19:48 dalek rakudo/nom: Simplify pragma handling further
19:48 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/7f49dd64a8
19:48 TimToady [Coke]: sure
19:48 labster A deprecation warning for the underscore form of MONKEY_TYPING
19:48 lizmat labster: well, that's compile time: the deprecated machinery isn't even there yet
19:48 lizmat well, that's not true
19:49 lizmat hmmm...
19:50 TimToady or maybe we could steal "foreach" back for the flattening, p5ish one...
19:50 lizmat that feels ok for someone coming from p5  :-)
19:50 TimToady and flattening has more 'eaches' than non-flattening does :)
19:50 * PerlJam never uses "foreach" in P5 anymore.
19:51 TimToady funny thing is how many other languages have borrowed 'foreach'...
19:51 lizmat fwiw, I used it all the time, because it felt more natural to me
19:52 * TimToady always kinda hated it :)
19:52 lizmat "for" always felt a bit like "given" to me
19:52 lizmat I guess being ESL makes a difference
19:52 TimToady well, the loopy aspects came from C, not English
19:53 TimToady not surprisingly, if I just change statement_control:<for> to have map semantics, the compiler blows up trying to compile Test.pm
19:53 TimToady so the compiler is assuming flattening somewhere...
19:54 * lizmat feels a GLR bootstrap issue starting to form
19:54 TimToady I doubt it's that deep
19:55 TimToady overall GLR is simplifying things, which tends to help with bootstraps
19:55 TimToady lunch &
20:00 masak I know some people who make the destinction (either conceptually or on the keyword level) that `for` is C-style and `foreach` is new-style implicit/iterator.
20:00 PerlJam those people are slightly crazy  (or I am ;)
20:01 colomon masak: pretty sure that’s how I thought of it for a long time.
20:02 PerlJam I actually probably thought the same back in the P4 days.  But that only lasted until I learned that 'for' and 'foreach' were synonymous
20:03 RabidGravy I've done a fair amount of 4gl and dbms procedure language where foreach is typically "iterate over some set of records"
20:04 RabidGravy but for is less typing so I'm cool with it
20:05 * PerlJam makes a 'forache' operator for his list of problems.
20:08 masak PerlJam: you're right, there's no real basis to the distinction.
20:09 masak I'm curious, though. was the `foreach` form added together with the ability to loop over elements without an explicit index?
20:09 masak in the Perl 5 lineage, I mean.
20:12 PerlJam "for" and "foreach" have existed relatively unchanged since P4 to my knowledge.
20:14 masak right.
20:14 aborazmeh joined #perl6
20:14 aborazmeh joined #perl6
20:14 masak I have no basis for my guess, except that it *sounds* like `foreach` was invented because it goes well with the rest of the implicit/iteration loop header.
20:15 masak `foreach my $element (@stuff) { ... }`
20:15 masak that "each" there kinda lifts the phrase a little.
20:15 masak (totally unnecessary in Perl 6, of course, since the element goes with the block instead)
20:16 timotimo i think p4 (or 5) style foreach looks somewhat ugly
20:16 alini joined #perl6
20:17 masak sure, but that's mostly orthogonal.
20:17 masak and arguably there's a semantic ugliness that trumps the visual one.
20:18 timotimo i don't know anything about its semantics
20:18 PerlJam masak: what semantic ugliness exactly?
20:19 masak the lexical `my $element` -- what's its scope?
20:19 PerlJam ok
20:20 masak it's declared outside of the block, but is scoped to inside of it.
20:21 FROGGS like: -> $foo { ... }
20:21 FROGGS but the thing you are interating over is at least not in between
20:21 FROGGS iterating*
20:22 timotimo you mean like in "for foo in list: ... " like python does it?
20:24 masak Perl 6 unifies block parameters and iteration variables in a way that Perl 5 doesn't (nor Python).
20:25 PerlJam yeah, which means your aesthetics for Perl 5 are informed by Perl 6 :)
20:26 masak that's an unfair counterargument -- just 'cus Perl 6 got it right :P
20:26 masak actually, I think when I said "semantic ugliness" I was really thinking about `else` blocks.
20:27 masak if you declare a lexical in the `if (...)` expression, it's visible in the `else` block!
20:27 labster Woo, File::Find::Duplicates tests should be unbusted
20:27 FROGGS ohh, nice to know :o)
20:27 masak (and in the `elsif` blocks too, it seems)
20:27 labster that is nice to know
20:28 masak yes, but it's a hack.
20:28 * PerlJam misses his chance to intentionally misunderstand masak and mention that python is the one with else blocks on foreach loops.  ;)
20:28 masak PerlJam: I teach Python courses just so I can point out how horrible that is.
20:28 DrForr masak: Just saw the note, thanks, rebuilding so I can test :)
20:29 masak DrForr: I feel proud. :) but jnthn++ provided the vital clue.
20:29 DrForr I should have said 'masak++ just saw...' :)
20:29 masak karma is opt-in ;)
20:30 DrForr I'm on other network with karmabots :)
20:31 labster Do we have a karmabot?
20:31 DrForr *networks
20:31 FROGGS labster: we had, ages ago :o)
20:31 labster I remember it, it in long days gone by.
20:31 PerlJam real karma doesn't need a bot :)
20:32 labster Well, the entire universe is a simulation, so we incremented a counter we just can't see :)
20:32 DrForr There's a hotdog stand joke in there somewhere.
20:32 beastd joined #perl6
20:32 * labster is forbidden from getting karma with a bot on Friday
20:33 DrForr Diskordian? (tyop intentional)
20:34 labster Probably.  Cabal Local #5.
20:34 * timotimo is a discordian pope
20:35 DrForr Yep, that fixes the readline parameter bug.
20:35 dalek nqp: 5e9f7b8 | FROGGS++ | src/ (7 files):
20:35 dalek nqp: implement unicode property pairs with explicit arguments
20:35 dalek nqp:
20:35 dalek nqp: Like in: "¼" ~~ /<:NumericValue(0 ^..^ 0)/ or "foo" ~~ /<:Block(/Latin/)>+/
20:35 dalek nqp: review: https://github.com/perl6/nqp/commit/5e9f7b8c56
20:35 labster @people».pope(True)
20:36 masak DrForr: \o/
20:36 masak DrForr: if I ever give a 2048 talk about rakudobugs, I'll probably use that one as an example.
20:36 labster Can someone run the File::Spec::Case tests for me?  I don't see a bug on my end, but smoke.perl6.org says its failing.
20:36 beastd|2 joined #perl6
20:36 alini joined #perl6
20:36 timotimo FROGGS++
20:36 DrForr w00t, I finally found an interesting bug :)
20:37 dalek rakudo/nom: b6b180b | FROGGS++ | / (2 files):
20:37 dalek rakudo/nom: bump nqp rev for uniprop improvement
20:37 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/b6b180bcf9
20:37 TimToady hah, at make time there was only one 'for' that assumes flat and blows up compiling Test.pm; at test time there are more assumptions, of course
20:37 timotimo FROGGS: how useful is 0 ^..^ 0 actually? %)
20:37 TimToady I just used ^..^, but not with 0s
20:38 labster .oO ( the bat operator )
20:38 dalek roast: 0aae938 | FROGGS++ | S05-mass/properties-script.t:
20:38 dalek roast: run unicode property pair tests on moar
20:38 dalek roast: review: https://github.com/perl6/roast/commit/0aae93882d
20:38 FROGGS eww
20:38 FROGGS typo >.<
20:38 jercos the operator gotham deserves, but not the one it needs right now.
20:39 timotimo 0 >..< 1
20:39 TimToady I used it in permutations, in fact, to replace a grep none($i) ^$n with 0 ..^ $i ^..^ $n
20:40 labster Or, alternatively, can someone point me to the repo that smoke.perl6.org uses, so I can add test failure reporting to the code?
20:40 TimToady or rather, 0 ..^ $i, $i ^..^ $n
20:40 timotimo i was about to say: .. can chain??
20:40 masak oh, good thing I ran the spectests on this .indent tweak -- it breaks some heredocs tests, it seems.
20:40 FROGGS m: say "f½シシ" ~~ / <:Block(*.say)>+ /' # it is also a nice way to inspect strings
20:40 camelia rakudo-moar 7f49dd: OUTPUT«5===SORRY!5=== Error while compiling /tmp/Bwgm8V_J96␤Unable to parse expression in metachar:sym<assert>; couldn't find final '>' ␤at /tmp/Bwgm8V_J96:1␤------> 3say "f½シシ" ~~ / <:Block7⏏5(*.say)>+ /' # it is also a nice way to ␤    ex…»
20:40 FROGGS that will look cute it a bit
20:42 masak clearly ^..^ is the cute neko operator. don't know where you see a bat.
20:43 geekosaur if it had whiskers it'd be a =^..^= cat
20:43 FROGGS labster: are you talking about testers.perl6.org?
20:43 * TimToady thinks it's a kitsune
20:43 FROGGS ahh no
20:43 FROGGS labster: that's colomon++'s box
20:44 colomon actually it’s hackp6c.org
20:44 colomon err, hack.p6c.org
20:46 labster FROGGS ah, well, that works better than smoke.perl6.org
20:46 FROGGS colomon: let's say it is your *black* box :o)
20:47 FROGGS labster: are hashed involed? http://testers.perl6.org/reports/40623.html
20:48 labster Wrong module FROGGS, I think I just fixed that one :)  No hashes, just OS ordering being different.
20:48 FROGGS ahh, heh
20:53 rurban joined #perl6
20:53 FROGGS m: say "f½シシ" ~~ / <:Block(*.say)>+ /
20:53 camelia rakudo-moar b6b180: OUTPUT«Basic Latin␤Latin-1 Supplement␤Katakana␤Halfwidth and Fullwidth Forms␤「f½シシ」␤»
20:56 labster Nice! FROGGS++
20:57 labster Apparently checking that two things are both true is not a good use for is() and isnt(), because smartmatching against false.
20:59 tinyblak joined #perl6
21:00 masak 'night, #perl6
21:02 labster night masak
21:02 FROGGS m: say (0x2000..0x2500)».chr.join('') ~~ m:g/<:NumericValue({+$_ ~~ 0^..*})>+/
21:02 camelia rakudo-moar b6b180: OUTPUT«「⁴⁵⁶⁷⁸⁹」 「₁₂₃₄₅₆₇₈₉」 「⅐⅑⅒⅓⅔⅕⅖⅗⅘⅙⅚⅛⅜⅝⅞⅟ⅠⅡⅢⅣⅤⅥⅦⅧⅨⅩ​ⅪⅫⅬⅭⅮⅯⅰⅱⅲⅳⅴⅵⅶⅷⅸⅹⅺⅻⅼⅽⅾⅿↀↁↂ」 「ↅↆↇↈ」 「①②③④⑤…»
21:02 FROGGS that's even quite fast
21:03 FROGGS m: say (0x2000..0x2500)».chr.join('') ~~ m:g/<:NumericValue({+$_ > 0})>+/
21:03 camelia rakudo-moar b6b180: OUTPUT«「⁴⁵⁶⁷⁸⁹」 「₁₂₃₄₅₆₇₈₉」 「⅐⅑⅒⅓⅔⅕⅖⅗⅘⅙⅚⅛⅜⅝⅞⅟ⅠⅡⅢⅣⅤⅥⅦⅧⅨⅩ​ⅪⅫⅬⅭⅮⅯⅰⅱⅲⅳⅴⅵⅶⅷⅸⅹⅺⅻⅼⅽⅾⅿↀↁↂ」 「ↅↆↇↈ」 「①②③④⑤…»
21:04 raiph joined #perl6
21:04 FROGGS m: say (0..0xFFF0)».chr.join('') ~~ m:g/<:NumericValue({+$_ > 0})>+/
21:04 camelia rakudo-moar b6b180: OUTPUT«「123456789」 「²³」 「¹」 「¼½¾」 「١٢٣٤٥٦٧٨٩」 「۱۲۳۴۵۶۷۸۹」 「߁߂߃߄߅߆߇߈߉」 「१२३४५६७८९」 「১২৩৪৫৬৭৮৯」 「৴৵৶৷৸৹」 「੧੨੩੪੫੬੭੮੯」 「…»
21:05 FROGGS timotimo: run that in your shell... that makes for a good one-liner for your blog
21:05 FROGGS gnight
21:06 timotimo <3
21:09 lizmat joined #perl6
21:10 cognominal joined #perl6
21:11 vendethiel joined #perl6
21:13 itz m: try {  @files = dir("xxx"); CATCH{}}
21:13 camelia rakudo-moar b6b180: OUTPUT«5===SORRY!5=== Error while compiling /tmp/hFo8CVfs2J␤Variable '@files' is not declared␤at /tmp/hFo8CVfs2J:1␤------> 3try {  @files7⏏5 = dir("xxx"); CATCH{}}␤    expecting any of:␤        postfix␤»
21:13 dalek doc: 4c6cfae | (Jonathan Stowe)++ | lib/Language/concurrency.pod:
21:13 dalek doc: fmt
21:13 dalek doc: review: https://github.com/perl6/doc/commit/4c6cfaee98
21:13 dalek doc: b005b2c | (Jonathan Stowe)++ | lib/Language/concurrency.pod:
21:13 dalek doc: Merge branch 'master' of github.com:perl6/doc
21:13 dalek doc: review: https://github.com/perl6/doc/commit/b005b2c531
21:13 dalek doc: c243ac1 | (Jonathan Stowe)++ | lib/Language/concurrency.pod:
21:13 dalek doc: Add Promise.vow
21:13 dalek doc: review: https://github.com/perl6/doc/commit/c243ac1e34
21:13 dalek doc: 17b3fbc | (Jonathan Stowe)++ | lib/Language/ (3 files):
21:13 dalek doc: Merge branch 'master' of github.com:perl6/doc
21:13 dalek doc:
21:13 dalek doc: Conflicts:
21:13 dalek doc: lib/Language/concurrency.pod
21:13 dalek doc: review: https://github.com/perl6/doc/commit/17b3fbcb2f
21:13 itz m: try { my  @files = dir("xxx"); CATCH{}}
21:13 camelia rakudo-moar b6b180: OUTPUT«Failed to get the directory contents of '/home/camelia/xxx': chdir failed: Unknown system error␤  in method dir at src/gen/m-CORE.setting:18982␤  in sub dir at src/gen/m-CORE.setting:19301␤  in block <unit> at /tmp/u0g2A89sx3:1␤␤»
21:14 labster Rakudo doesn't want anyone to catch you looking in your XXX directory ^
21:15 itz :)
21:17 colomon labster: sorry for the slow response
21:18 colomon labster: this is what I get on hack: https://gist.github.com/co​lomon/421717d4832bc36f5681
21:25 itz star-m: try { my  @files = dir("xxx"); CATCH{}}
21:25 camelia star-m 2015.03: ( no output )
21:27 itz j: try { my  @files = dir("xxx"); CATCH{}}
21:27 camelia rakudo-jvm b6b180: OUTPUT«Failed to get the directory contents of '/home/camelia/xxx': nqp::opendir: unable to get a DirectoryStream␤  in method dir at gen/jvm/CORE.setting:18742␤  in sub dir at gen/jvm/CORE.setting:19068␤  in block <unit> at /tmp/Q6aT0Ya5rC:1␤␤»
21:29 * lizmat has messed enough with the World and goes to bed
21:37 * raydiak guesses this has to do with try being fixed to enable 'use fatal' as designed
21:37 itz the new behaviour is correct then>
21:37 raydiak though I could be way off, b/c it seems to have more to do with the presence of the CATCH
21:38 raydiak well no I don't think it's supposed to be fatal *ourside* the try
21:38 raydiak but idk
21:38 raydiak m: try { dir "foo" }
21:38 camelia rakudo-moar b6b180: ( no output )
21:38 raydiak m: try { dir "foo"; CATCH {} }
21:38 camelia rakudo-moar b6b180: OUTPUT«Failed to get the directory contents of '/home/camelia/foo': chdir failed: Unknown system error␤  in method dir at src/gen/m-CORE.setting:18982␤  in sub dir at src/gen/m-CORE.setting:19301␤  in block <unit> at /tmp/asyZ2mNqbB:1␤␤»
21:38 raydiak I think that change or something affected by it is wrongish :)
21:39 itz differently right!
21:40 raydiak yeah that too!
21:41 raydiak m: try { dir "foo"; CATCH { say "UH OH" } }
21:41 camelia rakudo-moar b6b180: OUTPUT«UH OH␤Failed to get the directory contents of '/home/camelia/foo': chdir failed: Unknown system error␤  in method dir at src/gen/m-CORE.setting:18982␤  in sub dir at src/gen/m-CORE.setting:19301␤  in block <unit> at /tmp/VgIhhxpin6:1␤␤»
21:42 raydiak m: CATCH { say "UH OH" }; try dir "foo";
21:42 camelia rakudo-moar b6b180: ( no output )
21:43 raydiak m: CATCH { say "UH OH" }; try say dir "foo";
21:43 camelia rakudo-moar b6b180: ( no output )
21:43 raydiak m: CATCH { say "UH OH" }; say try dir "foo";
21:43 camelia rakudo-moar b6b180: OUTPUT«Nil␤»
21:44 raydiak note the lack of CATCH running at all when it's not in a try...
21:44 zeleiadi joined #perl6
21:44 raydiak oh wait that's just me being confused as usual :)
21:44 raydiak m: CATCH { say "UH OH" }; say dir "foo";
21:44 camelia rakudo-moar b6b180: OUTPUT«UH OH␤Failed to get the directory contents of '/home/camelia/foo': chdir failed: Unknown system error␤  in method dir at src/gen/m-CORE.setting:18982␤  in sub dir at src/gen/m-CORE.setting:19301␤  in block <unit> at /tmp/wmspuLMV6N:1␤␤»
21:46 raydiak m: CATCH { say "UH OH" }; dir "foo";
21:46 camelia rakudo-moar b6b180: OUTPUT«Unhandled exception: Failed to get the directory contents of '/home/camelia/foo': chdir failed: Unknown system error␤   at <unknown>:1  (/home/camelia/rakudo-inst-2/share/perl6/run​time/CORE.setting.moarvm:throw:4294967295)␤ from src/gen/m-CORE.setting:…»
21:48 raydiak guess that makes sense, CATCH only runs on fatal errors, not soft fails
21:50 dnmfarrell joined #perl6
21:53 dnmfarrell Ok I just pushed a new version of Pod::Perl5, AFAIK it parses 100% of Perl 5 pod, both inline and standalone docs. Let me know if you find any bugs :)
21:53 fhelmberger joined #perl6
21:56 raydiak itz: I think we were just using it wrong...S04 says a CATCH is like a given block, and if none of the switch cases match the failure (in $_), then it gets thrown...and "To ignore all unhandled exceptions, use an empty default case."
21:57 raydiak m: try { CATCH { default {} }; dir "foo" }
21:57 camelia rakudo-moar b6b180: ( no output )
21:57 raydiak m: { CATCH { default {} }; dir "foo" }
21:57 camelia rakudo-moar b6b180: OUTPUT«Unhandled exception: Failed to get the directory contents of '/home/camelia/foo': chdir failed: Unknown system error␤   at <unknown>:1  (/home/camelia/rakudo-inst-2/share/perl6/run​time/CORE.setting.moarvm:throw:4294967295)␤ from src/gen/m-CORE.setting:…»
21:57 raydiak m: { use fatal; CATCH { default {} }; dir "foo" }
21:57 camelia rakudo-moar b6b180: ( no output )
21:59 raydiak so an empty CATCH catches nothing, not everything :)
22:01 raydiak star-m: my @files = dir "foo"
22:01 camelia star-m 2015.03: ( no output )
22:02 raydiak m: my @files = dir "foo"
22:02 camelia rakudo-moar b6b180: ( no output )
22:02 raydiak m: my @files = dir "foo"; say @files
22:02 camelia rakudo-moar b6b180: OUTPUT«Failed to get the directory contents of '/home/camelia/foo': chdir failed: Unknown system error␤  in method dir at src/gen/m-CORE.setting:18982␤  in sub dir at src/gen/m-CORE.setting:19301␤  in block <unit> at /tmp/HzX6kRrX2F:1␤␤»
22:05 tony-o are there logs for smoke.perl6.org anywhere?
22:10 lucasb joined #perl6
22:14 labster tony-o: no, but there are logs on testers.perl6.org
22:22 vendethiel joined #perl6
22:40 newbie joined #perl6
22:50 vendethiel joined #perl6
22:52 skids joined #perl6
23:04 rmgk_ joined #perl6
23:04 colomon SpaceX rocket is going up…
23:04 adu joined #perl6
23:05 jdv79 are they attempting landing again?
23:07 jdv79 no so thats not fun
23:13 BenGoldberg joined #perl6
23:35 lucasb m: class A { method foo() { 42 } }; say A.foo(:abc)
23:35 camelia rakudo-moar b6b180: OUTPUT«42␤»
23:35 lucasb m: sub foo() { 42 }; say foo(:abc)
23:35 camelia rakudo-moar b6b180: OUTPUT«Unexpected named parameter 'abc' passed␤  in sub foo at /tmp/PDK4fY4LEy:1␤  in block <unit> at /tmp/PDK4fY4LEy:1␤␤»
23:36 lucasb ^^ Subroutines don't like unexpected named parameters, but it's ok to pass them to methods?
23:37 Zoffix joined #perl6
23:38 lucasb m: my @a = 1; say @a xx 10 :foo
23:38 camelia rakudo-moar b6b180: OUTPUT«Unexpected named parameter 'thunked' passed␤  in sub infix:<xx> at src/gen/m-CORE.setting:10946␤  in block <unit> at /tmp/WlIg6B_txF:1␤␤»
23:38 lucasb ^^ I was trying to understand why ":foo" became ":thunked" :)
23:41 lucasb m: my @a = () xx *; say @a.elems
23:41 camelia rakudo-moar b6b180: OUTPUT«Inf␤»
23:42 lucasb m: my @a = () xx *; say @a[^10]
23:42 camelia rakudo-moar b6b180: OUTPUT«(timeout)»
23:44 Zoffix left #perl6

| Channels | #perl6 index | Today | | Search | Google Search | Plain-Text | summary

Perl 6 | Reference Documentation | Rakudo