Perl 6 - the future is here, just unevenly distributed

IRC log for #perl6, 2016-12-28

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:00 Xliff Something like that, except it was actually in usable code.
00:01 notviki Combine the above with sub EXPORT
00:01 samcv notviki, i've fixed the Line Feed one in branch of moar, just running spectest now
00:01 AlexDaniel commit: 2015.12,HEAD my @a[5] = 1, 2, 3, 4; for @a.values <-> $a { $a = 5 }; say @a
00:01 notviki Xliff: https://github.com/zoffixznet/perl6-SP​EC-Func/blob/master/lib/SPEC/Func.pm6
00:01 committable6 AlexDaniel, ¦«2015.12»: [5 5 5 5 5]␤¦«HEAD»: X::TypeCheck::Binding exception produced no message␤  in block <unit> at /tmp/AfCMEECfKW line 1␤ «exit code = 1»
00:01 Xliff So %EXPORT::DEFAULT was defined in sub EXPORT and returned, I think. It bears testing, and I'm not there yet.
00:01 notviki Xliff: except instead of grepping methods you'd grep the stuff from that first link
00:02 Xliff Yeah.
00:02 Xliff Well, we'll see.
00:02 Xliff I have starting point again. Thanks, vikiNotZoffixCollective
00:02 yyy joined #perl6
00:02 notviki m: say +permutations(2000)
00:02 camelia rakudo-moar ca919d: OUTPUT«Cowardly refusing to permutate more than 20 elements, tried 2000␤  in block <unit> at <tmp> line 1␤␤»
00:02 Xliff vikiNotZoffixCollective++   # Especially for all the name mangling I've done.
00:03 notviki committable6: 6.c say +permutations(2000)
00:03 Xliff sub notviki is native is symbol('zoffix') is mangled is export { * }
00:04 committable6 notviki, https://gist.github.com/6cbb​30e0536ec0da842e25887b78e206
00:04 notviki I guess it can be argued if all you ever want is the count, just use a factorial
00:04 AlexDaniel patience is a virtue :)
00:04 samcv m: use Test; ok unimatch("\x300F", "Pe"), "RIGHT WHITE CORNER BRACKET matches Pe";
00:04 camelia rakudo-moar ca919d: OUTPUT«ok 1 - RIGHT WHITE CORNER BRACKET matches Pe␤»
00:04 samcv crap I hate this moarvm bug so much
00:04 notviki And a list of 2432902008176640000 items is huge
00:04 samcv just like random which properties are not going to work
00:05 notviki Oh, I thought 6.c would just do the 2015.12
00:05 AlexDaniel but let's agree that the result is interesting :)
00:06 AlexDaniel how long does it take
00:06 notviki Why is it interesting?
00:06 AlexDaniel committable6: 2016.07.1 say +permutations(2000)
00:06 committable6 AlexDaniel, https://gist.github.com/6072​854b2c8fc7480b5cfc8be64efb15
00:06 samcv :( {"Pe",10} {"Pe",17} in the same unicode database. and jnthn says it uses the one closest to the top
00:06 AlexDaniel because otherwise we wouldn't know that it was working at some point!
00:07 notviki AlexDaniel: well, the answer is 5736 digits in length
00:07 AlexDaniel committable6: 2016.07.1 say +permutations(2000) .chars
00:07 committable6 AlexDaniel, ¦«2016.07.1»: 5736
00:07 notviki (•_•)           ( •_•)>⌐■-■          (⌐■_■)
00:08 AlexDaniel .oO( why glasses? )
00:09 notviki Those are cool shades, bruh
00:09 notviki committable6: 2016.07.1 say +permutations(2000)
00:09 committable6 notviki, https://gist.github.com/ba84​81cb23267f362e1c9f2833da71d1
00:10 notviki Ah, I think earlier versions just didn't have .count-only
00:10 notviki So it's timing out because it's trying to actually generate them all
00:10 AlexDaniel ya
00:10 AlexDaniel m: say Numeric.new.succ
00:10 camelia rakudo-moar ca919d: OUTPUT«MoarVM panic: Memory allocation failed; could not allocate 82944 bytes␤»
00:10 AlexDaniel (old issue)
00:10 AlexDaniel I wonder if there is a ticket for it
00:11 notviki Well, it's very prevalent
00:11 notviki m: Numeric.new + 42
00:11 camelia rakudo-moar ca919d: OUTPUT«WARNINGS for <tmp>:␤Useless use of "+" in expression ".new + 42" in sink context (line 1)␤MoarVM panic: Memory allocation failed; could not allocate 131072 bytes␤»
00:11 notviki m: say Numeric.new * 42
00:11 camelia rakudo-moar ca919d: OUTPUT«MoarVM panic: Memory allocation failed; could not allocate 119536 bytes␤»
00:12 AlexDaniel m: Numeric.new != 0
00:12 notviki Bunch of stuff. I tries to get something sane to work with by coercing it to .Numeric, and gets the same thing back
00:12 camelia rakudo-moar ca919d: OUTPUT«WARNINGS for <tmp>:␤Useless use of "!=" in expression ".new != 0" in sink context (line 1)␤MoarVM panic: Memory allocation failed; could not allocate 131072 bytes␤»
00:13 notviki or rather, it doesn't get anything back, it keeps recursing, between Bridge I think and Numeric and until it runs out memory6
00:14 [Coke] samcv++
00:14 yoleaux 23 Dec 2016 17:07Z <notviki> [Coke]: are you sure your new fuzzy search is working? I tried searching "trait-mod" and trait_mod does not show up. This is BEFORE I made the changes you'll see I have made by the time you read this, so I doubt it's me breaking anything...
00:14 yoleaux 23 Dec 2016 17:34Z <notviki> [Coke]: FWIW "var OK_distance = Math.min(max_distance, len -1);" is useless since the conditional above it guarantees len is > 2 so it won't be less than max_distance there. Dunno if this helps you debug whether the fuzzy search works
00:14 yoleaux 23 Dec 2016 17:39Z <notviki> [Coke]: oh, I guess len can be == 2 and then len -1 is 1.... never mind :)
00:14 AlexDaniel m: :0(12345)
00:14 camelia rakudo-moar ca919d: OUTPUT«This call only converts base-0 strings to numbers; value 12345 is of type Int, so cannot be converted!␤  in block <unit> at <tmp> line 1␤␤»
00:14 AlexDaniel ya, base-0
00:14 tailgate Can I express if $a between 1 and 4 in a particularly perl6 way, or is the obvious way the way to go?
00:14 samcv [Coke], RE which thing I said?
00:14 AlexDaniel tailgate: $a ~~ 1..4 ?
00:15 AlexDaniel tailgate: 1 <= $a <= 4 ?
00:15 AlexDaniel tailgate: which one of these is obvious? :)
00:15 tailgate the latter is the obvious way, the former is the perl6 way. Interesting. I need to read how smartmatch works
00:16 AlexDaniel I see no problem with 1 <= $a <= 4, looks perl6-ish enough
00:16 kyan joined #perl6
00:17 AlexDaniel commit: 2015.12,HEAD say 1.1e308
00:17 committable6 AlexDaniel, ¦«2015.12»: Inf␤¦«HEAD»: 1.1e+308
00:17 AlexDaniel interesting
00:17 notviki tailgate: umm... 1 <= $a <= 4 is also Perl 6 way, and faster too
00:18 notviki That was a bug I fixed.
00:18 notviki Nice one too
00:19 notviki bisectable6: say 1.1e308
00:19 bisectable6 notviki, Bisecting by output (old=2015.12 new=ca919d9) because on both starting points the exit code is 0
00:19 bisectable6 notviki, bisect log: https://gist.github.com/9ab2​9ae7a7c6185d9861884a5cb3ec87
00:19 bisectable6 notviki, (2016-11-08) https://github.com/rakudo/rakudo/commit/​729d7e34124827a4e0b772b049be95cf911dd7cf
00:19 AlexDaniel haha, that diff
00:19 notviki Ah now I remember what it was :)
00:19 [Coke] samcv: your work on unicode stuff. thanks.
00:19 Actualeyes joined #perl6
00:20 samcv you're welcome :) what do you think about the "\c[Whatever]" should it match unicode 1 names, or just the official alias names
00:20 [Coke] notviki: search for "trait-mod (declarator)"
00:20 samcv which are the same except without the (LF) after it.
00:20 facetious joined #perl6
00:21 [Coke] samcv: I'm not an expert, but the official aliases seems righter.
00:21 samcv yeah
00:21 notviki AlexDaniel: a better diff is for the .flat bug I did... It's just deleting a huge chunk of code, with zero additions :)
00:21 samcv i don't see anybody using "\c[LINE FEED (LF)]" like.. ever
00:21 notviki (I had to re-add it later due to lost performance, but still...)
00:21 samcv and just LINE FEED is already in roast
00:21 samcv as is \c[LF] (also an official unicode alias)
00:22 [Coke] notviki: the problem is that the fuzzy search isn't a partial search. it's fuzzy on the whole thing.
00:22 notviki Oh not that huge: https://github.com/rakudo/rakudo/commit/​61a18c064695cfa16f31187abed62d1fe4e2cb5e
00:22 [Coke] so, it works, but not ideally. Please open a ticket in docs for the desired search improvements.
00:22 notviki Ah, ok, I get it now
00:22 [Coke] (and I'll try to make that work and also not break any of the other crap.)
00:22 Vasyl joined #perl6
00:23 * [Coke] feels like he should have done a lot more perl 6 this week!
00:23 * [Coke] has to go back to $DAYJOB tomorrow.
00:29 * notviki too
00:29 notviki And I butchered my sleep cycle... woke up a 1pm
00:30 AlexDaniel m: my int @a = ^Inf
00:30 camelia rakudo-moar ca919d: ( no output )
00:30 AlexDaniel m: my int @a = ^Inf; say @a
00:30 camelia rakudo-moar ca919d: OUTPUT«␤»
00:30 AlexDaniel like… did it just eat it?
00:32 notviki m: my int @a = ^Inf; put @a
00:32 camelia rakudo-moar ca919d: OUTPUT«␤»
00:32 notviki m: my int @a = ^Inf; put @a.elems
00:32 camelia rakudo-moar ca919d: OUTPUT«0␤»
00:32 notviki m: my int @a = Inf; put @a.elems
00:32 camelia rakudo-moar ca919d: OUTPUT«This type cannot unbox to a native integer: P6opaque, Num␤  in block <unit> at <tmp> line 1␤␤»
00:32 * notviki shrugs
00:33 aindilis` joined #perl6
00:34 notviki hmmm... do I dare start another playthrough of Dragon Age Inquisition...
00:36 notviki 120 hours on previous playthrough...
00:39 AlexDaniel commit: 2015.12,HEAD my @a = 1,2,3,4; @a[1]:delete; say @a.splice; my @b = 1,2,3,4; @b[1]:delete; say @b.splice(0)
00:39 committable6 AlexDaniel, ¦«2015.12»: [1 (Any) 3 4]␤[1]␤¦«HEAD»: [1 (Any) 3 4]␤[1 (Any) 3 4]
00:39 AlexDaniel right
00:39 AlexDaniel the current behavior is correct I guess
00:40 notviki There should be extremely thorough splice tests
00:41 notviki Well, no, I guess not "extremely" :)
00:41 AlexDaniel except for this case probably?
00:41 AlexDaniel notviki: perhaps you can check…
00:42 notviki grep delete S32-array/splice.t gives nothing
00:43 bartolin joined #perl6
00:43 jantore joined #perl6
00:44 AlexDaniel notviki: it would be nice to have one for this case
00:44 notviki yeah
00:44 notviki m: my @a = 1,2,3,4; @a[1]:delete; say @a.splice; my @b = 1,2,3,4; @b[1]:delete; say @b.splice(0); say @b
00:44 camelia rakudo-moar ca919d: OUTPUT«[1 (Any) 3 4]␤[1 (Any) 3 4]␤[]␤»
00:44 notviki Yeah, the current result is correct.
00:45 * notviki eats dinner first, then will add a test
00:45 AlexDaniel thanks
00:46 AlexDaniel commit: 2015.12,HEAD dd my $b = Blob.new(1,2,3); dd subbuf-rw($b,2,1) = Buf.new(42); dd $b
00:46 AlexDaniel what about this
00:46 committable6 AlexDaniel, https://gist.github.com/f8fe​02a390462d3405c3a90c572a7ede
00:46 AlexDaniel bisect: 2015.12,HEAD dd my $b = Blob.new(1,2,3); dd subbuf-rw($b,2,1) = Buf.new(42); dd $b
00:46 bisectable6 AlexDaniel, On both starting points (old=2015.12 new=ca919d9) the exit code is 1 and the output is identical as well
00:46 bisectable6 AlexDaniel, Output on both points: ===SORRY!=== Error while compiling /tmp/ViwxmU948P␤Undeclared name:␤    HEAD used at line 1␤
00:46 AlexDaniel bisect: dd my $b = Blob.new(1,2,3); dd subbuf-rw($b,2,1) = Buf.new(42); dd $b
00:46 bisectable6 AlexDaniel, Bisecting by exit code (old=2015.12 new=ca919d9). Old exit code: 0
00:47 bisectable6 AlexDaniel, bisect log: https://gist.github.com/ca02​49183cea98931dd0f82af21ba0a2
00:47 bisectable6 AlexDaniel, (2016-02-27) https://github.com/rakudo/rakudo/commit/​08ad4b6d772eaa8d9f6ea348e0f608a23797670f
00:49 AlexDaniel m: say +combinations(100,1000)
00:49 camelia rakudo-moar ca919d: OUTPUT«1␤»
00:49 AlexDaniel notviki: ↑ :)
00:49 notviki :/
00:50 notviki no idea what subbuf-rw is
00:51 notviki Blob is immutable, so maybe it's right to complain?
00:51 AlexDaniel right
00:51 AlexDaniel probably
00:52 notviki s: combinations(100, 1000), 'iterator', \()
00:52 SourceBaby notviki, Sauce is at https://github.com/rakudo/rakudo/​blob/ca919d9/src/core/Seq.pm#L52
00:52 geekosaur seems right to me
00:52 samcv m:  0x0.uniprop-bool('space').say
00:52 camelia rakudo-moar ca919d: OUTPUT«True␤»
00:52 AlexDaniel geekosaur: what exactly?
00:52 geekosaur ? subbuf-rw complaining
00:52 AlexDaniel ah
00:52 notviki s: &combinations, \(100, 1000)
00:52 SourceBaby notviki, Sauce is at https://github.com/rakudo/rakudo/​blob/ca919d9/src/core/List.pm#L5
00:52 AlexDaniel ok
00:52 geekosaur on an immutable Blob
00:53 AlexDaniel m: say +combinations(100,1000)
00:53 camelia rakudo-moar ca919d: OUTPUT«1␤»
00:53 AlexDaniel m: say +combinations(1000,100)
00:53 camelia rakudo-moar ca919d: OUTPUT«6385051192630513023669851114202227428126290​06938533317762868162215243769947509019489209743517​97699894319420811933446197797592213357065053890␤»
00:53 notviki m: my $n = 100; my $k = 1000; ([*] ($n ... 0) Z/ 1 .. min($n - $k, $k)).Int
00:53 camelia rakudo-moar ca919d: ( no output )
00:53 notviki m: my $n = 100; my $k = 1000; ([*] ($n ... 0) Z/ 1 .. min($n - $k, $k)).Int .say
00:53 camelia rakudo-moar ca919d: OUTPUT«1␤»
00:55 BenGoldberg joined #perl6
00:56 jordman joined #perl6
00:57 notviki k, I see what it is
00:58 AlexDaniel commit: 2015.12,HEAD say uniprop('〔', 'East_Asian_Width')
00:58 committable6 AlexDaniel, ¦«2015.12»: 0␤¦«HEAD»:
00:58 AlexDaniel commit: 2015.12,HEAD dd uniprop('〔', 'East_Asian_Width')
00:58 committable6 AlexDaniel, ¦«2015.12»: 0␤¦«HEAD»: ""
00:58 AlexDaniel samcv: is this alright? ↑
00:58 samcv well not fixed in moar master
00:58 samcv but that should theoretically work
00:59 samcv it returns uh
00:59 notviki AlexDaniel: I opened an Issue for roast: https://github.com/perl6/roast/issues/203
00:59 notviki I don't feel like writing tests and I don't wanna half-ass it
00:59 AlexDaniel ok
00:59 samcv by theoretically i mean soon it will work
01:01 AlexDaniel m: say Blob.elems
01:01 camelia rakudo-moar ca919d: OUTPUT«1␤»
01:02 AlexDaniel m: say Blob[0]
01:02 camelia rakudo-moar ca919d: OUTPUT«(Blob[Int])␤»
01:02 notviki It's the 1-el-list thing.
01:03 notviki m: say Numeric.elems
01:03 camelia rakudo-moar ca919d: OUTPUT«1␤»
01:04 AlexDaniel commit: 2015.12,HEAD 'hello' [&say] 'world'
01:04 committable6 AlexDaniel, ¦«2015.12»: helloworld␤¦«HEAD»: WARNINGS for /tmp/JjnG5Kf51O:␤Useless use of &say in sink context (line 1)␤helloworld
01:05 notviki m: dd combinations(.5, .5)
01:05 camelia rakudo-moar ca919d: OUTPUT«((),).Seq␤»
01:05 * notviki doesn't get it
01:06 notviki m: dd combinations(0, 0)
01:06 camelia rakudo-moar ca919d: OUTPUT«((),).Seq␤»
01:06 notviki m: dd combinations(2, 2)
01:06 camelia rakudo-moar ca919d: OUTPUT«((0, 1),).Seq␤»
01:07 notviki Ah, right. combination of zero elems, doh
01:08 BenGoldberg m: dd permutations(3);
01:08 camelia rakudo-moar ca919d: OUTPUT«((0, 1, 2), (0, 2, 1), (1, 0, 2), (1, 2, 0), (2, 0, 1), (2, 1, 0)).Seq␤»
01:08 BenGoldberg m: dd permutations(3).sink-all;
01:08 camelia rakudo-moar ca919d: OUTPUT«No such method 'sink-all' for invocant of type 'Seq'␤  in block <unit> at <tmp> line 1␤␤»
01:08 BenGoldberg m: dd permutations(3).iterator.sink-all;
01:08 camelia rakudo-moar ca919d: OUTPUT«IterationEnd␤»
01:09 BenGoldberg It's really too bad that .sink-all wasn't specced to provide a count of how many items were discarded.
01:10 notviki Isn't the point of it to sink all without carying how many items there were?
01:10 notviki m: (^Inf).iterator.sink-all; say "hi"
01:10 notviki ok
01:10 camelia rakudo-moar ca919d: OUTPUT«(timeout)»
01:11 notviki BenGoldberg: why is it bad? You're not supposed to poke at iterators like that, really.
01:13 BenGoldberg The reason .sink-all exists is because for some Iterators, pulling elements has a useful side effect.  If we want that side effect to occur, but *don't* want to build a huge list containing the return values of .pull-one, then that's how to do it.
01:13 AlexDaniel commit: 2015.12,HEAD my %f := Map.new; %f.WHICH.say
01:13 committable6 AlexDaniel, ¦«2015.12»: Map|44148944␤¦«HEAD»: Map|
01:13 AlexDaniel Map| ?
01:14 * notviki saw that symptop already
01:14 aborazmeh joined #perl6
01:14 aborazmeh joined #perl6
01:14 AlexDaniel bisect: 2015.12,HEAD my %f := Map.new; %f.WHICH.say
01:14 AlexDaniel shit
01:14 bisectable6 AlexDaniel, On both starting points (old=2015.12 new=ca919d9) the exit code is 1 and the output is identical as well
01:15 bisectable6 AlexDaniel, Output on both points: ===SORRY!=== Error while compiling /tmp/TorAW7kiCn␤Undeclared name:␤    HEAD used at line 1␤
01:15 AlexDaniel bisect: my %f := Map.new; %f.WHICH.say
01:15 bisectable6 AlexDaniel, Bisecting by output (old=2015.12 new=ca919d9) because on both starting points the exit code is 0
01:15 notviki BenGoldberg: and which core types provide side effects where sinking does less work than generating all elems?
01:15 bisectable6 AlexDaniel, bisect log: https://gist.github.com/3c07​0b27049953d951f16eca19e478c0
01:15 bisectable6 AlexDaniel, (2015-12-25) https://github.com/rakudo/rakudo/commit/​07fecb52eb1fd07397659f19a5cf36dc61f84053
01:15 notviki heh
01:16 AlexDaniel bisect: my %f := Map.new; exit %f.WHICH.gist.ends-with(‘|’)
01:16 bisectable6 AlexDaniel, Bisecting by exit code (old=2015.12 new=ca919d9). Old exit code: 0
01:16 bisectable6 AlexDaniel, bisect log: https://gist.github.com/6375​1c020cb46973aa3688a51500a708
01:16 bisectable6 AlexDaniel, (2016-06-21) https://github.com/rakudo/rakudo/commit/​d9956e5ad872f8edc3f8dd0e814745aafa74eb11
01:16 AlexDaniel what does that mean
01:17 rburkholder joined #perl6
01:18 notviki m: my %f := Map.new: foo => "\b\b\b\b\b"; say %f.WHICH
01:18 camelia rakudo-moar ca919d: OUTPUT«Map|␤»
01:18 notviki aww
01:18 notviki m: my %f := Map.new: foo => "\b\b\b\b\b"; say %f
01:18 camelia rakudo-moar ca919d: OUTPUT«Map.new(())␤»
01:18 notviki oh
01:18 notviki m: my %f := Map.new: "foo" => "\b\b\b\b\b"; say %f
01:18 camelia rakudo-moar ca919d: OUTPUT«Map.new((:foo("\b\b\b\b\b")))␤»
01:18 notviki m: my %f := Map.new: "foo" => "\b\b\b\b\b"; say %f.WHICH
01:18 camelia rakudo-moar ca919d: OUTPUT«Map|Str|foo()␤»
01:18 notviki heh
01:19 notviki What's a value type again? I keep forgetting
01:20 notviki I wonder if it's a bad idea to use such WHICH
01:20 notviki m: my %f := Map.new: "foo" => "x" x 10000000;
01:20 camelia rakudo-moar ca919d: ( no output )
01:20 notviki m: my %f := Map.new: "foo" => "x" x 10000000; say %f ==- Map.new: "foo" => "x"
01:20 camelia rakudo-moar ca919d: OUTPUT«False␤»
01:21 notviki m: my %f := Map.new: "foo" => "x" x 10000000; say %f === Map.new: "foo" => "x"
01:21 camelia rakudo-moar ca919d: OUTPUT«False␤»
01:21 notviki m: my %f := Map.new: "foo" => "x" x 10000000000; say %f === Map.new: "foo" => "x"
01:21 camelia rakudo-moar ca919d: OUTPUT«repeat count > 1073741824 arbitrarily unsupported...␤  in block <unit> at <tmp> line 1␤␤»
01:21 notviki m: my %f := Map.new: "foo" => "x" x 1073741824; say %f === Map.new: "foo" => "x"
01:21 camelia rakudo-moar ca919d: OUTPUT«MoarVM panic: Memory allocation failed; could not allocate 4294967332 bytes␤»
01:21 notviki m: my %f := Map.new: "foo" => "x" x 107374109; say %f === Map.new: "foo" => "x"
01:21 camelia rakudo-moar ca919d: OUTPUT«False␤»
01:21 notviki m: my %f := Map.new: "foo" => "x" x 107374109; say %f.WHICH
01:21 camelia rakudo-moar ca919d: OUTPUT«Map|Str|foo(xxxxxxxxxxxxxxxxxxxxxxxxxx​xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx​xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx​xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx​xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx​xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx…»
01:23 notviki m: my @a; @a = @a, 4; my %f := Map.new: "foo" => @a; say %f.WHICH
01:23 notviki weeeeeeee
01:23 notviki m: my @a; @a = @a, 4; my %f := Map.new: "foo" => @a; say %f === Map.new
01:23 BenGoldberg m: try { my $x = 'x' x 9e9 }; say 'alive';
01:23 camelia rakudo-moar ca919d: OUTPUT«(timeout)»
01:23 camelia rakudo-moar ca919d: OUTPUT«(timeout)»
01:23 camelia rakudo-moar ca919d: OUTPUT«alive␤»
01:24 BenGoldberg m: try { my $x = 'x' x 9e99 }; say 'alive';
01:24 camelia rakudo-moar ca919d: OUTPUT«alive␤»
01:24 BenGoldberg m: try { my $x = 'x' x 9e99; CATCH { default { say 'oops: '~.Str.say }; say 'alive';
01:24 camelia rakudo-moar ca919d: OUTPUT«5===SORRY!5=== Error while compiling <tmp>␤Missing block␤at <tmp>:1␤------> 3 { say 'oops: '~.Str.say }; say 'alive';7⏏5<EOL>␤»
01:24 BenGoldberg m: try { my $x = 'x' x 9e99; CATCH { default { say 'oops: '~.Str.say } }; say 'alive';
01:24 camelia rakudo-moar ca919d: OUTPUT«5===SORRY!5=== Error while compiling <tmp>␤Missing block␤at <tmp>:1␤------> 3 say 'oops: '~.Str.say } }; say 'alive';7⏏5<EOL>␤»
01:24 BenGoldberg m: try { my $x = 'x' x 9e99; CATCH { default { say 'oops: '~.Str.say } } }; say 'alive';
01:24 camelia rakudo-moar ca919d: OUTPUT«Cannot unbox 333 bit wide bigint into native integer␤oops: True␤alive␤»
01:25 BenGoldberg m: try { my $x = 'x' x 9e9; CATCH { default { say 'oops: '~.Str } } }; say 'alive';
01:25 camelia rakudo-moar ca919d: OUTPUT«oops: repeat count > 1073741824 arbitrarily unsupported...␤alive␤»
01:26 BenGoldberg arbitrarily??!? I demand a refund.
01:26 BenGoldberg m: try { my $x = BEGIN { 'x' x 9e9 }; CATCH { default { say 'oops: '~.Str } } }; say 'alive';
01:26 camelia rakudo-moar ca919d: OUTPUT«5===SORRY!5=== Error while compiling <tmp>␤An exception occurred while evaluating a BEGIN␤at <tmp>:1␤Exception details:␤  5===SORRY!5=== Error while compiling ␤  repeat count > 1073741824 arbitrarily unsupported...␤  at :␤»
01:27 notviki m: my %h := Hash.new: "foo" => 0/0; say %h === Hash.new
01:27 camelia rakudo-moar ca919d: OUTPUT«False␤»
01:27 notviki m: my %h := Map.new: "foo" => 0/0; say %h === Map.new
01:27 camelia rakudo-moar ca919d: OUTPUT«Attempt to divide by zero using div␤  in block <unit> at <tmp> line 1␤␤Actually thrown at:␤  in block <unit> at <tmp> line 1␤␤»
01:27 AlexDaniel commit: 2015.12,HEAD my $a = uint32.new(10); say $a.WHAT
01:27 committable6 AlexDaniel, ¦«2015.12»: (uint32)␤¦«HEAD»: (Int)
01:27 AlexDaniel huh, right?
01:28 notviki bisectable6: my $a = uint32.new(10); say $a.WHAT
01:28 bisectable6 notviki, Bisecting by output (old=2015.12 new=ca919d9) because on both starting points the exit code is 0
01:28 bisectable6 notviki, bisect log: https://gist.github.com/a423​03f40cee7e8b08dab14a8f8788fc
01:28 bisectable6 notviki, (2016-10-05) https://github.com/rakudo/rakudo/commit/​798c2e2dca34e5cf93da99d1f401eb161efca854
01:28 notviki oops :}
01:29 AlexDaniel notviki: not sure how “oops” it is, look
01:29 AlexDaniel commit: 2015.12,HEAD my $a = uint32.new(10); say $a
01:29 committable6 AlexDaniel, ¦«2015.12»: This representation (P6int) cannot unbox to other types␤  in block <unit> at /tmp/XnjbfbvWJG line 1␤ «exit code = 1»␤¦«HEAD»: 10
01:29 AlexDaniel yeah, on HEAD it works for a wrong reason, but…
01:30 AlexDaniel but why doesn't it work on 2015.12, huh?
01:30 notviki well, uint32 is not a boxed type
01:30 notviki It ain't got a .new
01:30 notviki So it gets boxed into an Int and then .new is called on that and tada
01:30 AlexDaniel uhm but
01:30 AlexDaniel commit: 2015.12,HEAD my $a = uint32.new(10)
01:30 NotZoffix joined #perl6
01:31 NotZoffix joined #perl6
01:31 NotZoffix Zoffix, stop messing around!!
01:31 notviki What the fuck
01:31 committable6 AlexDaniel, ¦«2015.12,HEAD»:
01:31 AlexDaniel notviki: that's your own message from the past I think
01:31 AlexDaniel or maybe not yours
01:31 notviki Yeah, it is
01:32 notviki Now I remember it
01:32 AlexDaniel but yeah, I'm using a time machine to do this stuff, so some artefacts will be observed
01:33 BenGoldberg m: uint32.WHAT.say
01:33 camelia rakudo-moar ca919d: OUTPUT«(uint32)␤»
01:33 BenGoldberg m: uint32.^mro.say
01:33 camelia rakudo-moar ca919d: OUTPUT«((uint32) (Int) (Cool) (Any) (Mu))␤»
01:33 notviki Oh, and that Map.WHICH thing it's possible to create two different Maps with same .WHICH
01:33 notviki m: say uint32.^methods
01:33 camelia rakudo-moar ca919d: OUTPUT«No such method 'methods' for invocant of type 'Perl6::Metamodel::NativeHOW'␤  in block <unit> at <tmp> line 1␤␤»
01:35 BenGoldberg s: Perl6::Metamodel::NativeHOW, 'methods', ()
01:35 SourceBaby BenGoldberg, Something's wrong: ␤ERR: Could not find symbol '&NativeHOW'␤  in block <unit> at -e line 6␤␤Actually thrown at:␤  in block <unit> at -e line 6␤␤
01:35 BenGoldberg s: Perl6::Metamodel::NativeHOW, 'methods', (Perl6::Metamodel::NativeHOW)
01:35 SourceBaby BenGoldberg, Something's wrong: ␤ERR: Could not find symbol '&NativeHOW'␤  in block <unit> at -e line 6␤␤Actually thrown at:␤  in block <unit> at -e line 6␤␤
01:36 notviki :/
01:36 BenGoldberg Restricted setting thingy problem, I'm guessing.
01:36 notviki It did say there is NO such method in that class :/
01:36 notviki Nope
01:36 BenGoldberg m: Perl6::Metamodel::NativeHOW.say
01:36 camelia rakudo-moar ca919d: OUTPUT«Could not find symbol '&NativeHOW'␤  in block <unit> at <tmp> line 1␤␤Actually thrown at:␤  in block <unit> at <tmp> line 1␤␤»
01:37 notviki You can't get them that way (yet)
01:37 notviki m: int.WHAT.new
01:37 camelia rakudo-moar ca919d: OUTPUT«No such method 'BUILDALLPLAN' for invocant of type 'Perl6::Metamodel::NativeHOW'␤  in block <unit> at <tmp> line 1␤␤»
01:37 notviki bah
01:37 notviki oh right
01:37 notviki m: int.HOW.WHAT.new
01:37 camelia rakudo-moar ca919d: ( no output )
01:37 notviki m: int.HOW.WHAT.new.^name.say
01:37 camelia rakudo-moar ca919d: OUTPUT«Perl6::Metamodel::NativeHOW␤»
01:37 notviki ^ that's the way to reach out to MOP classes
01:38 BenGoldberg Clearly this is not a case of perl making easy things easy ;)
01:38 notviki Pretty easy.
01:39 BenGoldberg m: unint32.HOW.WHAT.new(42).say;
01:39 camelia rakudo-moar ca919d: OUTPUT«5===SORRY!5=== Error while compiling <tmp>␤Undeclared routine:␤    unint32 used at line 1␤␤»
01:39 BenGoldberg m: uint32.HOW.WHAT.new(42).say;
01:39 camelia rakudo-moar ca919d: OUTPUT«Too many positionals passed; expected 1 argument but got 2␤  in any new at gen/moar/Metamodel.nqp line 3201␤  in block <unit> at <tmp> line 1␤␤»
01:39 BenGoldberg m: uint32.HOW.WHAT.new().say;
01:39 camelia rakudo-moar ca919d: OUTPUT«Perl6::Metamodel::NativeHOW.new␤»
01:43 AlexDaniel m: say “98989898889898989898090909093983830​​2233848473393040383234234509484.348​9​523478234723847238432423”.Rat.nude
01:43 camelia rakudo-moar ca919d: OUTPUT«Cannot convert string to number: trailing characters after number in '989898988898989898980909090939838​30⏏5​22338484733930403832342345094​84.3489​523478234723847238432423' (indicated by ⏏)␤  in block <unit> at <tmp> line 1␤␤Actually throw…»
01:47 notviki bisectable6: dd combinations(-2,2).list.perl
01:47 bisectable6 notviki, Bisecting by output (old=2015.12 new=ca919d9) because on both starting points the exit code is 0
01:47 bisectable6 notviki, bisect log: https://gist.github.com/3fe9​f20f5ea30360323bceb98f22cbda
01:47 bisectable6 notviki, (2016-03-25) https://github.com/rakudo/rakudo/commit/​f220a5edc0694751a585b00f1c374961e02a8e62
01:52 BenGoldberg m: ' '.uniprop.say;
01:52 camelia rakudo-moar ca919d: OUTPUT«Zs␤»
01:52 BenGoldberg m: ' '.unimatch('.say;
01:52 camelia rakudo-moar ca919d: OUTPUT«5===SORRY!5=== Error while compiling <tmp>␤Unable to parse expression in single quotes; couldn't find final "'" ␤at <tmp>:1␤------> 3' '.unimatch('.say;7⏏5<EOL>␤    expecting any of:␤        argument list␤        single quotes␤     …»
01:52 BenGoldberg m: ' '.unimatch('Zs')..say;
01:52 camelia rakudo-moar ca919d: OUTPUT«5===SORRY!5=== Error while compiling <tmp>␤Unsupported use of bare "say"; in Perl 6 please use .say if you meant $_, or use an explicit invocant or argument, or use &say to refer to the function as a noun␤at <tmp>:1␤------> 3' '.unimatch('Zs')..…»
01:52 BenGoldberg m: ' '.unimatch('Zs').say;
01:52 camelia rakudo-moar ca919d: OUTPUT«True␤»
01:52 BenGoldberg u: .unimatch('Zs')
01:52 unicodable6 BenGoldberg, U+002E FULL STOP [Po] (.)
01:52 unicodable6 BenGoldberg, U+0075 LATIN SMALL LETTER U [Ll] (u)
01:52 unicodable6 BenGoldberg, U+006E LATIN SMALL LETTER N [Ll] (n)
01:52 unicodable6 BenGoldberg, https://gist.github.com/7fd6​afa0c457a7686b162c17ba511279
01:52 labster joined #perl6
01:53 AlexDaniel u: { .unimatch('Zs') }
01:53 unicodable6 AlexDaniel, U+0020 SPACE [Zs] ( )
01:53 unicodable6 AlexDaniel, U+1680 OGHAM SPACE MARK [Zs] ( )
01:53 unicodable6 AlexDaniel, U+00A0 NO-BREAK SPACE [Zs] ( )
01:53 unicodable6 AlexDaniel, https://gist.github.com/43ce​e5dd8b4fb0e1a4d35d30cf945c68
01:57 AlexDaniel m: say (0e0÷0e0).isNaN
01:57 camelia rakudo-moar ca919d: OUTPUT«Attempt to divide by zero using /␤  in block <unit> at <tmp> line 1␤␤Actually thrown at:␤  in any  at gen/moar/Metamodel.nqp line 3072␤  in block <unit> at <tmp> line 1␤␤»
01:57 AlexDaniel well, no, I'm not using /
01:57 notviki hehe
01:58 notviki wonder why it has "using" anything in it...
02:00 AlexDaniel m: say dd %42
02:00 camelia rakudo-moar ca919d: OUTPUT«Hash % = {}␤Nil␤»
02:01 AlexDaniel m: dd %42
02:01 camelia rakudo-moar ca919d: OUTPUT«Hash % = {}␤»
02:01 AlexDaniel what's that?
02:01 AlexDaniel commit: all dd %42
02:01 pierre_ joined #perl6
02:01 notviki coerser to hash?
02:01 committable6 AlexDaniel, https://gist.github.com/3f52​986c51224d7536c2d69113ac89ce
02:01 AlexDaniel ye but, what about 42?
02:02 AlexDaniel where does it go?
02:02 * notviki has no idea
02:02 notviki m: dd 42.hash
02:02 camelia rakudo-moar ca919d: OUTPUT«Odd number of elements found where hash initializer expected:␤Only saw: 42␤  in block <unit> at <tmp> line 1␤␤»
02:02 notviki m: dd 42.Hash
02:02 camelia rakudo-moar ca919d: OUTPUT«Odd number of elements found where hash initializer expected:␤Only saw: 42␤  in block <unit> at <tmp> line 1␤␤»
02:02 * notviki shrugs
02:05 NeuralAnomaly joined #perl6
02:08 * notviki sees a little nest of bugs in combinations
02:09 notviki AlexDaniel++
02:09 notviki Fixing the issue you found exposed a few buggy edge cases AND wrong spectests for them
02:15 grumble joined #perl6
02:23 notviki Guest90643: status
02:23 notviki .oO( IRC::Client bug... )
02:29 AlexDaniel notviki: cool
02:29 AlexDaniel I mean, the whole m: history is a bug nest…
02:30 notviki It's kinda weird Freenode's nick enforcer locks you out (seems for quite some time) if it had to force a user off your nickname.
02:30 AlexDaniel I'm at about 33% of my preliminary iteration…
02:30 AlexDaniel hopefully will start submitting tickets tomorrow :-/
02:31 notviki oh, that's what /nickserv release is for...
02:32 NeuralAnomaly joined #perl6
02:32 cyphase joined #perl6
02:41 dugword joined #perl6
02:47 ilbot3 joined #perl6
02:47 Topic for #perl6 is now »ö« Welcome to Perl 6! | https://perl6.org/ | evalbot usage: 'p6: say 3;' or rakudo:,  or /msg camelia p6: ... | irclog: http://irc.perl6.org or http://colabti.org/irclogger/irclogger_logs/perl6 | UTF-8 is our friend!
03:03 AlexDaniel m: my Int @foo = <4 5 6>; ++<<@foo; say @foo
03:03 camelia rakudo-moar ca919d: OUTPUT«Potential difficulties:␤    Useless use of ++<< in sink context␤    at <tmp>:1␤    ------> 3my Int @foo = <4 5 6>; 7⏏5++<<@foo; say @foo␤[5 6 7]␤»
03:03 AlexDaniel useless useless use of warning?
03:03 notviki yeah
03:06 AlexDaniel m: my %e = enum < a b c >; say a.WHAT.WHICH
03:06 camelia rakudo-moar ca919d: OUTPUT«|U74577832␤»
03:07 AlexDaniel notviki: I wonder if it's possible to trick it into printing just “|”
03:09 AlexDaniel m: my $x = "a"; $x ~= $x for ^31; say $x.chars
03:09 camelia rakudo-moar ca919d: OUTPUT«MoarVM panic: Memory allocation failed; could not allocate 2147483648 bytes␤»
03:09 AlexDaniel evalable: my $x = "a"; $x ~= $x for ^31; say $x.chars
03:09 evalable6 AlexDaniel, rakudo-moar ca919d9: OUTPUT«2147483648»
03:09 AlexDaniel hehe
03:09 AlexDaniel impressive, right?
03:09 AlexDaniel eval: my $x = ("a" x (2 ** 63)); say $x.chars
03:09 evalable6 AlexDaniel, rakudo-moar ca919d9: OUTPUT«0»
03:09 AlexDaniel
03:10 xtreak joined #perl6
03:12 itcharlie_linux joined #perl6
03:13 notviki m: my $x = ("a" x (2 ** 63)); say $x
03:13 camelia rakudo-moar ca919d: OUTPUT«␤»
03:15 notviki m: say 2 ** 63
03:15 camelia rakudo-moar ca919d: OUTPUT«9223372036854775808␤»
03:19 notviki tests for combinations are so sparse :(
03:20 notviki m: my @a = ^3; @a[1]:delete; @a.combinations(3).say
03:20 camelia rakudo-moar ca919d: OUTPUT«((0 (Mu) 2))␤»
03:20 notviki m: my @a = ^3; @a[1]:delete; dd @a.elems
03:20 camelia rakudo-moar ca919d: OUTPUT«3␤»
03:23 Perl6Robot joined #perl6
03:23 Perl6Robot OHAI!
03:26 notviki -_-
03:32 AlexDaniel commit: 2015.12,HEAD say [-] [+] 1,2,3
03:32 committable6 AlexDaniel, ¦«2015.12»: 6␤¦«HEAD»: -6
03:32 AlexDaniel current answer seems right
03:32 AlexDaniel bisect: say [-] [+] 1,2,3
03:32 bisectable6 AlexDaniel, Bisecting by output (old=2015.12 new=ca919d9) because on both starting points the exit code is 0
03:32 bisectable6 AlexDaniel, bisect log: https://gist.github.com/d8d4​ed781cebd3898693ee86b7a0cb24
03:32 bisectable6 AlexDaniel, (2016-08-30) https://github.com/rakudo/rakudo/commit/​b1c444f0622bc348a2e860a43faa6d72e9a11558
03:35 AlexDaniel m: (20..10)[^20]
03:35 camelia rakudo-moar ca919d: ( no output )
03:35 AlexDaniel m: say (20..10)[^20]
03:35 camelia rakudo-moar ca919d: OUTPUT«Index out of range. Is: 0, should be in 0..-1␤  in block <unit> at <tmp> line 1␤␤Actually thrown at:␤  in block <unit> at <tmp> line 1␤␤»
03:36 notviki .seen skids
03:36 yoleaux I saw skids 15 Dec 2016 22:05Z in #perl6: <skids> Same with I and l
03:36 skids o/
03:37 notviki skids: was wondering how come we treat negative $n as a degenerate case of an empty list, yet negative $k didn't receive equal treatment: https://github.com/rakudo/rakudo/commit/​2a04e135abbad8167ef95c32e9a40d3c9f010b05
03:38 itcharlie_linux left #perl6
03:38 skids Lemme look... I think it might come down to discrete math conventions.
03:40 AlexDaniel alright that's it, good night everyone
03:40 notviki night
03:50 * notviki suspects skids got lost in a descrete maze :)
03:50 noganex joined #perl6
03:51 skids notwiki: I'm not sure.  I do think the results for n=0 are correct... I do remembering putting some effort into figuring that out.  Yeah I get distracted on math pages.
03:51 notviki but what about negative k?
03:52 * notviki visits #math
03:52 sammers joined #perl6
03:52 samcv can somebody good at perl tell me what this means?
03:52 samcv $done{"$key$_"} ||= push @lines, "{\"$_\",$prop_names->{$key}}";
03:53 samcv i've used //= but, with the push in there it is kind of confusing
03:53 notviki it returns the result
03:53 samcv $done{"$key$_"} = $done{"$key$_"} ||  push @lines, "{\"$_\",$prop_names->{$key}}"; ?
03:53 notviki m: my @a = 42; dd @a.push: 45
03:53 camelia rakudo-moar ca919d: OUTPUT«Array @a = [42, 45]␤»
03:53 notviki no, the || if for the value of $done{"$key$_"}
03:54 notviki unless $done{"$key$_"} { push @lines, "{\"$_\",$prop_names->{$key}}"; $done{"$key$_"} = @lines; }
03:54 samcv ok thanks :)
03:54 skids I think it may be that it was expected that combinations might end up rejecting negatives by type.
03:55 skids (using a subset or somesuch)
03:58 skids (but a quicker fix was needed)
03:58 notviki antonfire │ notviki: no, you wouldn't treat it like 0.
03:58 notviki antonfire │ There is such a thing as a set with no elements. There is no such thing as a set with -1 elements.
03:58 notviki Yeah, OK. That makes sense to me, viewed in that way.
03:59 notviki skids: thanks.
04:01 skids In the case of k<0 there is "no way to choose" a negative number of elements, so getting an empty set is not right either in that case.
04:01 notviki cool
04:01 pierre_ joined #perl6
04:02 labster joined #perl6
04:08 notviki samcv: ah, I misread your "$done{"$key$_"} = $done{"$key$_"} ||  push @lines, "{\"$_\",$prop_names->{$key}}";"
04:08 notviki Yeah, it's basically that, except the ||= assigns only if it's false, while ^ that always assigns (if the key's value is true, then that value)
04:09 notviki hmmm
04:09 * notviki wonders...
04:09 notviki m: my %h = foo => Failure.new; %h<foo> ||= "bar"; dd %h<foo>
04:09 camelia rakudo-moar ca919d: OUTPUT«Str %h = "bar"␤»
04:09 notviki oh right
04:10 notviki m: my %h = foo => Failure.new; %h<foo> &&= "bar"; dd %h<foo>
04:10 camelia rakudo-moar ca919d: OUTPUT«Failure %h = Failure.new(exception => X::AdHoc.new(payload => "Failed"), backtrace => Backtrace.new)␤»
04:10 notviki m: my %h = foo => Failure.new; %h<foo> &&= "bar"; dd %h<foo>.handled
04:10 camelia rakudo-moar ca919d: OUTPUT«Bool::True␤»
04:10 notviki m: my %h = foo => Failure.new; %h<foo> = %h<foo> && "bar"; dd %h<foo>.handled
04:10 camelia rakudo-moar ca919d: OUTPUT«Bool::True␤»
04:10 notviki cool
04:10 * notviki &
04:11 samcv thanks
04:12 jraglin joined #perl6
04:12 notviki m: my %h; %h<foo> := Proxy.new: STORE => method ($v) { say "STORING STUFF!" }, FETCH => method () { True }; %h<foo> ||= 42;
04:12 camelia rakudo-moar ca919d: ( no output )
04:12 notviki m: my %h; %h<foo> := Proxy.new: STORE => method ($v) { say "STORING STUFF!" }, FETCH => method () { True }; %h<foo> = %h<foo> || 42;
04:12 camelia rakudo-moar ca919d: OUTPUT«STORING STUFF!␤»
04:12 notviki \o/
04:19 skids notviki: yeah I think that code needs more work:
04:19 skids m: say combinations(3,4)
04:19 camelia rakudo-moar ca919d: OUTPUT«()␤»
04:19 skids m: say combinations(0,4)
04:19 camelia rakudo-moar ca919d: OUTPUT«(())␤»
04:26 cyphase joined #perl6
04:37 aborazmeh joined #perl6
04:37 aborazmeh joined #perl6
04:42 StefanSC joined #perl6
05:03 BenGoldberg joined #perl6
05:14 Cabanossi joined #perl6
05:18 pyrimidi_ joined #perl6
05:26 geekosaur joined #perl6
05:41 bitmap joined #perl6
05:43 Ben_Goldberg joined #perl6
06:03 pierre_ joined #perl6
06:10 CIAvash joined #perl6
06:16 pyrimidine joined #perl6
06:17 Tonik joined #perl6
06:22 BenGoldberg joined #perl6
06:29 bjz joined #perl6
06:35 mr-foobar joined #perl6
06:43 Ben_Goldberg joined #perl6
06:45 darutoko joined #perl6
07:00 bjz joined #perl6
07:03 Ben_Goldberg joined #perl6
07:12 Ben_Goldberg joined #perl6
07:20 pyrimidi_ joined #perl6
07:26 pyrimidine joined #perl6
07:33 samcv m: use nqp; nqp::codepointfromname('PENGUIN').chr.say
07:33 camelia rakudo-moar 3baffe: OUTPUT«🐧␤»
07:33 samcv what would we want this called for perl. for nqp it's called codepointfrom name. i'm thinking maybe unifromname?
07:34 samcv idk a bit longish. but
07:34 cibs joined #perl6
07:34 samcv unifromname vs uniname
07:37 xiaomiao joined #perl6
08:02 lizmat joined #perl6
08:03 pierre_ joined #perl6
08:07 moritz don't we have that through "\c[PENGUIN]".ord ?
08:12 samcv yes
08:12 samcv but you can't do that programmically
08:12 samcv (sp)
08:12 moritz m: my $n = 'PENGUIN'; say "\c[$n]"
08:12 camelia rakudo-moar dbbf9d: OUTPUT«5===SORRY!5=== Error while compiling <tmp>␤Unrecognized \c character␤at <tmp>:1␤------> 3my $n = 'PENGUIN'; say "\c[7⏏5$n]"␤    expecting any of:␤        argument list␤        double quotes␤        term␤»
08:12 samcv yep
08:12 moritz ok, I see your point
08:13 moritz Str.new(codepoint-name => 'PENGUIN') ?
08:13 samcv how does unifromname sound though? any better suggestions?
08:13 samcv hm
08:13 samcv that is pretty awkward
08:13 wamba joined #perl6
08:13 CIAvash joined #perl6
08:13 moritz just codepoint, possibly
08:14 samcv i'm not opposed to that being a Str.new possibility but. i think there should be a more natural way to do it
08:14 moritz Str.from-codepoint('PENGUIN')
08:14 samcv that could be fine :)
08:14 samcv wait
08:14 samcv codepoint implies from a number
08:14 moritz not really
08:15 moritz codepoint is just the concept of a single "character" in the codepoint in the Unicode database, no?
08:15 moritz Str.from-name('PENGUIN') ?
08:15 moritz bonus points for also implementing it in Uni
08:16 samcv well. you can have ZWJ sequences
08:16 samcv that is multi character and when we support them we'd want an easy way to do so
08:17 * moritz looks up zwj sequences
08:18 samcv m: "👨🏼‍⚕️".say
08:18 camelia rakudo-moar dbbf9d: OUTPUT«👨🏼‍⚕️␤»
08:18 samcv m: "👨🏼‍⚕️".chars.say
08:18 camelia rakudo-moar dbbf9d: OUTPUT«3␤»
08:18 samcv so once we support it, it will say 1
08:18 samcv i don't have support in my computer for this but, should be treated as one character since you can't break it up at all
08:18 samcv atm we have unicode name resolve to only a single codepoint, well
08:18 moritz method from-name(*@names) { @names.map({ nqp::codepointfromname($_)}).join }
08:19 samcv to a single codepoint even though normalization forms could make it multiple
08:19 samcv technically
08:19 samcv but normalization is not going to apply to the ZWJ
08:19 samcv i like from-name though
08:19 samcv would be pretty natural for ZWJ
08:20 samcv Str.from-name('woman cartwheeling')
08:20 samcv for example
08:20 moritz sorry, I think I can't contribute much besides API suggestions at this point
08:20 samcv nah that is fine
08:20 samcv that's really what i need
08:21 samcv the rest i have mostly worked out. even though there will need more changes to moarvm's unicode data structures to support this but
08:21 samcv getting the API right is an important first step
08:29 domidumont joined #perl6
08:31 pierre_ joined #perl6
08:33 mattp_ joined #perl6
08:34 domidumont joined #perl6
08:47 labster joined #perl6
08:48 RabidGravy joined #perl6
08:51 moritz m: say (^Inf).grep({last if $_ > 5; True})[^20]
08:51 camelia rakudo-moar dbbf9d: OUTPUT«(0 1 2 3 4 5 Nil Nil Nil Nil Nil Nil Nil Nil Nil Nil Nil Nil Nil Nil)␤»
08:51 moritz m: say (^Inf).grep({last if $_ > 5; True}).elems
08:51 camelia rakudo-moar dbbf9d: OUTPUT«Cannot .elems a lazy list␤  in block <unit> at <tmp> line 1␤␤Actually thrown at:␤  in block <unit> at <tmp> line 1␤␤»
08:51 moritz m: say (^20).grep({last if $_ > 5; True}).elems
08:51 camelia rakudo-moar dbbf9d: OUTPUT«6␤»
08:56 moritz m: say (^Inf).grep({last if $_ > 5; True}).join
08:56 camelia rakudo-moar dbbf9d: OUTPUT«...␤»
08:56 moritz m: say (^Inf).grep({last if $_ > 5; True}).eager.join
08:56 camelia rakudo-moar dbbf9d: OUTPUT«012345␤»
08:58 sammers hey #perl6, just wanted to wish everyone happy holidays. hope you have a great 2017.
08:58 moritz same to you, sammers
08:58 sammers thanks moritz
09:00 astj_ joined #perl6
09:04 xtreak joined #perl6
09:24 xtreak joined #perl6
09:28 regnarg Hi, I created a simple tool that might be handy for debugging P6 scripts. It runs your script in a REPL without running its &MAIN (you can call individual functions from the script, access global vars etc.). Source: https://gist.github.com/regnarg/​3b98a0b5f3348de8886bacc1bb0da3ff It took some NQP hackery but the result is still rather simple. Usage: ./screpl.p6 <my-script.p6>
09:29 regnarg I also had to copy-paste from core's REPL.pm because the context management logic is inside the repl-loop function. Perhaps this could be split out similar to what I did here.
09:30 regnarg I also do not quite understand the condition used to decide whether to run &MAIN...
09:31 moritz regnarg: wow, nice work
09:31 moritz regnarg: MAIN is supposed to only run in the script you pass directly to rakudo, not in modules loaded from there
09:31 vadfat joined #perl6
09:32 vadfat $_='ev                                        al("seek\040D            ATA,0,                  0;");foreach(1..3)        {<DATA>;}my               @camel1hump;my$camel;   my$Camel  ;while(             <DATA>){$_=sprintf("%-6 9s",$_);my@dromedary           1=split(//);if(defined($ _=<DATA>)){@camel1hum        p=split(//);}while(@dromeda  ry1){my$camel1hump=0      ;my$CAMEL=3;if(defined($_=shif         t(@dromedary1    ))&&/\S/
09:32 moritz but rakudo doesn't have a simple way to check that, which is why the tests for whether to run MAIN is somewhat weird
09:33 moritz vadfat: please use a pastebin for pasting code (and p5 code is off-topic here)
09:34 regnarg moritz: Currently for example if I type "sub MAIN { say 42; }" into the normal P6 REPL, it gets executed. Not sure whether that is intended.
09:35 moritz regnarg: I think it is
09:36 moritz when you type code into the REPL, it's the mainline program that the compiler executes for you
09:37 pyrimidi_ joined #perl6
09:38 pierre_ ugexe: Sorry, i was dragged out of my computer, it was still not working, however after another upgrade of moarvm, it did
09:42 regnarg Ok. Anyway, if anyone thinks it might be worthwhile to have some of this functionality in the core REPL class (at least some function analogous to eval-in-ctx so that we do not have to hack private attributes), I might try to prepare a PR.
09:43 dalek doc: 7e7e0a6 | samcv++ | / (2 files):
09:43 dalek doc: Add a seperate color for `TOP´ in grammars
09:43 dalek doc:
09:43 dalek doc: Move some of the “Atom” things from the CSS to the end. We probably
09:43 dalek doc: don't need them, but let’s leave them in for now.
09:43 dalek doc: review: https://github.com/perl6/doc/commit/7e7e0a65f4
09:43 dalek doc: b1109dc | samcv++ | doc/Type/NFD.pod6:
09:43 synopsebot6 Link: http://doc.perl6.org/type/NFD
09:43 dalek doc: Trigger doc rebuild to pull in highlighter changes
09:43 dalek doc:
09:43 dalek doc: https://github.com/perl6/atom-language-perl6/c​ommit/e6c8c774c0c7fc0f15cf882fd311238356a9b137
09:43 dalek doc: review: https://github.com/perl6/doc/commit/b1109dce38
09:44 regnarg An even better debugging tool would be if we could call a function anywhere to "give me a REPL here, in the current context" (including access to local variables). But that might be somewhere between hard and not currently possible. I used a similar trick in Python for many years and it is quite convenient. Maybe I'll look into this for a bit...
09:46 samcv 03CO11LORS
09:48 RabidGravy well that's, er, nice Fedora just upgraded libgfortran
09:52 lizmat regnarg: FWIW, I think that's between "difficult" and "hard": Perl 6 has a *lot* of introspection you can use
09:52 Thorsten_ joined #perl6
09:52 lizmat regnarg: it most likely would involve at least some nqp:: ops
09:52 lizmat so you would have to get yourself familiar with that
09:53 samcv Perl 6, making the Easy Hard and the Impossible within reach
09:53 ThorstenB joined #perl6
09:53 samcv maybe it was keeping
09:54 samcv yeah
09:54 samcv @DrForr, should reverse Easy and Hard so it's Keeping the Hard, Easy and impossible within reach
09:57 ThorstenB joined #perl6
09:57 xtreak joined #perl6
09:58 lizmat regnarg: suggesting "rr" for the function name, for ratty repl  :-)
09:58 regnarg lizmat: Thanks, yes, I've already browsed the sources a bit. This seems complicated because it mixes compile-time and runtime stuff. But EVAL already does the same so that might be a good place to start looking. Basically all I need is "EVAL a few stack frames up".
10:00 samcv ratty repl?
10:00 lizmat if you look at how Cool.EVAL works, you will have your answer
10:00 samcv ah as a method
10:00 samcv i can see that
10:03 regnarg Yeah, I'll look into that. NB: I don't know what the state of macros currently is but I could also just make a macro that expands into an EVAL loop in the original spot (that might even be implementation-agnostic once macros are standardized).
10:05 lizmat macros are still experimental; maybe masak could give you an answer
10:07 lizmat afk&
10:13 regnarg m: use MONKEY-SEE-NO-EVAL; sub my-eval($code) { EVAL $code, :context(CALLER::)  };  sub somefunc { my $secret = 42; my-eval('say $secret'); }; somefunc;
10:13 camelia rakudo-moar 434bf7: OUTPUT«42␤»
10:14 regnarg Ok, seems EVAL already knows how to do this. No just wrap this with a REPL in a nice-looking module...
10:16 regnarg That's probably nicer than macros anyway.
10:18 tojo joined #perl6
10:28 Ven joined #perl6
10:30 Rawriful joined #perl6
10:51 kalkin- joined #perl6
10:59 notviki regnarg: that's going away
10:59 notviki regnarg: the :context thing
11:00 regnarg notviki: Why exactly? That seems very useful (without it, you cannot even trivially wrap EVAL)
11:01 regnarg And not only with CALLER::. You might also want to run some code in a new isolated namespace...
11:02 notviki regnarg: IIRC it's something about optimizations
11:03 regnarg notviki: Any way to learn the details? Actually, I think there are much more use cases for EVAL with an explicit context than without it
11:04 notviki regnarg: http://irclog.perlgeek.de/per​l6-dev/2016-06-16#i_12678792
11:05 notviki well, that doesn't give more info except for it'll stop working "As soon as the optimizer gets better."
11:05 notviki but jnthn can tell you more, I guess.
11:07 notviki I think it's cause frames will be optimized out so it can only know about dynamic vars via CALLER:: not just any random stuff
11:07 regnarg notviki: Actually, that cleared up a few things, thanks.
11:07 notviki yey
11:08 regnarg However, that is a problem with CALLER::, not :context
11:08 regnarg I think there might be valid use cases for :context other than CALLER::
11:08 xtreak joined #perl6
11:08 notviki Ah right, sorry. I misremembered
11:09 Rawriful joined #perl6
11:09 regnarg You remembered correctly. jnthn says "That context named arg should also go away, it's too open to abuse."
11:10 regnarg I just think that is unnecessarily harsh. Perhaps we could just warn in the documentation that it may break in some cases.
11:10 FROGGS joined #perl6
11:11 regnarg But for example if a prepare a package with a "clean" namespace for the EVAL and want to run it in the context of the package, that should be safe (AFIK)
11:12 Actualeyes joined #perl6
11:14 wamba joined #perl6
11:15 notviki Man, I had a terrible night of sleep... I was freaking DEBUGGING stuff in my dream. And arguing with AlexDaniel  about what the correct behaviour should be
11:16 pierre_ joined #perl6
11:17 pmurias_ joined #perl6
11:17 pmurias joined #perl6
11:18 pmurias what does the p6return op do?
11:20 pmurias notviki: that means we can expect some RT tickets to be closed after you eat a good breakfast? ;)
11:27 notviki heh, sadly no :)
11:27 moritz during my studies I once dreamed of differential equations
11:28 dalek doc: 18b6f6a | samcv++ | / (2 files):
11:28 dalek doc: CSS: make <regexidentifiers> darker and color token/rule nicely
11:28 dalek doc: review: https://github.com/perl6/doc/commit/18b6f6ae15
11:28 samcv this looks pretty nice https://a.uguu.se/SdTyLDSPSyou_​Screenshot_20161228_032639.png
11:28 samcv before https://a.uguu.se/3kW5CjdQmBWr_​Screenshot_20161228_032701.png
11:29 samcv maybe TOP should be bold?
11:29 moritz samcv++
11:29 samcv the bold?
11:30 samcv i made it slightly different shade but you can't really tell
11:30 samcv it's hard finding colors for a white background
11:30 notviki m: grammar { rule meows { .+ } }.parse('Look ma, no TOP!', :rule<meows>).say
11:30 camelia rakudo-moar 5023bf: OUTPUT«「Look ma, no TOP!」␤»
11:32 samcv :P
11:33 moritz samcv: the ++ was for the color improvements; I'm undecided about bold TOP
11:33 samcv ah k
11:33 moritz the upper-casing already shouts
11:33 samcv yeah
11:36 TEttinger joined #perl6
11:43 b2gills1 joined #perl6
11:44 rburkholder joined #perl6
11:45 notviki pmurias: if you find out may be worth documenting it in https://github.com/rakudo/rakudo/b​lob/nom/docs/ops.markdown#p6return
11:45 rpburkholder joined #perl6
11:46 pierre_ joined #perl6
11:49 raschi joined #perl6
11:51 pmurias notviki: yes, that would likely help new devs
11:51 pmurias notviki: I'm thinking of writing tests for the p6*ops
11:59 ssm joined #perl6
12:03 astj joined #perl6
12:09 pmurias I'm not sure if testing them from the NQP or Perl 6 level would be better
12:13 samcv pmurias, can you revert the moarvm pull that got done last?
12:14 samcv its been breaking things and i don't have the power to undo it
12:17 bjz_ joined #perl6
12:19 mojca joined #perl6
12:19 mojca how could I build MoarVM against the system libuv?
12:19 mojca to avoid the conflict with existing system libuv
12:20 Gasher joined #perl6
12:28 pmurias samcv: you mean your last PR to the MoarVM?
12:28 samcv yeah
12:28 samcv that
12:28 pmurias I don't think I have a MoarVM commit bit either :/
12:29 samcv oh sorry it was merged in nvm
12:29 samcv [Coke], ping
12:31 pmurias samcv: you could unbump MoarVM in nqp if the PR is causing trouble
12:31 samcv true
12:31 samcv but i don't think that will magically undo it
12:36 Rogbro joined #perl6
12:58 lucasb joined #perl6
13:08 mojca does anyone have a clue why I get '3rdparty/libatomic_ops/src/atomic_ops.h:376:5: error: Cannot implement AO_comon thispal on this architecture.' on some machines with macOS, but not the others with the same version? (full log is at the end of https://build.macports.org/builders/port​s-10.7_x86_64_legacy-builder/builds/1923​7/steps/install-dependencies/logs/stdio)
13:08 mojca actually it seems as if libatomic_ops @7.4.4 works fine, but the built-in library doesn't
13:10 notviki mojca: FWIW, there's also #moarvm . I don't know if all the people in there are also here.
13:13 mojca notviki: thanks, I'll keep bothering others on the other channel
13:29 dalek doc: 6bc89de | coke++ | htmlify.p6:
13:29 dalek doc: Order use statements.
13:29 dalek doc:
13:29 dalek doc: (local vs. external)
13:29 dalek doc: review: https://github.com/perl6/doc/commit/6bc89dedbe
13:29 dalek doc: 925b13c | coke++ | doc/ (3 files):
13:29 dalek doc: remove trailing whitespace
13:29 dalek doc: review: https://github.com/perl6/doc/commit/925b13c47c
13:29 dalek doc: 0904dc8 | coke++ | xt/ (2 files):
13:29 dalek doc: learn new words
13:29 dalek doc: review: https://github.com/perl6/doc/commit/0904dc8a1f
13:29 AlexDaniel notviki: huh, did you actually see IRC window in your dream?
13:31 bjz joined #perl6
13:35 notviki AlexDaniel: yeah, something like that
13:36 tbrowder good am or pm, #perl6
13:36 notviki \o
13:37 tbrowder can someone please turn on the switch that will show commits to perl6-mode here?
13:38 samcv perl6-mode?
13:38 tbrowder yes: github:perl6/perl6-mode
13:39 notviki tbrowder: done
13:40 tbrowder t'anks!
13:42 tbrowder notviki: i assume you will morph into another alias on midnight, 31 dec, UTC?
13:45 AlexDaniel tbrowder++
13:47 notviki m: DateTime.new(:2017year).in-timezone(-5*3600).say
13:47 camelia rakudo-moar 5023bf: OUTPUT«2016-12-31T19:00:00-05:00␤»
13:49 rightfold m: :2017year
13:49 camelia rakudo-moar 5023bf: OUTPUT«WARNINGS for <tmp>:␤Useless use of ":2017year" in sink context (line 1)␤»
13:52 notviki it's a Pair; same as year => 2017 or :year(2017)
13:57 iH2O joined #perl6
14:01 sammers joined #perl6
14:01 kalkin- joined #perl6
14:01 lucasb m: sub infix:<:>($a) { 42 }; say (10 :)
14:01 camelia rakudo-moar d35efb: OUTPUT«42␤»
14:02 lucasb somehow, I'm able to call an infix with only one operand?
14:02 Actualeyes joined #perl6
14:03 notviki lucasb: you can all it with any amount of arguments
14:04 lucasb idk, this is something special about ":", it expectecly dies with other operator name
14:04 notviki m: sub infix:<z> is assoc<list> { dd @_ }; 10 z 20 z 30 z 50 z 60
14:04 lucasb *expectedly
14:04 camelia rakudo-moar d35efb: OUTPUT«[10, 20, 30, 50, 60]␤»
14:05 notviki Might be something in the grammar affecting it. The above doesn't work with it
14:05 lucasb m: sub infix:<z>(|c) { c }; say (10 z 20)
14:05 camelia rakudo-moar d35efb: OUTPUT«\(10, 20)␤»
14:05 lucasb m: sub infix:<z>(|c) { c }; say (10 z)
14:05 camelia rakudo-moar d35efb: OUTPUT«5===SORRY!5=== Error while compiling <tmp>␤Missing required term after infix␤at <tmp>:1␤------> 3sub infix:<z>(|c) { c }; say (10 z7⏏5)␤    expecting any of:␤        prefix␤        term␤»
14:05 AlexDaniel alright, 7k queries to go through
14:05 lucasb m: sub infix:<:>(|c) { c }; say (10 :)
14:05 camelia rakudo-moar d35efb: OUTPUT«\(10)␤»
14:05 AlexDaniel weeeeee!
14:06 lucasb ^^ noticed the difference with ":" ?
14:06 lucasb it parses as valid syntax
14:09 dalek doc: 7b663ba | coke++ | doc/Language/operators.pod6:
14:09 dalek doc: Clear up confusion on temp
14:09 dalek doc:
14:09 dalek doc: Fixes #1085
14:09 dalek doc: review: https://github.com/perl6/doc/commit/7b663ba0a4
14:09 synopsebot6 Link: http://doc.perl6.org/language/operators
14:13 cdg joined #perl6
14:20 iH2O left #perl6
14:34 notviki FWIW: a ton of IO::Path methods and subs are documented as returning failures, but in reality they throw
14:34 notviki There's a ticket for .chdir, but I see most of the routines have the same issue: https://rt.perl.org/Ticket/Display.html?id=130418
14:34 [Coke] samcv: when you add whitespace to files to trigger a new build, that ends up failing one of the xt/ tests.
14:35 notviki you can trigger by adding '-' in '------' lines in readme
14:35 samcv nice ok
14:35 samcv does any change trigger rebuild? any push? or no
14:36 notviki yeah any push
14:36 samcv we should have a dedicated like. scratch file
14:36 samcv add or delete a space and push
14:36 cyphase joined #perl6
14:36 notviki samcv: what is it for? To fetch new atom highlights?
14:36 samcv yeah
14:37 notviki We should make the build script check the atom repo for new updates instead
14:37 samcv that would be cool
14:37 notviki It's this script https://github.com/perl6/doc/bl​ob/master/util/update-and-sync
14:38 [Coke] samcv: you pinged?
14:38 samcv oh. the moar got reverted. so you are not needed regarding that
14:41 lucasb m: class C { method foo { say 10 } }; foo C.new:
14:41 camelia rakudo-moar d35efb: OUTPUT«10␤»
14:41 lucasb strange, locally in my machine the above snippet is failing, but in camelia it works O.o
14:42 lucasb I get a 'Undeclared routine: foo'
14:43 lucasb can someone test it locally? :)
14:45 notviki you forgot the : at the end locally
14:46 lucasb no, I didn't, even with the ":" at the end of the line, the error happens
14:46 notviki I don't believe you.
14:46 regnarg I can confirm this
14:46 notviki :S
14:46 regnarg on 2016.11
14:47 lucasb echo 'class C { method foo { say 10 } }; foo C.new:' | perl6 -
14:47 notviki Oh, it's broken in REPL
14:47 lucasb ^^ this triggers, but 'perl6 -e' doesn't
14:48 regnarg But this does: echo 'class C { method foo { say 10 } }; foo C.new:' >/tmp/x.p6; perl6 /tmp/x.p6
14:49 lucasb regnarg: thanks for confirming :)
14:49 notviki well, "locally" to me means with -e '' or a script
14:49 raschira joined #perl6
14:50 notviki .oO( only weirdos use the REPL... )
14:50 notviki ops, did I think that out loud :o
14:50 lucasb perl6 -e $'class C { method foo { say 10 } }; foo C.new:\n'
14:51 lucasb ^^ bash syntax to insert a newline at the end
14:51 notviki :S
14:52 lucasb :)
14:54 notviki $ perl6 --target=parse -e 'say "hi":'
14:54 notviki ===SORRY!===
14:54 notviki Expected native int argument, but got num
14:59 domidumont joined #perl6
15:04 [Coke] gfldex: why do we need #130407 ?
15:04 synopsebot6 Link:  https://rt.perl.org/rt3//Publ​ic/Bug/Display.html?id=130407
15:04 [Coke] (we already had a few dozen macro tickets...)
15:06 Axord joined #perl6
15:06 newbie1 joined #perl6
15:08 [ptc] hrm, it seems that perl.org's mail server doesn't use TLS...
15:14 pierre_ joined #perl6
15:16 Actualeyes joined #perl6
15:21 kalkin- joined #perl6
15:21 teksteiner joined #perl6
15:22 kalkin- Is S22 up to date? If not what is the autoritative sourrce for that?
15:24 notviki kalkin-: all of speculations are historical documents and are not kept up to date.
15:25 notviki authoritative source would be the roast ( https://github.com/perl6/roast/ ).
15:25 notviki it's possible this stuff is poorly tested/document tho
15:25 kalkin- I see thanks
15:30 dalek doc: b44666b | coke++ | doc/Language/ (2 files):
15:30 dalek doc: Correction of how temp inits a variable.
15:30 dalek doc:
15:30 dalek doc: Move the comparison to p5 (which was inline on temp) instead
15:30 dalek doc: to local in the p5 section.
15:30 dalek doc:
15:30 dalek doc: Fixes #1085
15:30 dalek doc: review: https://github.com/perl6/doc/commit/b44666b10a
15:35 pmurias kalkin-: the docs are supposed to be taking over the documentation role from the synopsis
15:36 kalkin- They are not as detailed. Only after reading S6 I really understand subs and signatures
15:36 [Coke] the synopsis don't necessarily describe rality.
15:36 [Coke] *reality.
15:37 [Coke] (but yes, doc site always needs improvement.)
15:39 sammers joined #perl6
15:39 kalkin- Perl6 is a HUGE language. The lack of a written down specification can be really harmful.(I know whining doesn't help)
15:40 [Coke] It is written down. just in Perl 6. :|
15:41 notviki kalkin-: it's a simple problem of labour: any change would need hunting down test, docs, AND specs on top of it.
15:41 AlexDaniel kalkin-: well, perhaps you can volunteer to write a “specification” for this HUGE language and keep it up to date
15:41 [Coke] you can help though: please open tickets on perl6/docs when you find that something isn't explained (or not explained correctly)
15:41 [Coke] AlexDaniel: that's not really helpful.
15:41 * notviki never even read the specs
15:42 samcv Spurius Carvilius Ruga (fl. 230 BC) was the freedman of Spurius Carvilius Maximus Ruga. He is often credited with inventing the Latin letter G. His invention would have been quickly adopted in the Roman Republic, because the letter C was, at the time, confusingly used both for the /k/ and /g/ sounds.
15:42 samcv interesting
15:43 kalkin- AlexDaniel no I'm not but I will try to discipline myself to write down my documentation issues and at least open an issue for them
15:43 AlexDaniel [Coke]: why not? The person is saying that we need a spec-like document. I'm saying that it can happen if he is willing to work on it (because at the moment nobody else is)
15:43 notviki I guess he got annoyed with people mispronouncing his name? :)
15:43 samcv yeah
15:43 samcv SPVRIVS CARVILIVS RVCA (At that time, "U" and "V" were also the same letter).
15:44 samcv how his name was spelled
15:44 [Coke] AlexDaniel: he's raising a valid point about the fact that our docs need work. telling him to go write the docs himself is not helpful.
15:44 samcv Garvilus
15:44 samcv hah.
15:45 notviki AlexDaniel: well... we're not really looking to keep specs up to date.
15:45 [Coke] kalkin-: (open issues) perfect. Thanks!
15:45 [Coke] notviki: please don't say "specs" if you mean "synopses".
15:45 notviki Expecting a single person to be able to keep it up to date is unrealistic
15:45 kalkin- AlexDaniel while I completely agree with the attitude:"do it your self or pay some one to do it", the tone you are choosing is not the nice one for which #perl6 is famous
15:45 AlexDaniel notviki: in fact, I was thinking about throwing away some of the parts…
15:45 samcv of the spec?
15:46 AlexDaniel kalkin-: you are completely right, I'm not the best person to represent perl6 community
15:46 AlexDaniel samcv: yes
15:46 samcv i try and update the specs as i see them being different but unlike the docs
15:46 samcv there's not an effort to improve _them_ specifically, while for the docs there is
15:46 samcv the end point should be that the docs contain all the information
15:47 samcv kalkin-, you could open a bug with the docs github issue tracker
15:47 kalkin- Oh I don't need to use the rt system? This is nice
15:48 raschira SPVRIVSCARVILIVSRVCA --> Classical Latin didn't have spaces either.
15:48 notviki :o
15:49 samcv who needs lowercase letters
15:49 AlexDaniel whoneedsspaces
15:50 raschira 'lowercase' for them meant the ones done by hand and uppercase was done with the chisel.
15:50 [Coke] samcv: kalkin- nope, docs are on github.
15:50 samcv THEQVICKBROWNDOCJVMPEDOVERTHEQVICKFOX
15:51 raschira Is that a J in there? It's the same letter as I in Latin. "Iesus"
15:51 samcv wait they had no J?
15:51 samcv so no U and no G and no J either?
15:51 samcv i guess all the curvy letters didn't exist?
15:52 raschira J came from Hebrew. Lating didn't had it.
15:52 raschira Latin*
15:52 samcv nice
15:53 samcv who needs vowels actually
15:53 samcv arabic only has implicit vowels
15:54 samcv there was some arabic trending hashtag on twitter, i put it in google translate. it's not a word so it just has like random letters with _ where the vowels would go
15:54 raschira IESVSNAZARENVSREXIVDAEORVM
15:55 samcv hard to read with my 11pixel high font
15:55 samcv all smashed together
15:56 samcv #طالب_يطلق_النار_داخل_مدرسته
15:56 samcv google translates it as # Talib_ataleg_nar_dakhl_msth
15:56 samcv don't think there's spaces in arabic either
15:56 raschira We wite TRAIANO as Trajano.
15:57 raschira or Trajan.
15:57 notviki It says "Student shoots inside the school"
15:57 notviki you need to replace the underscores for google translate to understand it
15:57 notviki replace with spaces
15:57 kalkin- Hmm S22 looks kind of like the most authoritative source besides roast
15:57 kalkin- http://ugexe.com/perl6-distrib​ution-thoughts-and-proposals/
15:57 samcv are there underscores in there
15:57 samcv oh i see
15:58 samcv prolly makes it easier to read with underscores? since no spaces in arabic right?
15:59 samcv There are some styles, however, that favour vertical alignment over spacing - these are the Nastaliq styles used for formal writing in Iran and especially Pakistan. In these, words will be written along a diagonal, rather than horizontal , and the start of the next word, as you cant see below (the text reads 'Font Nastaliq') - the first letter of the second word is set directly above the last letter of the first word
15:59 samcv oh that makes sens
15:59 samcv https://qph.ec.quoracdn.net/main-qimg-2a0d0e40c​0947db04c3c3a75d5b006f0-c?convert_to_webp=true see pic
15:59 kalkin- Docs are missing CompUnit api documentation
15:59 kalkin- I'm on mobile now I will create an issue later
16:00 samcv thanks :)
16:01 pmurias kalkin-: re lack of written specification, would quality reference docs (when they exist) solve a lot of the problem?
16:02 kalkin- Yes
16:02 kalkin- I should be able to create my own package manager and even perl 6 implementation from something
16:03 raschira The "something" you should be use to be able to recreate the language from is roast.
16:06 samcv almost forgot what i was doing. some more research into some unicode things
16:07 samcv wouldn't that be better worked as the 'target'?
16:07 samcv than what it would be created from
16:09 raschira It would be created from C or Haskell or NQP or any other language, they're all equivalent in this regard.
16:09 kalkin- A test suite is for checking correctness afaik
16:09 raschira An spelled-out spec too.
16:10 pmurias a test suite can help out in understanding how something works when the docs are unclear and/or missing
16:11 pmurias but I don't think that the need for good docs is really debatable
16:15 CIAvash joined #perl6
16:17 ggoebel joined #perl6
16:17 notviki docs? pfft... use the source!
16:17 notviki :)
16:22 ugexe the CompUnit api is pretty well commented in the code itself
16:23 ugexe https://github.com/rakudo/rakudo/blob​/nom/src/core/CompUnit/Repository.pm
16:28 notviki so no one rakudobugged the foo C.new: thing?
16:28 notviki cool...
16:29 ChoHag joined #perl6
16:29 ugexe you can create a package manager without using compunit at all
16:30 sammers joined #perl6
16:30 notviki ticketed https://rt.perl.org/Ticket/Display.html?id=130425
16:33 notviki AlexDaniel: combinations now fixed
16:33 notviki Got more?
16:40 khw joined #perl6
16:42 labster joined #perl6
16:42 AlexDaniel notviki: there's a pile of stuff, but it'll take some time to get something useful out of it
16:44 notviki :(
16:44 dugword joined #perl6
16:45 AlexDaniel commit: 2015.12,HEAD multi regex-dispatch(/fo+/) { }; multi regex-dispatch(/ba+/)  {}; regex-dispatch("foo");
16:45 committable6 AlexDaniel, https://gist.github.com/7342​14dab5acba58a991631ba15861d7
16:45 AlexDaniel notviki: what about this?
16:45 AlexDaniel notviki: current error message doesn't even give a line number
16:45 AlexDaniel bisect: multi regex-dispatch(/fo+/) { }; multi regex-dispatch(/ba+/)  {}; regex-dispatch("foo");
16:45 bisectable6 AlexDaniel, Bisecting by output (old=2015.12 new=d86c419) because on both starting points the exit code is 1
16:45 notviki huh
16:45 bisectable6 AlexDaniel, bisect log: https://gist.github.com/9d7d​d2e3b880ba467a8ccaddb90384c0
16:46 bisectable6 AlexDaniel, (2016-12-03) https://github.com/rakudo/rakudo/commit/​5baa064640ce198244e6ce3b9d9d3fa63ee722ff
16:46 notviki m: sub (/foo/) { say "wat" }("foobar")
16:46 AlexDaniel commit: 5baa064^,5baa064 multi regex-dispatch(/fo+/) { }; multi regex-dispatch(/ba+/)  {}; regex-dispatch("foo");
16:46 camelia rakudo-moar d86c41: OUTPUT«===SORRY!===␤Cannot find method 'compile_time_value' on object of type QAST::Op␤»
16:46 committable6 AlexDaniel, https://gist.github.com/afb5​e765d88b39c6a06d3b872a7d5779
16:46 notviki committable6: 2015.12 sub (/foo/) { say "wat" }("foobar")
16:46 committable6 notviki, ¦«2015.12»: Type check failed in binding <anon>; expected Int but got Str␤  in sub  at /tmp/RqOplQuuv9 line 1␤  in block <unit> at /tmp/RqOplQuuv9 line 1␤ «exit code = 1»
16:46 notviki oh, ok
16:46 AlexDaniel yea and it seems to be your fault as well? :)
16:46 notviki I thought it was working before
16:47 notviki there's an RFC ticket to allow regex literals
16:48 notviki Nah, I made it better. Now it crashes instead of doing the wrong thing :P
16:48 AlexDaniel notviki: both seem to be SORRY
16:49 AlexDaniel notviki: I'm looking at https://gist.github.com/Whateverabl​e/734214dab5acba58a991631ba15861d7
16:49 notviki I'm looking at:
16:49 notviki committable6: 2015.12 sub (/foo/) { say "wat" }("foobar")
16:49 committable6 notviki, ¦«2015.12»: Type check failed in binding <anon>; expected Int but got Str␤  in sub  at /tmp/FdSPNdsU0T line 1␤  in block <unit> at /tmp/FdSPNdsU0T line 1␤ «exit code = 1»
16:49 notviki committable6: 2015.12 sub (/foo/) { say "wat" }()
16:49 committable6 notviki, ¦«2015.12»: Too few positionals passed; expected 1 argument but got 0␤  in sub  at /tmp/9RTGV22bRL line 1␤  in block <unit> at /tmp/9RTGV22bRL line 1␤ «exit code = 1»
16:49 notviki committable6: 2015.12 sub (/foo/) { say "wat" }(3)
16:49 committable6 notviki, ¦«2015.12»: Constraint type check failed for parameter '<anon>'␤  in sub  at /tmp/b_BLP_LqFH line 1␤  in block <unit> at /tmp/b_BLP_LqFH line 1␤ «exit code = 1»
16:49 notviki committable6: 2015.12 sub (/foo/) { say "wat" }(0)
16:49 committable6 notviki, ¦«2015.12»: wat
16:50 notviki lol
16:50 AlexDaniel o_o
16:50 notviki committable6: 2016.12 sub (/foo/) { say "wat" }(0)
16:50 committable6 notviki, ¦«2016.12»: ===SORRY!===␤Cannot find method 'compile_time_value' on object of type QAST::Op «exit code = 1»
16:50 skids joined #perl6
16:52 AlexDaniel yea… well… That's LTA for sure
16:53 andrewalker joined #perl6
16:56 wamba joined #perl6
16:58 troys joined #perl6
17:02 AlexDaniel commit: HEAD class A { has $.wut = [] }; my $a = A.new; $a.wut = [1,2,3]; $a.wut
17:02 committable6 AlexDaniel, ¦«HEAD»:
17:02 AlexDaniel commit: HEAD class A { has $.wut = [] }; my $a = A.new; $a.wut = [1,2,3]; say $a.wut
17:02 committable6 AlexDaniel, ¦«HEAD»: [1 2 3]
17:02 AlexDaniel commit: 2015.12 class A { has $.wut = [] }; my $a = A.new; $a.wut = [1,2,3]; say $a.wut
17:02 committable6 AlexDaniel, ¦«2015.12»: Cannot assign to a readonly variable or a value␤  in block <unit> at /tmp/GzCq8kX2_c line 1␤ «exit code = 1»
17:03 AlexDaniel bisect: class A { has $.wut = [] }; my $a = A.new; $a.wut = [1,2,3]; say $a.wut
17:03 bisectable6 AlexDaniel, Bisecting by exit code (old=2015.12 new=b0e61f3). Old exit code: 1
17:03 bisectable6 AlexDaniel, bisect log: https://gist.github.com/fde9​62e59837ecb5ac8b1e69970cbbf6
17:03 bisectable6 AlexDaniel, (2016-03-02) https://github.com/rakudo/rakudo/commit/​fdd37a9e0bef16eb3e4bb24ddd59247e379b5038
17:04 AlexDaniel notviki: my understanding is that it should not allow to set it if it's not 「is rw」
17:04 notviki m: class A { has $.wut = [] }; my $a = A.new; $a.wut = [1,2,3]; say $a.wut.elems
17:04 camelia rakudo-moar d86c41: OUTPUT«3␤»
17:05 notviki m: class A { has $.wut }; my $a = A.new; $a.wut = [1,2,3]; say $a.wut.elems
17:05 camelia rakudo-moar d86c41: OUTPUT«Cannot modify an immutable Any␤  in block <unit> at <tmp> line 1␤␤»
17:05 notviki AlexDaniel: yeah, I'd expect the same
17:05 notviki m: class A { has @.wut }; my $a = A.new; $a.wut = [1,2,3]; say $a.wut.elems
17:05 camelia rakudo-moar d86c41: OUTPUT«3␤»
17:05 notviki m: class A { has %.wut }; my $a = A.new; $a.wut = [1,2,3,4]; say $a.wut
17:05 camelia rakudo-moar d86c41: OUTPUT«{1 => 2, 3 => 4}␤»
17:06 holli joined #perl6
17:07 notviki $ perl6 -e 'm: say combinations 2147483647, 5'
17:07 notviki First parameter out of range. Is: 2147483647, should be in 1..2147483647
17:07 notviki fun one :)
17:07 notviki (32-bit box)
17:11 ugexe so i think we should be able to version the history of the p6 ecosystem via `git log -Gversion -p META6.json` and turning those commit ids into https://github.com/$user/$re​po/archive/$commit-id.tar.gz links
17:12 AlexDaniel commit: all class Foo { submethod BUILD { fail "noway" } } ; dd Foo.new
17:12 committable6 AlexDaniel, https://gist.github.com/fdf3​c8eaa66a4b98cce117f7a24a1267
17:12 samcv ugexe, going to bed right now. will respond to both those comments you made tomorrow. cheers
17:12 AlexDaniel notviki: is this related to your latest ticket about stuff returning a failure instead of throwing? ↑
17:12 samcv is there a .remind?
17:12 AlexDaniel yes
17:12 samcv .remind samcv test
17:12 samcv test
17:12 AlexDaniel .in 5h say hello
17:12 yoleaux AlexDaniel: I'll remind you at 22:12Z
17:13 samcv will it be AT that time
17:13 samcv or the next time i talk
17:13 AlexDaniel or probably this
17:13 AlexDaniel .tell AlexDaniel hello
17:13 yoleaux AlexDaniel: Talking to yourself is the first sign of madness.
17:13 AlexDaniel t
17:13 AlexDaniel :(
17:13 samcv that sucks
17:13 samcv would be nice if you could do that
17:13 moritz .in 5s say hello
17:13 yoleaux moritz: I'll remind you at 17:13Z
17:13 yoleaux moritz: say hello
17:13 AlexDaniel2 .tell AlexDaniel hello
17:13 yoleaux AlexDaniel2: I'll pass your message to AlexDaniel.
17:13 moritz it doesn't wait till I speak up
17:14 notviki .in -5s say "hello"
17:14 yoleaux notviki: I'll remind you at 17:14Z
17:14 yoleaux notviki: say "hello"
17:14 notviki heh
17:14 AlexDaniel .tell samcv “ugexe, going to bed right now. will respond to both those comments you made tomorrow. cheers”
17:14 yoleaux 17:13Z <AlexDaniel2> AlexDaniel: hello
17:14 yoleaux AlexDaniel: I'll pass your message to samcv.
17:14 samcv you better yoleaux
17:14 samcv .tell Samcv hi
17:14 yoleaux samcv: Talking to yourself is the first sign of madness.
17:14 yoleaux 17:14Z <AlexDaniel> samcv: “ugexe, going to bed right now. will respond to both those comments you made tomorrow. cheers”
17:14 samcv[ .tell samcv{ test
17:14 yoleaux samcv[: Talking to yourself is the first sign of madness.
17:14 samcv[ dammit
17:14 notviki heh
17:14 AlexDaniel wtf? xD
17:15 samcv\ AlexDaniel, on irc | is uppercase \
17:15 samcv\ and [] are lowercase {}
17:15 notviki AlexDaniel: on IRC protocol [ and { are capital/lowercase
17:15 samcv\ _ uppercase -
17:15 mst lol
17:15 AlexDaniel oh… really?? O_o
17:15 samcv\ yep
17:15 notviki The RFC says "Thanks to its Scandinavian origin..."
17:15 mst because of course IRC is case preserving but case insensitive
17:16 `\\_--_|| my face when i can't get to sleep <
17:16 `\\_--_|| also a valid irc name
17:16 `\\_--_|| .tell `\\_--_|| test
17:16 yoleaux `\\_--_||: Talking to yourself is the first sign of madness.
17:16 `\\_--_|| .tell `\\____\| test
17:16 yoleaux `\\_--_||: I'll pass your message to `\\____\|.
17:16 AlexDaniel just tell to “samcv”, then change your nickname back. As simple as that
17:16 AlexDaniel just don't talk after that
17:17 moritz not talking? sounds hard
17:17 `\\_--_|| i think the bot messed up
17:17 `\\_--_|| pretty sure i said to tell identical as long as - and _ are same
17:17 `\\_--_|| i think they are
17:17 `\\_--_|| er
17:17 AlexDaniel it's not written in perl 6, sooo personally I don't really care :)
17:18 samcv test
17:18 moritz \\____\| also misses one | at the end
17:18 samcv oh did i mess up
17:18 samcv does it though?
17:18 samcv \| and || are the same on irc for nicknames
17:18 samcv same user
17:19 samcv well i think i'm actually going to be asleep
17:19 ` heh, registered
17:20 AlexDaniel bisect: class Foo { submethod BUILD { fail "noway" } } ; dd Foo.new
17:20 bisectable6 AlexDaniel, Bisecting by exit code (old=2015.12 new=db1836a). Old exit code: 1
17:21 bisectable6 AlexDaniel, bisect log: https://gist.github.com/35d6​ce075c417ff6501bcc2f6fe99c1f
17:21 bisectable6 AlexDaniel, (2016-06-11) https://github.com/rakudo/rakudo/commit/​d5e09d96951e030d050dc9727414f571548528ea
17:21 mst damnit, samcv changed back too quickly
17:21 samcv why
17:21 mst samcv: because I'm an ass and if I'd caught it in time I could've dropped a +b in #perl and you can't change nick while on a channel you're banned in ;)
17:21 samcv yeah
17:22 mst when I was opping #freenode I used to wait until particularly annoying trolls picked a particularly embarassing nick and then drop a +b to make them stuck there
17:22 acrussell joined #perl6
17:22 samcv they could leave the room?
17:23 mst that didn't make it any less funny tbh
17:23 samcv i once had my bot ban me while my nick was switched. kinda sucked
17:23 mst in your case it would've stopped being funny about 30 seconds after you realised what I'd done
17:23 samcv lol
17:23 samcv also night for realsies!
17:23 mst :D
17:29 AlexDaniel oh, wat
17:30 notviki ?
17:30 AlexDaniel commit: 2015.12 my @array[8]; say @array.elems; .say for @array
17:30 committable6 AlexDaniel, ¦«2015.12»: 8␤(Any)␤(Any)␤(Any)␤(Any)␤(Any)␤(Any)␤(Any)␤(Any)
17:30 RabidGravy boom!
17:30 AlexDaniel kinda makes sense, right?
17:30 AlexDaniel commit: HEAD my @array[8]; say @array.elems; .say for @array
17:30 committable6 AlexDaniel, ¦«HEAD»: 8␤X::TypeCheck::Binding exception produced no message␤  in block <unit> at /tmp/uibEO3sMLN line 1␤ «exit code = 1»
17:30 AlexDaniel ? O_o
17:31 RabidGravy I can see both tbh
17:31 zb joined #perl6
17:31 RabidGravy the latter could do with a message
17:32 AlexDaniel given that it is due to a yet another performance tweak, I'd say this was unintentional ( https://github.com/rakudo/rakudo/commit/​dcfd4ed01c0c4f8e29206a27e432bdd6bf8c12d0 )
17:32 RabidGravy shaped array and all
17:33 raschira Is the module ecosystem being rebuilt with new P6 versions?
17:34 notviki rebuilt how?
17:34 AlexDaniel raschira: why?
17:34 notviki what! where! how!
17:34 raschira To know if changes will break people's code.
17:35 notviki raschira: no
17:35 notviki raschira: we use the roast for that.
17:35 AlexDaniel we actually did that some time ago
17:36 notviki We did that for lexical loading branch
17:36 notviki But it's not common practice to test 700+ modules for every change
17:36 raschira For exemple, new GCC versions are tested by rebuilding Debian. P5 also is tested by running the CPAN tests.
17:36 AlexDaniel I'd actually love to see this being brought to life again
17:36 AlexDaniel http://smoke.perl6.org/report
17:37 notviki raschira: I guess we do test whatever modules come with Rakudo Star on each Star release
17:37 ugexe m: multi f($) { 1 }; multi f($, :$foo!) { 2 }; say f(42) # this is how i've worked with multis using "optional" named params
17:37 camelia rakudo-moar db1836: OUTPUT«1␤»
17:37 raschira Now that CPAN is almost supporting P6 modules, CPANtesters will be able to help.
17:37 [ptc] \o/
17:37 AlexDaniel \o/
17:38 notviki really?
17:39 notviki Considering the guy who runs the system said this: https://irclog.perlgeek.de/​mojo/2015-02-01#i_10042374
17:41 AlexDaniel /o\
17:42 [ptc] however, that comment is from almost two years ago.  Maybe he's since changed his mind?
17:43 AlexDaniel \o/
17:43 [ptc] .oO(hope dies last...)
17:44 [Coke] eh. can't spend too much time worrying about the haters.
17:44 raschira There are ways to deal with things like this, even if he doesn't want to help.
17:46 notviki Yeah, by running our own thing instead of constantly dealing with hate from Perl 5 people who view as as cancer that's invading onto their territory
17:47 timotimo sitting two rows behind mister rabbitson
17:47 timotimo ribasushi: :)
17:48 notviki Throw something at him. Tell 'im it's from me.
17:48 ugexe can you see? he is kinda tall
17:49 kyan joined #perl6
17:49 timotimo hes slouched in his seat
17:49 notviki timotimo: where are you at?
17:49 timotimo his wife next to him, too
17:49 timotimo 33c3
17:49 notviki ChaosCommunicationCongress2016 ?
17:50 AlexDaniel m: say (-∞^..^∞).in-range: 0/0
17:50 camelia rakudo-moar db1836: OUTPUT«True␤»
17:50 notviki m: say (-∞^..^∞).in-range: NaN
17:50 camelia rakudo-moar db1836: OUTPUT«Value out of range. Is: NaN, should be in -Inf^..^Inf␤  in block <unit> at <tmp> line 1␤␤»
17:51 notviki m: say (my int $)/(my int $)
17:51 camelia rakudo-moar db1836: OUTPUT«Attempt to divide by zero using div␤  in block <unit> at <tmp> line 1␤␤Actually thrown at:␤  in block <unit> at <tmp> line 1␤␤»
17:52 timotimo yes notviki
17:59 notviki m: say (-∞^..^∞).in-range: 0/0
17:59 camelia rakudo-moar db1836: OUTPUT«True␤»
17:59 notviki m: say (-∞^..^∞).in-range: Inf/Inf
17:59 camelia rakudo-moar db1836: OUTPUT«Value out of range. Is: NaN, should be in -Inf^..^Inf␤  in block <unit> at <tmp> line 1␤␤»
18:00 notviki AlexDaniel: I'd say it's wrong.
18:00 notviki IEEE 7.2 says ""the default result of an operation that signals the invalid operation exception shall be a quiet NaN that should provide some diagnostic information. These operations are:
18:00 notviki [...] e) division: division(0, 0) or division(∞, ∞)"
18:01 cooper joined #perl6
18:01 cooper joined #perl6
18:01 notviki Prolly should just throw div-by-zero
18:09 AlexDaniel haha, this is a fun one
18:09 AlexDaniel m: dd max(Str, Failure.new).WHAT; # Really!?
18:09 camelia rakudo-moar db1836: OUTPUT«Failure␤»
18:09 AlexDaniel not this one
18:09 AlexDaniel but this
18:09 AlexDaniel commit: 2015.12 dd max(Str, Failure.new).WHAT; # Really!?
18:09 committable6 AlexDaniel, ¦«2015.12»: Num
18:09 AlexDaniel xD
18:10 notviki lulz
18:10 notviki m: dd max(Str, Failure.new)
18:10 camelia rakudo-moar db1836: OUTPUT«Failure.new(exception => X::AdHoc.new(payload => "Failed"), backtrace => Backtrace.new)␤»
18:10 notviki You cheated!
18:10 notviki m: say max(Str, Failure.new)
18:10 camelia rakudo-moar db1836: OUTPUT«Failed␤␤Actually thrown at:␤  in block <unit> at <tmp> line 1␤␤»
18:12 notviki commit: 2015.12 dd max(Str, Failure.new)
18:12 committable6 notviki, ¦«2015.12»: -Inf
18:12 notviki ah
18:13 AlexDaniel you fixed it already
18:23 lukaramu joined #perl6
18:24 pyrimidine joined #perl6
18:25 AlexDaniel u: 5
18:25 unicodable6 AlexDaniel, U+106D MYANMAR SIGN WESTERN PWO KAREN TONE-5 [Mc] (◌ၭ)
18:25 unicodable6 AlexDaniel, U+1089 MYANMAR SIGN SHAN TONE-5 [Mc] (◌ႉ)
18:25 unicodable6 AlexDaniel, U+108F MYANMAR SIGN RUMAI PALAUNG TONE-5 [Mc] (◌ႏ)
18:25 espadrine joined #perl6
18:26 AlexDaniel u: 「5̧」
18:26 unicodable6 AlexDaniel, U+0035 DIGIT FIVE [Nd] (5)
18:26 unicodable6 AlexDaniel, U+0327 COMBINING CEDILLA [Mn] (◌̧)
18:26 unicodable6 AlexDaniel, U+FF62 HALFWIDTH LEFT CORNER BRACKET [Ps] (「)
18:26 unicodable6 AlexDaniel, U+FF63 HALFWIDTH RIGHT CORNER BRACKET [Pe] (」)
18:26 AlexDaniel ok
18:26 unicodable6 AlexDaniel, https://gist.github.com/a7e5​3bcf412329ffa1450cff50ef686a
18:42 kalkin- joined #perl6
18:44 AlexDaniel commit: 2015.12,HEAD react { whenever Promise.in(1) { say "timeout"; last }; whenever (start { 42 }) { .say } }; say "done"
18:44 committable6 AlexDaniel, ¦«2015.12»: 42␤timeout␤done␤¦«HEAD»: 42␤timeout␤«timed out after 10 seconds, output»:  «exit signal = SIGHUP (1)»
18:58 hankache joined #perl6
18:59 hankache good evening #perl6
18:59 notviki \0
19:00 AlexDaniel m: DateTime.new("2016-12-31T23:59:60")
19:00 camelia rakudo-moar db1836: ( no output )
19:00 AlexDaniel m: DateTime.new("2016-12-31T23:59:61")
19:00 camelia rakudo-moar db1836: OUTPUT«Second out of range. Is: 61, should be in ^61␤  in block <unit> at <tmp> line 1␤␤»
19:01 notviki That was broken
19:01 notviki (:60 is a leapsecond this year)
19:02 AlexDaniel very nice choice to insert a leap second at exactly this moment, by the way
19:05 notviki Why?
19:05 AlexDaniel notviki: no one to fix stuff it it breaks
19:06 * notviki doesn't get it :\
19:06 notviki Oh, 'cause New Years
19:06 notviki Doesn't it span for like 28 hours? :)
19:07 notviki m: DateTime.new("2016-12-31T23:59:60").in-tim​ezone(999999999999999999999999999999).say
19:07 camelia rakudo-moar db1836: OUTPUT«Cannot unbox 100 bit wide bigint into native integer␤  in block <unit> at <tmp> line 1␤␤»
19:07 notviki m: DateTime.new("2016-12-31T23:5​9:60").in-timezone(2**63).say
19:07 camelia rakudo-moar db1836: OUTPUT«Second out of range. Is: 60, should be in 0..^60; a leap second can occur only at 23:59␤  in block <unit> at <tmp> line 1␤␤»
19:07 notviki ehehe
19:07 notviki bug
19:08 notviki m: DateTime.new("2016-12-31T23:59:​60").in-timezone(14**3600).say
19:08 camelia rakudo-moar db1836: OUTPUT«Cannot unbox 13707 bit wide bigint into native integer␤  in block <unit> at <tmp> line 1␤␤»
19:08 notviki oops
19:08 notviki m: DateTime.new("2016-12-31T23:59​:60").in-timezone(14*3600).say
19:08 camelia rakudo-moar db1836: OUTPUT«2017-01-01T13:59:60+14:00␤»
19:09 notviki m: DateTime.new("2016-12-31T23:59:​60").in-timezone(-14*3600).say
19:09 camelia rakudo-moar db1836: OUTPUT«2016-12-31T09:59:60-14:00␤»
19:09 AlexDaniel :S
19:11 notviki m: DateTime.new("2016-12-31T23:59:6​0").in-timezone(-8*365*3600).say
19:11 camelia rakudo-moar db1836: OUTPUT«2016-09-01T07:59:60-2920:00␤»
19:11 notviki m: DateTime.new("2016-12-31T23:59:6​0").in-timezone(-8*363*3600).say
19:11 camelia rakudo-moar db1836: OUTPUT«2016-09-01T23:59:60-2904:00␤»
19:11 acrussell joined #perl6
19:11 notviki wonder why 2**63 makes it crap out
19:13 jmerelo joined #perl6
19:14 geekosaur someone assumed timezone offsets were always small enough that they didn't need to check for overflow?
19:15 raschira Literally clock arithmetic. Nice.
19:15 jmerelo Hi
19:15 jmerelo (Probably) stupid array argument question
19:15 notviki m: DateTime.new(:60000000000000000000000000000000​0000000000000000000000000000000000000000000000​0000000000000000000000000000000000000000000000​0000000000000000000000000000000000year).say
19:15 camelia rakudo-moar db1836: OUTPUT«+60000000000000000000000000000000000000​0000000000000000000000000000000000000000000000​0000000000000000000000000000000000000000000000​0000000000000000000000000000-01-01T00:00:00Z␤»
19:16 AlexDaniel jmerelo: probably not :)
19:16 jmerelo What am I missing here? sub MAIN( @data ) { say @data };
19:16 notviki jmerelo: *@data
19:16 notviki in sig
19:16 AlexDaniel why *? Why not +?
19:16 jmerelo array arguments must be always slurpy?
19:17 * geekosaur thinks notviki went at the most common answer, tbh
19:17 AlexDaniel and what makes * more common than + ? :)
19:17 AlexDaniel besides the fact that + is rather new
19:17 geekosaur oh, but MAIN so maybe correct anyway
19:17 AlexDaniel ahhh
19:17 AlexDaniel yes
19:18 AlexDaniel missed this part, yea
19:18 jmerelo But slurpy arguments can't be typed
19:18 notviki jmerelo: to MAIN, sure, you can also pass Str types into it (though with recently added experimental support for Enums, you can stick that too, though IIRC you can't have positionals as enum values? or can you)
19:19 geekosaur short answer: if you say @data then it expects an array as a single parameter, and you would have to figure out how to phrase an array that way as a command line parameter
19:19 AlexDaniel how can you pass an array as a single parameter?
19:19 raschira jmerelo: the MAIN signature has to be something the system can deal with.
19:19 labster joined #perl6
19:20 geekosaur thought I saw that being done with a subset of perl 6 syntax on the command line (which of course would need to be quoted against the shell parsing it)
19:20 notviki jmerelo: you can type them with where
19:20 notviki m: BEGIN $*ARGS='22 44 55'; sub MAIN (*@a where .all ~~ Int) { dd @a }
19:20 camelia rakudo-moar db1836: OUTPUT«5===SORRY!5=== Error while compiling <tmp>␤An exception occurred while evaluating a BEGIN␤at <tmp>:1␤Exception details:␤  Dynamic variable $*ARGS not found␤    in code  at <tmp> line 1␤␤»
19:20 geekosaur typed parameters for MAIN are a bit difficult anyway, since the only type the OS interface to command line parameters knows is strings
19:20 notviki m: BEGIN @*ARGS= <22 44 55>; sub MAIN (*@a where .all ~~ Int) { dd @a }
19:20 camelia rakudo-moar db1836: OUTPUT«[IntStr.new(22, "22"), IntStr.new(44, "44"), IntStr.new(55, "55")]␤»
19:21 notviki m: BEGIN @*ARGS= <22 44 x>; sub MAIN (*@a where .all ~~ Int) { dd @a }
19:21 camelia rakudo-moar db1836: OUTPUT«Usage:␤  <tmp> [<a> ...] ␤»
19:21 notviki seems to work
19:21 geekosaur so there are a bunch of gotchas in trying to type something like sub MAIN
19:21 notviki m: BEGIN @*ARGS= <True False>; sub MAIN (*@a where .all ~~ Bool) { dd @a }
19:21 camelia rakudo-moar db1836: OUTPUT«Usage:␤  <tmp> [<a> ...] ␤»
19:21 notviki huh
19:22 notviki m: BEGIN @*ARGS= <True>; sub MAIN (*@a where .all ~~ Bool) { dd @a }
19:22 camelia rakudo-moar db1836: OUTPUT«Usage:␤  <tmp> [<a> ...] ␤»
19:22 jmerelo It does not like that either sub MAIN ( Num :@data, Int :$max = 10 ) {
19:22 jmerelo perl6 text-chart.p6 --data 1 2 3 4 3 2
19:22 rightfold I have a program not written in Perl 6 that outputs TAP, and I want to call it from a Perl 6 test
19:22 rightfold Is that possible?
19:22 jmerelo Basically the problem seems to be you can't enter positionals here...
19:22 notviki rightfold: yes, we use TAP
19:22 notviki rightfold: even perl 5's `prove`
19:23 notviki m: BEGIN @*ARGS= <True False>; sub MAIN (Bool $x, Bool $y) { dd @a }
19:23 camelia rakudo-moar db1836: OUTPUT«5===SORRY!5=== Error while compiling <tmp>␤Variable '@a' is not declared␤at <tmp>:1␤------> 3alse>; sub MAIN (Bool $x, Bool $y) { dd 7⏏5@a }␤»
19:23 rightfold notviki: do I need anything special or can I just forward the other program's output?
19:23 notviki m: BEGIN @*ARGS= <True False>; sub MAIN (Bool $x, Bool $y) { dd [$x, $y] }
19:23 camelia rakudo-moar db1836: OUTPUT«[Bool::True, Bool::False]␤»
19:23 notviki Seems our enums parser doesn't do anything for slurpies
19:23 notviki m: BEGIN @*ARGS= <True False>; sub MAIN (*@a) { dd [@a] }
19:23 camelia rakudo-moar db1836: OUTPUT«[Bool::True, Bool::False]␤»
19:24 notviki oh
19:24 notviki m: dd True ~~ Bool
19:24 camelia rakudo-moar db1836: OUTPUT«Bool::True␤»
19:24 notviki m: dd False ~~ Bool
19:24 camelia rakudo-moar db1836: OUTPUT«Bool::True␤»
19:24 notviki wtf
19:24 notviki rightfold: just forward the output
19:24 rightfold notviki: ok :)
19:24 rightfold Thank you
19:25 jmerelo This seems to work sub MAIN ( Int :$max = 10, *@data )
19:25 jmerelo Thanks guys!
19:26 notviki jmerelo: note that $max will contain an IntStr if the value is provided
19:26 geekosaur fwiw sub MAIN strikes me as one of those things that's convenient but has too many sharp edges exposed :/
19:26 notviki doesn't matter often, but if you're doing sets or something, may as well stick a coercer: Int() :$max
19:27 japhb geekosaur: Unfortunately it's so damned convenient I just put band-aids on my typing fingers.
19:27 notviki sub MAIN strikes me as a convienience for quick and dirty scripts, but people expect it to be a full-blown argument handler
19:28 rightfold notviki: what about plans? Only one plan may occur in TAP output
19:29 japhb notviki: I end up using it for quite a few things of various sizes.  The #1 annoyance for me is forced order for flag arguments.  Way down below that is difficulty defining a flag that takes a typed list.  And somewhere near the bottom is "It's hard to replicate a command line like imagemagick, where 'flag' order has semantic meaning"
19:30 raschira Use GetOpt if you need something like that.
19:30 notviki rightfold: what are you trying to do, besides running a program that outputs TAP?
19:31 rightfold notviki: write some tests in Perl 6 itself
19:31 notviki rightfold: and also output tests of that program?
19:32 rightfold Yes
19:32 rightfold Merge them
19:32 rightfold Maybe I won't use plans
19:32 rightfold Then the problem should be solved
19:32 notviki rightfold: just stick the output into subtest
19:32 notviki oh
19:32 rightfold Oh wait the testing stuff reset $*OUT don't they
19:33 notviki and you may need to .indent the output
19:33 * notviki tries stuff
19:35 avuserow joined #perl6
19:36 notviki rightfold: sticking the output into subtest and indenting it works: https://gist.github.com/zoffixznet​/3b656911303ca8ae70faf2fb89952f34
19:36 notviki oh
19:36 notviki it's got two plans in subtest, lol
19:36 notviki but harness doesn't care
19:37 rightfold What is a subtest?
19:37 notviki rightfold: a test within a test. With it's own plan: https://docs.perl6.org/language/tes​ting#index-entry-subtest-subtest%28​%26subtests%2C_%24description%3F%29
19:39 rightfold Why do you need it for this?
19:39 dalek doc: 61932b8 | coke++ | README.md:
19:39 dalek doc: These were converted to issues. Removing them.
19:39 dalek doc:
19:39 dalek doc: Closes #1053
19:39 dalek doc: review: https://github.com/perl6/doc/commit/61932b8a45
19:40 raschira What you're doing: you're running another test (in the other program) as a part of the other. Therefore you tell it how it's happening.
19:40 notviki Interesting that TAP spec doesn't mention it
19:41 notviki Or rather this website doesn't: https://testanything.org/tap-​version-13-specification.html
19:41 notviki Says last updated in 2007
19:41 mojca joined #perl6
19:41 notviki rightfold: 'cause otherwise your plan won't match
19:41 notviki And well, I guess it doesn't match either, but at least `prove` doesn't care
19:41 notviki *now it doesn't match
19:46 mojca joined #perl6
19:54 kyan joined #perl6
19:56 rightfold Thanks a lot
19:56 rightfold The extra plan is lame though
20:01 notviki rightfold: actually I see the extra plan does interfere. It makes teh harness think the subtest passed.
20:01 * notviki tries more stuff
20:02 rightfold Hmm
20:03 bjz joined #perl6
20:04 rightfold I suppose the most robust would be to parse the output and reinterpret it
20:04 notviki Yeah
20:05 grumble joined #perl6
20:05 notviki we have TAP in core, BTW
20:05 rightfold Cool :)
20:05 notviki I don't think it's documented tho :}
20:05 notviki https://github.com/rakudo/r​akudo/blob/nom/lib/TAP.pm6
20:06 notviki And I think there's prove6 somewhere in the ecosystem that uses it
20:06 notviki And I think zef uses it too
20:06 notviki buggable: prove6
20:06 notviki buggable: eco prove6
20:06 buggable notviki, Nothing found
20:06 notviki buggable: eco prove
20:06 buggable notviki, flow 'a 'prove' replacement written entirely in the perl6 you know and love.': https://github.com/tony-o/perl6-flow
20:06 notviki no not that
20:06 notviki buggable: eco testing
20:06 buggable notviki, Found 5 results: Testing, PSpec, TestML, Green, P6TCI. See http://modules.perl6.org/#q=testing
20:08 notviki no idea
20:08 ugexe yeah zef uses the perl6 TAP::Harness by default now
20:08 notviki if you search #perl6-dev's logs you'll find a link
20:08 notviki cool
20:08 notviki buggable: zef
20:08 notviki buggable: eco zef
20:08 buggable notviki, zef 'It's like [cpanm] wearing high heels with a tracksuit': https://github.com/ugexe/zef
20:08 notviki \o/
20:09 notviki high heels with a tracksuit? :o
20:10 notviki ugexe: didn't you say you sent a CLA to TPF at some point? What happened with that?
20:10 ugexe otherwise `prove6` can be installed with `zef install TAP::Harness`
20:10 notviki buggable: eco TAP::Harness
20:10 buggable notviki, TAP::Harness 'TAP harness for perl6': https://github.com/Leont/tap-harness6
20:10 notviki aye, rightfold ^ that's the one with prove6
20:11 rightfold 😍
20:11 ugexe notviki: yeah, coke confirmed he couldnt find anything on it. i havent gotten around to doing a follow through
20:11 [Coke] I can only see when someone adds a line to the CLA google doc, I don't have access to the actual po box.
20:12 [Coke] (but having just checked and not found samcv, ugexe wasn't there either. last was zoffix)
20:13 ugexe i sent mine in Feb, so i'm pretty sure it got lost and I just need to redo it
20:13 notviki Yeah. Do it. Email it instead of snailmailing
20:14 [Coke] docs site question; we've talked about having a search page was a little more full featured than the search box we currently have. I'm going to work on that. (plan: add /search page that shows all the results, prettily. Then we can start restricting results on the dropdown and add links to "show all" which take you to the search page.
20:15 [Coke] samcv, notviki: on a fresh machine, "make html" dies with:
20:15 [Coke] ... nevermind, it's actually pretty clear. (whoops)
20:15 notviki heh
20:16 rightfold m: say (^10)»!
20:16 camelia rakudo-moar db1836: OUTPUT«5===SORRY!5=== Error while compiling <tmp>␤Malformed postfix␤at <tmp>:1␤------> 3say (^10)»7⏏5!␤    expecting any of:␤        postfix␤»
20:16 kyan joined #perl6
20:16 AlexDaniel 23k/31k \o/
20:16 notviki \o/
20:16 ugexe notviki: which email? karen?
20:16 notviki ugexe: ask, samcv
20:16 notviki ugexe: Karen resigned
20:16 [Coke] karen is no longer president, so no.
20:16 [Coke] one sec.
20:17 notviki AlexDaniel: what do you think of this error message: "«First parameter out of range. Is: 42, should be in -Inf^..2147483647␤"
20:17 [Coke] Jim Brandt is the new president.
20:17 notviki well, ignore that 42 is in range :)
20:17 notviki I mean the -Inf^.. thing.
20:17 [Coke] ... it bugs me that the web site doesn't have email addys. :|
20:18 ugexe it has some under Contact Us
20:18 notviki m: X::OutOfRange.new( :what("First parameter"), :got(42), :range("−∞^..2147483647"), ).throw
20:18 camelia rakudo-moar db1836: OUTPUT«First parameter out of range. Is: 42, should be in −∞^..2147483647␤  in block <unit> at <tmp> line 1␤␤»
20:18 notviki AlexDaniel: or that..
20:18 AlexDaniel notviki: it's fine, I'm trying to find a place where we're already doing this.
20:18 Tonik joined #perl6
20:19 notviki dunno
20:19 AlexDaniel m: say Int.Range
20:19 camelia rakudo-moar db1836: OUTPUT«-Inf^..^Inf␤»
20:19 AlexDaniel here!
20:19 [Coke] ugexe: I pinged the webmaster that the contact us page is out of date.
20:20 [Coke] will let you know as soon as I get an addy
20:20 AlexDaniel notviki: so yes, I see no problem here
20:20 notviki cool
20:20 ugexe thanks
20:25 AlexDaniel m: say Rat.Range
20:25 camelia rakudo-moar db1836: OUTPUT«-Inf..Inf␤»
20:25 AlexDaniel :-/
20:25 notviki heh
20:25 notviki Well, it makes as much sent in Int.
20:25 notviki *sence
20:25 notviki SENSE
20:25 notviki m: say Str.Range
20:25 camelia rakudo-moar db1836: OUTPUT«No such method 'Range' for invocant of type 'Str'␤  in block <unit> at <tmp> line 1␤␤»
20:26 notviki m: say Numeric.Range
20:26 camelia rakudo-moar db1836: OUTPUT«No such method 'Range' for invocant of type 'Numeric'␤  in block <unit> at <tmp> line 1␤␤»
20:26 notviki m: say Complex.Range
20:26 camelia rakudo-moar db1836: OUTPUT«No such method 'Range' for invocant of type 'Complex'␤  in block <unit> at <tmp> line 1␤␤»
20:26 zakharyas joined #perl6
20:26 notviki :/
20:26 AlexDaniel m: say FatRat.Range
20:26 camelia rakudo-moar db1836: OUTPUT«No such method 'Range' for invocant of type 'FatRat'␤  in block <unit> at <tmp> line 1␤␤»
20:30 AlexDaniel notviki: ok, RT #130427 for this
20:30 synopsebot6 Link:  https://rt.perl.org/rt3//Publ​ic/Bug/Display.html?id=130427
20:38 notviki wonder why fatrat ain't got a range
20:39 rightfold I see Test calls exit in END :/
20:41 notviki yeah, it got to, to report number of failures
20:43 TEttinger joined #perl6
20:44 bjz joined #perl6
20:46 mojca joined #perl6
20:48 sufrostico joined #perl6
20:51 rightfold can you load a module by just its filename?
20:55 dugword joined #perl6
20:56 ugexe you can require it
20:56 mojca joined #perl6
20:57 rightfold left #perl6
21:04 ugexe m: my $test-dist = CompUnit::RepositoryRegistry.repositor​y-for-name("perl").resolve(CompUnit::D​ependencySpecification.new(short-name => "Test")).distribution; say $test-dist.prefix.child("sources").child($test-​dist.meta<provides><Test><lib/Test.pm6><file>)
21:04 camelia rakudo-moar db1836: OUTPUT«"/home/camelia/rakudo-m-inst​-2/share/perl6/sources/C712FE6969F7​86C9380D643DF17E85D06868219E".IO␤»
21:12 dugword Does the :family parameter on IO::Socket::INET.new actually do anything? The docs say setting it to 3 allows it to support IPv6. But when I use IO::Socket::INET.new(:family(2)) I can still setup a server that accepts connects on ::1.
21:13 dugword Same as if I use :family(11)
21:13 ugexe m: require "/home/camelia/rakudo-m-inst-2/share/perl6/sou​rces/C712FE6969F786C9380D643DF17E85D06868219E" <&plan &ok>; plan 1; ok 1; # rightfold
21:13 camelia rakudo-moar db1836: OUTPUT«1..1␤ok 1 - ␤»
21:13 dugword or any value. https://docs.perl6.org/type/IO$COLON$C​OLONSocket$COLON$COLONINET#method_new
21:13 dugword Or am I reading the docs wrong?
21:16 [Coke] dugword: it's quite possible there's a gap in the docs.
21:17 [Coke] NOOOOOOOO!
21:17 [Coke] just did a perlbrew install, which is painfully slow. one test failed. :|
21:17 notviki m: say PIO::PF_INET6
21:17 camelia rakudo-moar db1836: OUTPUT«Could not find symbol '&PF_INET6'␤  in block <unit> at <tmp> line 1␤␤Actually thrown at:␤  in block <unit> at <tmp> line 1␤␤»
21:18 Gasher joined #perl6
21:18 cyphase joined #perl6
21:18 notviki dugword, I see the code testing for taht ^ value... not sure what it's numerical equivalent is
21:18 notviki code's here https://github.com/rakudo/rakudo/b​lob/nom/src/core/IO/Socket/INET.pm
21:19 dugword Oh awesome, thanks notviki
21:21 geekosaur /usr/include/x86_64-linux-gnu/bi​ts/socket.h:#definePF_INET610/* IP version 6.  */
21:24 bjz joined #perl6
21:28 rindolf joined #perl6
21:32 dugword So it looks like if the passed value for :family matches PIO::PF_INET6 it enables IPv6, otherwise it does IPv4. So :family(11) has the same effect as :family(2). Also I was setting :localhost('localhost'); changing to :localhost('127.0.0.1') with :family(2) seems to make it only listens on IPv4
21:34 dugword I was hoping it would throw if I tried to enable IPv6 when a system doesn't support it. Doesn't seem to be the case. Is there a good way to check if IPv6 is enabled? I perl5 it would throw if you required require IO::Socket::INET6;
21:34 AlexDaniel m: say Buf.new(104, 101, 108, 108, 111) ~~ /hello/
21:34 camelia rakudo-moar db1836: OUTPUT«Nil␤»
21:39 notviki dugword, please file a bug report.
21:39 notviki huggable, rakudobug
21:39 huggable notviki, rakudobug@perl.org or use perl6 query on http://rt.perl.org ; see https://github.com/rakudo/rakudo/#reporting-bugs
21:40 notviki dugword, we shouldn't even deal with magic numbers as arguments. :family(2) is meaningless
21:41 dugword Woo! I'm a bug finding machine. That's 3 in 2 days
21:41 cyphase joined #perl6
21:42 notviki yey? :)
21:43 dugword I love that the source is Perl6, I could probably fix this. What is the specific bug notviki? :family(11) not throwing an error? \
21:44 notviki Well, what's family 11?
21:46 pierre__ joined #perl6
21:46 notviki or family 2 or 3 for that matter
21:48 geekosaur ideally you don't use the numbers...
21:49 dugword The docs at least call out that family 2 is IPv4 and family 3 is IPv6. But the new method takes any Int as that value, and that seems wrong. I agree though a string value of 'ipv4' or something would be better.
21:49 domidumont joined #perl6
21:50 geekosaur I can't wait for someone to port rakudo to a platform that doesn't use the same values
21:50 notviki Why deal with strings? and not just pass a named arg?
21:51 geekosaur (at one point that platform was Windows but apparently even Microsoft gave up on people preferring to hardcode nondescriptive numbers)
21:51 RabidGravy or some generated enumeration
21:52 * notviki will never get people's obsession with enums
21:52 dugword like IO::Socket::INET.new(:ipv4) ?
21:52 notviki yeah, and default to ipv6
21:53 RabidGravy or ipx or decnet or something
21:53 notviki vOv
21:54 geekosaur /usr/include/x86_64-linux-gnu/bi​ts/socket.h:#definePF_NETROM6/* Amateur radio NetROM.  */
21:54 geekosaur :p
21:55 notviki kinda disappointed our API is so inconsistent.... socks take ints, chdir takes predefined strings, seek takes predefined enums, match takes bool named args...
21:55 * notviki screams loudly
21:55 notviki ... or I would if I weren't on a bus full of people....
21:55 dugword Okay, how does a change to a core module API work like that work. Is that part of the Perl 6.c spec?
21:56 kurahaupo joined #perl6
21:56 notviki dugword, the spec is the roast
21:56 notviki if this behaviour is tested in roast we can't change it until 6.d
21:57 notviki github.com/perl6/roast
21:57 notviki 6.c-errata branch specifically.
21:57 notviki but check master too
21:58 setty1 joined #perl6
21:58 pmurias IO::Socket::INET should accept numbers other than 2 and 3
21:58 pmurias * shouldn't
21:59 notviki :/
21:59 RabidGravy but yes adverby things would be better as the meaning could be interpreted at a lower level
22:00 notviki So 2 is IPv6 and 3 is IPv8, right?
22:00 notviki or wait, 11 is v8
22:00 notviki or was it 22
22:00 dugword If it isn't tested, then changes can be made. E.g. We could have it throw on numbers other than 2 or 3 and potentially add additional named parameters that do the same as :family(2) but more defined
22:00 jabowery joined #perl6
22:01 RabidGravy if it doesn't break working code that uses the tested behaviour
22:02 RabidGravy while you're at it implement AF_LOCAL as I'd find that a lot more useful
22:03 pmurias RabidGravy: AF_LOCAL is unix sockets
22:03 RabidGravy I know
22:03 dugword lol, well this'll be my first pull request into Perl6 (minus the docs) so I'm going to start small
22:04 pmurias IO::Socket::INET shouldn't handle unix sockets
22:04 RabidGravy er quite
22:05 lichtkind joined #perl6
22:06 pmurias notviki: re default to ipv6, the current default is ipv4
22:06 RabidGravy it actually isn't
22:07 RabidGravy it will use either
22:08 geekosaur don't confuse behavior of the perl code with behavior of the kernel APIs. Linux distributions love to enable the kernel option that does ipv4 and ipv6 at the same time
22:08 jabowery I installed perl6 on Ubuntu with panda and then Debugger::UI::CommandLine but I can't debug because there is no "perl6-debug" command -- only a "perl6-debug-m" command which, when I invoke it on a rather simple script, brings the system to its knees by spawning a huge number of moar tasks.    Any suggestions?
22:08 pmurias RabidGravy: depending on the family argument it treat the host argument differently
22:09 pmurias do we have a tool to grep all the modules in the ecosystem?
22:11 lichtkind greeting
22:11 RabidGravy moritz had a repo with all the ecosystem in
22:11 lichtkind are there any docs on banchmarks made over last year?
22:12 yoleaux AlexDaniel: say hello
22:14 RabidGravy lichtkind, what kind of docs, what kind of benchmarks?
22:14 lichtkind perl 6 of course and there is an official bnchmark suite i just didnt found there any data
22:15 RabidGravy I assumed Perl 6
22:15 lichtkind so maybe someone wrote some blog post i caould not find
22:16 RabidGravy I've been "it's fast enough" for a year or so :)
22:17 lichtkind but from what i could read between line from talks i watche dits god around twice as fast in this year
22:18 lichtkind ah thanks
22:23 timotimo buggable: speed
22:23 buggable timotimo, ▅▅▅▅▆▅▅▆▆▄▅▅▅▄▅▅▅▅▅█▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▃▃▃▂▂▂▂▂▂▂▁▁▁▁ data for 2016-12-06–2016-12-28; variance: 5.137s–7.592s
22:23 timotimo huggable: speed
22:23 huggable timotimo, http://tux.nl/Talks/CSV6/speed4.html
22:24 timotimo lichtkind: ^ one benchmark we use for a lot of stuff
22:25 lichtkind thank you
22:26 timotimo http://moarvm.org/measurements/perl6-bench/ - this is also a thing
22:28 jabowery Correction:  Installed perl6 (and panda) with rakudobrew thence Debugger::UI::CommandLine
22:28 lichtkind that is helpful and appreciated
22:28 cygx joined #perl6
22:28 cygx lichtkind: also, https://pbs.twimg.com/media​/Cw7W1ECUcAA0bIr.jpg:large and https://gist.github.com/cygx/9c94eefdf​6300f726bc698655555d73b#file-graph-md
22:31 cygx (first one by zoffix based on the CVS timings, I think, 2nd one is mine)
22:31 lichtkind isee
22:34 notviki pmurias: but how come?
22:35 notviki Wasn't there a memo from somewhere about major stuff switching to IPv6 soon and if your ISP doesn't support it you're screwed.
22:36 notviki something or other
22:36 * notviki cue's mst's vague image
22:38 notviki lichtkind: yeah, today it's 5.137 and exactly a year ago it was around 12.970s
22:38 notviki worth noting it doesn't represent speed up of Perl 6 as a whole.
22:39 lichtkind sure
22:39 notviki if you do native arrays you prolly got a lot more speed
22:39 notviki while other stuff maybe not that much at all
22:39 lichtkind native arrays are typed arrays?
22:39 lichtkind this is the famed nsa stuff
22:39 lichtkind this time without snowden
22:39 notviki or shaped arrays I should say. lizmat++ did huge speedups there
22:39 notviki no idea wtf nsa stuff is
22:40 lichtkind it was short for native shapd arrays
22:40 lichtkind but i think they were done before Koleda?
22:40 notviki yes
22:40 notviki But barely.
22:41 notviki it's like my int @a[10]
22:42 notviki or my str @a[10;10]
22:42 lichtkind so they are array of low levvel typed data?
22:43 notviki yeah
22:43 lichtkind thank you
22:43 notviki and also shaped you can do shapes without native stuff
22:43 notviki m: my @a[10;10] = ^10 xx 10; dd @a
22:43 camelia rakudo-moar 7193df: OUTPUT«Array.new(:shape(10, 10), [0, 1, 2, 3, 4, 5, 6, 7, 8, 9], [0, 1, 2, 3, 4, 5, 6, 7, 8, 9], [0, 1, 2, 3, 4, 5, 6, 7, 8, 9], [0, 1, 2, 3, 4, 5, 6, 7, 8, 9], [0, 1, 2, 3, 4, 5, 6, 7, 8, 9], [0, 1, 2, 3, 4, 5, 6, 7, 8, 9], [0, 1, 2, 3, 4, 5, 6, 7, 8, 9], [0, 1,…»
22:46 lichtkind and is there a gui i was pondering to do my Sudoku::Solver::Algorithm
22:46 lichtkind its not about solution but how to get there which solving method can crack wha type of task
22:47 lichtkind but without gui that doesnt make sense
22:50 lizmat joined #perl6
22:51 pe joined #perl6
22:52 awwaiid joined #perl6
22:53 Ven joined #perl6
22:53 MasterDuke there are some GTK bindings, https://github.com/perl6/gtk-simple
22:53 pe hi i have this problem somebody can help ? Cannot import symbol Class1 from Class1, because it already exists in this lexical scope
22:54 dataf3l joined #perl6
22:54 notviki pe: please pastebin the code that produces that issue
22:57 jabowery I posted the question at stackoverflow:  http://stackoverflow.com/questions/41370817/pe​rl6-debug-m-spawning-moar-till-system-thrashes
22:58 lichtkind MasterDuke, thanks
23:01 pe joined #perl6
23:02 pe HELP
23:02 notviki pe: how?
23:02 notviki pe: we can't guess what's wrong with your code without us seeing it.
23:02 notviki pastebin it
23:03 pe but my code have a 1000 lines
23:04 pe just the problem is a invocation the module
23:06 dalek doc: f95f627 | (Zoffix Znet)++ | doc/Type/List.pod6:
23:06 dalek doc: Give more details for edgecases in .combinations()
23:06 dalek doc: review: https://github.com/perl6/doc/commit/f95f627693
23:06 synopsebot6 Link: http://doc.perl6.org/type/List
23:06 labster In a world… there is a newio branch.  Failure means death… or does it?
23:07 notviki labster: what?
23:07 geekosaur lizmat++ tried to make IO consistent in the newio branch, but it bitrotted severely before 6.c release
23:07 geekosaur wrt throwing v Failure, etc.
23:08 labster lizmat's last reply on RT#130418 was: "Welcome to the world of the newio branch"
23:08 synopsebot6 Link:  https://rt.perl.org/rt3//Publ​ic/Bug/Display.html?id=130418
23:08 notviki pe: you have a symbol conflict. You're trying to import Class1 from a module but Class1 already exists in the place you're trying to import it to
23:09 notviki So let's resurrect it.
23:09 lizmat fwiw, it bitrotted because nobody wanted to think about it (at least, from my perspective)
23:09 geekosaur also from what I saw
23:09 notviki ok, that was before my time. I wanna think about it now.
23:09 lizmat cool
23:09 geekosaur it looked a lot like you trying to keep up with all the changes going on and everyone else ignoring newio entirely
23:10 notviki :(
23:10 labster I wanted to think about it, I just never got the time to do so.
23:10 lizmat fwiw,. I'm pretty burned out on the newio topic, but am willing to provide background on ideas behind it
23:10 lizmat should anybody be interested
23:11 notviki Alright. I'll take a look at it around New Years
23:11 cpage joined #perl6
23:36 pierre_ joined #perl6
23:53 samcv hello everybody
23:53 samcv i got some pings last night
23:53 samcv [Coke], what was the problem with the build?
23:53 samcv for the doc
23:54 [Coke] samcv: loaner mactop without an up to date p5. error message was pointing out a missing p5 module.
23:55 samcv ah ok
23:55 [Coke] brewing p5 for a second time now. :|
23:55 samcv what perl 5 do we require?
23:55 samcv we don't use Perl 5 for just make html right? or?

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

Perl 6 | Reference Documentation | Rakudo