»ö« Welcome to Perl 6! | perl6.org/ | evalbot usage: 'p6: say 3;' or rakudo:, or /msg camelia p6: ... | irclog: irc.perl6.org or colabti.org/irclogger/irclogger_logs/perl6 | UTF-8 is our friend! Set by moritz on 22 December 2015. |
|||
Xliff | Something like that, except it was actually in usable code. | 00:00 | |
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 | ||
AlexDaniel | commit: 2015.12,HEAD my @a[5] = 1, 2, 3, 4; for @a.values <-> $a { $a = 5 }; say @a | ||
notviki | Xliff: github.com/zoffixznet/perl6-SPEC-F...C/Func.pm6 | ||
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» | ||
Xliff | So %EXPORT::DEFAULT was defined in sub EXPORT and returned, I think. It bears testing, and I'm not there yet. | ||
notviki | Xliff: except instead of grepping methods you'd grep the stuff from that first link | ||
00:01
lostinfog left
|
|||
Xliff | Yeah. | 00:02 | |
Well, we'll see. | |||
I have starting point again. Thanks, vikiNotZoffixCollective | |||
00:02
yyy joined,
yyy left
|
|||
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» | ||
Xliff | vikiNotZoffixCollective++ # Especially for all the name mangling I've done. | ||
notviki | committable6: 6.c say +permutations(2000) | 00:03 | |
Xliff | sub notviki is native is symbol('zoffix') is mangled is export { * } | ||
committable6 | notviki, gist.github.com/6cbb30e0536ec0da84...887b78e206 | 00:04 | |
00:04
pierre_ left
|
|||
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 :) | ||
samcv | m: use Test; ok unimatch("\x300F", "Pe"), "RIGHT WHITE CORNER BRACKET matches Pe"; | ||
camelia | rakudo-moar ca919d: OUTPUT«ok 1 - RIGHT WHITE CORNER BRACKET matches Pe» | ||
samcv | crap I hate this moarvm bug so much | ||
notviki | And a list of 2432902008176640000 items is huge | ||
samcv | just like random which properties are not going to work | ||
notviki | Oh, I thought 6.c would just do the 2015.12 | 00:05 | |
AlexDaniel | but let's agree that the result is interesting :) | ||
how long does it take | 00:06 | ||
notviki | Why is it interesting? | ||
AlexDaniel | committable6: 2016.07.1 say +permutations(2000) | ||
committable6 | AlexDaniel, gist.github.com/6072854b2c8fc7480b...8be64efb15 | ||
samcv | :( {"Pe",10} {"Pe",17} in the same unicode database. and jnthn says it uses the one closest to the top | ||
AlexDaniel | because otherwise we wouldn't know that it was working at some point! | ||
notviki | AlexDaniel: well, the answer is 5736 digits in length | 00:07 | |
AlexDaniel | committable6: 2016.07.1 say +permutations(2000) .chars | ||
committable6 | AlexDaniel, ¦«2016.07.1»: 5736 | ||
notviki | (•_•) ( •_•)>⌐■-■ (⌐■_■) | ||
AlexDaniel | .oO( why glasses? ) |
00:08 | |
notviki | Those are cool shades, bruh | 00:09 | |
00:09
Guest85106 left
|
|||
notviki | committable6: 2016.07.1 say +permutations(2000) | 00:09 | |
committable6 | notviki, gist.github.com/ba8481cb23267f362e...2833da71d1 | ||
notviki | Ah, I think earlier versions just didn't have .count-only | 00:10 | |
So it's timing out because it's trying to actually generate them all | |||
AlexDaniel | ya | ||
m: say Numeric.new.succ | |||
camelia | rakudo-moar ca919d: OUTPUT«MoarVM panic: Memory allocation failed; could not allocate 82944 bytes» | ||
AlexDaniel | (old issue) | ||
I wonder if there is a ticket for it | |||
notviki | Well, it's very prevalent | 00:11 | |
m: Numeric.new + 42 | |||
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» | ||
notviki | m: say Numeric.new * 42 | ||
camelia | rakudo-moar ca919d: OUTPUT«MoarVM panic: Memory allocation failed; could not allocate 119536 bytes» | ||
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 | ||
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» | ||
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:13 | |
[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... | ||
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 | |||
23 Dec 2016 17:39Z <notviki> [Coke]: oh, I guess len can be == 2 and then len -1 is 1.... never mind :) | |||
AlexDaniel | m: :0(12345) | ||
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» | ||
AlexDaniel | ya, base-0 | ||
tailgate | Can I express if $a between 1 and 4 in a particularly perl6 way, or is the obvious way the way to go? | ||
samcv | [Coke], RE which thing I said? | ||
AlexDaniel | tailgate: $a ~~ 1..4 ? | ||
tailgate: 1 <= $a <= 4 ? | 00:15 | ||
tailgate: which one of these is obvious? :) | |||
tailgate | the latter is the obvious way, the former is the perl6 way. Interesting. I need to read how smartmatch works | ||
AlexDaniel | I see no problem with 1 <= $a <= 4, looks perl6-ish enough | 00:16 | |
00:16
kyan joined
|
|||
AlexDaniel | commit: 2015.12,HEAD say 1.1e308 | 00:17 | |
committable6 | AlexDaniel, ¦«2015.12»: Inf¦«HEAD»: 1.1e+308 | ||
AlexDaniel | interesting | ||
notviki | tailgate: umm... 1 <= $a <= 4 is also Perl 6 way, and faster too | ||
That was a bug I fixed. | 00:18 | ||
Nice one too | |||
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 | ||
notviki, bisect log: gist.github.com/9ab29ae7a7c6185d98...4a5cb3ec87 | |||
notviki, (2016-11-08) github.com/rakudo/rakudo/commit/72...cf911dd7cf | |||
AlexDaniel | haha, that diff | ||
notviki | Ah now I remember what it was :) | ||
[Coke] | samcv: your work on unicode stuff. thanks. | ||
00:19
Actualeyes joined
00:20
Rawriful left
|
|||
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)" | ||
samcv | which are the same except without the (LF) after it. | ||
00:20
facetious joined
|
|||
[Coke] | samcv: I'm not an expert, but the official aliases seems righter. | 00:21 | |
samcv | yeah | ||
notviki | AlexDaniel: a better diff is for the .flat bug I did... It's just deleting a huge chunk of code, with zero additions :) | ||
samcv | i don't see anybody using "\c[LINE FEED (LF)]" like.. ever | ||
notviki | (I had to re-add it later due to lost performance, but still...) | ||
samcv | and just LINE FEED is already in roast | ||
as is \c[LF] (also an official unicode alias) | |||
[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: github.com/rakudo/rakudo/commit/61...1fe4e2cb5e | ||
00:22
tailgate left
|
|||
[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 | ||
[Coke] | (and I'll try to make that work and also not break any of the other crap.) | ||
00:22
Vasyl joined
|
|||
[Coke] feels like he should have done a lot more perl 6 this week! | 00:23 | ||
[Coke] has to go back to $DAYJOB tomorrow. | |||
notviki too | 00:29 | ||
And I butchered my sleep cycle... woke up a 1pm | |||
AlexDaniel | m: my int @a = ^Inf | 00:30 | |
camelia | ( no output ) | ||
AlexDaniel | m: my int @a = ^Inf; say @a | ||
camelia | rakudo-moar ca919d: OUTPUT«» | ||
AlexDaniel | like… did it just eat it? | ||
notviki | m: my int @a = ^Inf; put @a | 00:32 | |
camelia | rakudo-moar ca919d: OUTPUT«» | ||
notviki | m: my int @a = ^Inf; put @a.elems | ||
camelia | rakudo-moar ca919d: OUTPUT«0» | ||
notviki | m: my int @a = Inf; put @a.elems | ||
camelia | rakudo-moar ca919d: OUTPUT«This type cannot unbox to a native integer: P6opaque, Num in block <unit> at <tmp> line 1» | ||
notviki shrugs | |||
00:33
aindilis` joined
|
|||
notviki | hmmm... do I dare start another playthrough of Dragon Age Inquisition... | 00:34 | |
00:35
aindilis left
|
|||
notviki | 120 hours on previous playthrough... | 00:36 | |
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] | ||
AlexDaniel | right | ||
the current behavior is correct I guess | |||
notviki | There should be extremely thorough splice tests | 00:40 | |
Well, no, I guess not "extremely" :) | 00:41 | ||
AlexDaniel | except for this case probably? | ||
notviki: perhaps you can check… | |||
notviki | grep delete S32-array/splice.t gives nothing | 00:42 | |
00:43
bartolin joined,
jantore joined
|
|||
AlexDaniel | notviki: it would be nice to have one for this case | 00:44 | |
notviki | yeah | ||
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 | |||
camelia | rakudo-moar ca919d: OUTPUT«[1 (Any) 3 4][1 (Any) 3 4][]» | ||
notviki | Yeah, the current result is correct. | ||
notviki eats dinner first, then will add a test | 00:45 | ||
AlexDaniel | thanks | ||
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 | ||
what about this | |||
committable6 | AlexDaniel, gist.github.com/f8fe02a390462d3405...0c572a7ede | ||
AlexDaniel | bisect: 2015.12,HEAD dd my $b = Blob.new(1,2,3); dd subbuf-rw($b,2,1) = Buf.new(42); dd $b | ||
bisectable6 | AlexDaniel, On both starting points (old=2015.12 new=ca919d9) the exit code is 1 and the output is identical as well | ||
AlexDaniel, Output on both points: 04===SORRY!04=== Error while compiling /tmp/ViwxmU948PUndeclared name: HEAD used at line 1 | |||
AlexDaniel | bisect: dd my $b = Blob.new(1,2,3); dd subbuf-rw($b,2,1) = Buf.new(42); dd $b | ||
bisectable6 | AlexDaniel, Bisecting by exit code (old=2015.12 new=ca919d9). Old exit code: 0 | ||
AlexDaniel, bisect log: gist.github.com/ca0249183cea98931d...2af21ba0a2 | 00:47 | ||
AlexDaniel, (2016-02-27) github.com/rakudo/rakudo/commit/08...a23797670f | |||
AlexDaniel | m: say +combinations(100,1000) | 00:49 | |
camelia | rakudo-moar ca919d: OUTPUT«1» | ||
AlexDaniel | notviki: ↑ :) | ||
notviki | :/ | ||
no idea what subbuf-rw is | 00:50 | ||
Blob is immutable, so maybe it's right to complain? | 00:51 | ||
AlexDaniel | right | ||
probably | |||
notviki | s: combinations(100, 1000), 'iterator', \() | 00:52 | |
SourceBaby | notviki, Sauce is at github.com/rakudo/rakudo/blob/ca91...Seq.pm#L52 | ||
geekosaur | seems right to me | ||
samcv | m: 0x0.uniprop-bool('space').say | ||
camelia | rakudo-moar ca919d: OUTPUT«True» | ||
AlexDaniel | geekosaur: what exactly? | ||
geekosaur | ? subbuf-rw complaining | ||
AlexDaniel | ah | ||
notviki | s: &combinations, \(100, 1000) | ||
SourceBaby | notviki, Sauce is at github.com/rakudo/rakudo/blob/ca91...List.pm#L5 | ||
AlexDaniel | ok | ||
geekosaur | on an immutable Blob | ||
AlexDaniel | m: say +combinations(100,1000) | 00:53 | |
camelia | rakudo-moar ca919d: OUTPUT«1» | ||
AlexDaniel | m: say +combinations(1000,100) | ||
camelia | rakudo-moar ca919d: OUTPUT«63850511926305130236698511142022274281262900693853331776286816221524376994750901948920974351797699894319420811933446197797592213357065053890» | ||
notviki | m: my $n = 100; my $k = 1000; ([*] ($n ... 0) Z/ 1 .. min($n - $k, $k)).Int | ||
camelia | ( no output ) | ||
notviki | m: my $n = 100; my $k = 1000; ([*] ($n ... 0) Z/ 1 .. min($n - $k, $k)).Int .say | ||
camelia | rakudo-moar ca919d: OUTPUT«1» | ||
00:55
BenGoldberg joined
00:56
Gasher left,
jordman joined
|
|||
notviki | k, I see what it is | 00:57 | |
AlexDaniel | commit: 2015.12,HEAD say uniprop('〔', 'East_Asian_Width') | 00:58 | |
committable6 | AlexDaniel, ¦«2015.12»: 0¦«HEAD»: | ||
AlexDaniel | commit: 2015.12,HEAD dd uniprop('〔', 'East_Asian_Width') | ||
committable6 | AlexDaniel, ¦«2015.12»: 0¦«HEAD»: "" | ||
AlexDaniel | samcv: is this alright? ↑ | ||
samcv | well not fixed in moar master | ||
but that should theoretically work | |||
it returns uh | 00:59 | ||
notviki | AlexDaniel: I opened an Issue for roast: github.com/perl6/roast/issues/203 | ||
I don't feel like writing tests and I don't wanna half-ass it | |||
AlexDaniel | ok | ||
samcv | by theoretically i mean soon it will work | ||
AlexDaniel | m: say Blob.elems | 01:01 | |
camelia | rakudo-moar ca919d: OUTPUT«1» | ||
AlexDaniel | m: say Blob[0] | 01:02 | |
camelia | rakudo-moar ca919d: OUTPUT«(Blob[Int])» | ||
notviki | It's the 1-el-list thing. | ||
m: say Numeric.elems | 01:03 | ||
camelia | rakudo-moar ca919d: OUTPUT«1» | ||
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 | ||
notviki | m: dd combinations(.5, .5) | 01:05 | |
camelia | rakudo-moar ca919d: OUTPUT«((),).Seq» | ||
notviki doesn't get it | |||
m: dd combinations(0, 0) | 01:06 | ||
camelia | rakudo-moar ca919d: OUTPUT«((),).Seq» | ||
notviki | m: dd combinations(2, 2) | ||
camelia | rakudo-moar ca919d: OUTPUT«((0, 1),).Seq» | ||
notviki | Ah, right. combination of zero elems, doh | 01:07 | |
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» | ||
BenGoldberg | m: dd permutations(3).sink-all; | ||
camelia | rakudo-moar ca919d: OUTPUT«No such method 'sink-all' for invocant of type 'Seq' in block <unit> at <tmp> line 1» | ||
BenGoldberg | m: dd permutations(3).iterator.sink-all; | ||
camelia | rakudo-moar ca919d: OUTPUT«IterationEnd» | ||
BenGoldberg | It's really too bad that .sink-all wasn't specced to provide a count of how many items were discarded. | 01:09 | |
notviki | Isn't the point of it to sink all without carying how many items there were? | 01:10 | |
m: (^Inf).iterator.sink-all; say "hi" | |||
ok | |||
camelia | rakudo-moar ca919d: OUTPUT«(timeout)» | ||
notviki | BenGoldberg: why is it bad? You're not supposed to poke at iterators like that, really. | 01:11 | |
01:12
Ven left
|
|||
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 | ||
committable6 | AlexDaniel, ¦«2015.12»: Map|44148944¦«HEAD»: Map| | ||
AlexDaniel | Map| ? | ||
notviki saw that symptop already | 01:14 | ||
01:14
aborazmeh joined,
aborazmeh left,
aborazmeh joined
|
|||
AlexDaniel | bisect: 2015.12,HEAD my %f := Map.new; %f.WHICH.say | 01:14 | |
shit | |||
bisectable6 | AlexDaniel, On both starting points (old=2015.12 new=ca919d9) the exit code is 1 and the output is identical as well | ||
AlexDaniel, Output on both points: 04===SORRY!04=== Error while compiling /tmp/TorAW7kiCnUndeclared name: HEAD used at line 1 | 01:15 | ||
AlexDaniel | bisect: my %f := Map.new; %f.WHICH.say | ||
bisectable6 | AlexDaniel, Bisecting by output (old=2015.12 new=ca919d9) because on both starting points the exit code is 0 | ||
notviki | BenGoldberg: and which core types provide side effects where sinking does less work than generating all elems? | ||
bisectable6 | AlexDaniel, bisect log: gist.github.com/3c070b27049953d951...ca19e478c0 | ||
AlexDaniel, (2015-12-25) github.com/rakudo/rakudo/commit/07...dc61f84053 | |||
notviki | heh | ||
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 | ||
AlexDaniel, bisect log: gist.github.com/63751c020cb46973aa...a51500a708 | |||
AlexDaniel, (2016-06-21) github.com/rakudo/rakudo/commit/d9...aafa74eb11 | |||
AlexDaniel | what does that mean | ||
01:17
rburkholder joined
|
|||
notviki | m: my %f := Map.new: foo => "\b\b\b\b\b"; say %f.WHICH | 01:18 | |
camelia | rakudo-moar ca919d: OUTPUT«Map|» | ||
notviki | aww | ||
m: my %f := Map.new: foo => "\b\b\b\b\b"; say %f | |||
camelia | rakudo-moar ca919d: OUTPUT«Map.new(())» | ||
notviki | oh | ||
m: my %f := Map.new: "foo" => "\b\b\b\b\b"; say %f | |||
camelia | rakudo-moar ca919d: OUTPUT«Map.new((:foo("\b\b\b\b\b")))» | ||
notviki | m: my %f := Map.new: "foo" => "\b\b\b\b\b"; say %f.WHICH | ||
camelia | rakudo-moar ca919d: OUTPUT«Map|Str|foo()» | ||
notviki | heh | ||
What's a value type again? I keep forgetting | 01:19 | ||
I wonder if it's a bad idea to use such WHICH | 01:20 | ||
m: my %f := Map.new: "foo" => "x" x 10000000; | |||
camelia | ( no output ) | ||
notviki | m: my %f := Map.new: "foo" => "x" x 10000000; say %f ==- Map.new: "foo" => "x" | ||
camelia | rakudo-moar ca919d: OUTPUT«False» | ||
notviki | m: my %f := Map.new: "foo" => "x" x 10000000; say %f === Map.new: "foo" => "x" | 01:21 | |
camelia | rakudo-moar ca919d: OUTPUT«False» | ||
notviki | m: my %f := Map.new: "foo" => "x" x 10000000000; say %f === Map.new: "foo" => "x" | ||
camelia | rakudo-moar ca919d: OUTPUT«repeat count > 1073741824 arbitrarily unsupported... in block <unit> at <tmp> line 1» | ||
notviki | m: my %f := Map.new: "foo" => "x" x 1073741824; say %f === Map.new: "foo" => "x" | ||
camelia | rakudo-moar ca919d: OUTPUT«MoarVM panic: Memory allocation failed; could not allocate 4294967332 bytes» | ||
notviki | m: my %f := Map.new: "foo" => "x" x 107374109; say %f === Map.new: "foo" => "x" | ||
camelia | rakudo-moar ca919d: OUTPUT«False» | ||
notviki | m: my %f := Map.new: "foo" => "x" x 107374109; say %f.WHICH | ||
camelia | rakudo-moar ca919d: OUTPUT«Map|Str|foo(xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx…» | ||
notviki | m: my @a; @a = @a, 4; my %f := Map.new: "foo" => @a; say %f.WHICH | 01:23 | |
weeeeeeee | |||
m: my @a; @a = @a, 4; my %f := Map.new: "foo" => @a; say %f === Map.new | |||
BenGoldberg | m: try { my $x = 'x' x 9e9 }; say 'alive'; | ||
camelia | rakudo-moar ca919d: OUTPUT«(timeout)» | ||
rakudo-moar ca919d: OUTPUT«alive» | |||
BenGoldberg | m: try { my $x = 'x' x 9e99 }; say 'alive'; | 01:24 | |
camelia | rakudo-moar ca919d: OUTPUT«alive» | ||
BenGoldberg | m: try { my $x = 'x' x 9e99; CATCH { default { say 'oops: '~.Str.say }; say 'alive'; | ||
camelia | rakudo-moar ca919d: OUTPUT«5===SORRY!5=== Error while compiling <tmp>Missing blockat <tmp>:1------> 3 { say 'oops: '~.Str.say }; say 'alive';7⏏5<EOL>» | ||
BenGoldberg | m: try { my $x = 'x' x 9e99; CATCH { default { say 'oops: '~.Str.say } }; say 'alive'; | ||
camelia | rakudo-moar ca919d: OUTPUT«5===SORRY!5=== Error while compiling <tmp>Missing blockat <tmp>:1------> 3 say 'oops: '~.Str.say } }; say 'alive';7⏏5<EOL>» | ||
BenGoldberg | m: try { my $x = 'x' x 9e99; CATCH { default { say 'oops: '~.Str.say } } }; say 'alive'; | ||
camelia | rakudo-moar ca919d: OUTPUT«Cannot unbox 333 bit wide bigint into native integeroops: Truealive» | ||
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» | ||
BenGoldberg | arbitrarily??!? I demand a refund. | 01:26 | |
m: try { my $x = BEGIN { 'x' x 9e9 }; CATCH { default { say 'oops: '~.Str } } }; say 'alive'; | |||
camelia | rakudo-moar ca919d: OUTPUT«5===SORRY!5=== Error while compiling <tmp>An exception occurred while evaluating a BEGINat <tmp>:1Exception details: 5===SORRY!5=== Error while compiling  repeat count > 1073741824 arbitrarily unsupported... at :» | ||
notviki | m: my %h := Hash.new: "foo" => 0/0; say %h === Hash.new | 01:27 | |
camelia | rakudo-moar ca919d: OUTPUT«False» | ||
notviki | m: my %h := Map.new: "foo" => 0/0; say %h === Map.new | ||
camelia | rakudo-moar ca919d: OUTPUT«Attempt to divide by zero using div in block <unit> at <tmp> line 1Actually thrown at: in block <unit> at <tmp> line 1» | ||
AlexDaniel | commit: 2015.12,HEAD my $a = uint32.new(10); say $a.WHAT | ||
committable6 | AlexDaniel, ¦«2015.12»: (uint32)¦«HEAD»: (Int) | ||
AlexDaniel | huh, right? | ||
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 | ||
notviki, bisect log: gist.github.com/a42303f40cee7e8b08...4a8f8788fc | |||
notviki, (2016-10-05) github.com/rakudo/rakudo/commit/79...161efca854 | |||
notviki | oops :} | ||
AlexDaniel | notviki: not sure how “oops” it is, look | 01:29 | |
commit: 2015.12,HEAD my $a = uint32.new(10); say $a | |||
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 | ||
AlexDaniel | yeah, on HEAD it works for a wrong reason, but… | ||
but why doesn't it work on 2015.12, huh? | 01:30 | ||
notviki | well, uint32 is not a boxed type | ||
It ain't got a .new | |||
So it gets boxed into an Int and then .new is called on that and tada | |||
01:30
labster left
|
|||
AlexDaniel | uhm but | 01:30 | |
commit: 2015.12,HEAD my $a = uint32.new(10) | |||
01:30
NotZoffix joined
01:31
NotZoffix left,
NotZoffix joined
|
|||
NotZoffix | Zoffix, stop messing around!! | 01:31 | |
01:31
NotZoffix left
|
|||
notviki | What the fuck | 01:31 | |
committable6 | AlexDaniel, ¦«2015.12,HEAD»: | ||
AlexDaniel | notviki: that's your own message from the past I think | ||
or maybe not yours | |||
notviki | Yeah, it is | ||
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 | ||
BenGoldberg | m: uint32.WHAT.say | 01:33 | |
camelia | rakudo-moar ca919d: OUTPUT«(uint32)» | ||
BenGoldberg | m: uint32.^mro.say | ||
camelia | rakudo-moar ca919d: OUTPUT«((uint32) (Int) (Cool) (Any) (Mu))» | ||
notviki | Oh, and that Map.WHICH thing it's possible to create two different Maps with same .WHICH | ||
m: say uint32.^methods | |||
camelia | rakudo-moar ca919d: OUTPUT«No such method 'methods' for invocant of type 'Perl6::Metamodel::NativeHOW' in block <unit> at <tmp> line 1» | ||
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 6Actually thrown at: in block <unit> at -e line 6 | ||
BenGoldberg | s: Perl6::Metamodel::NativeHOW, 'methods', (Perl6::Metamodel::NativeHOW) | ||
SourceBaby | BenGoldberg, Something's wrong: ERR: Could not find symbol '&NativeHOW' in block <unit> at -e line 6Actually thrown at: in block <unit> at -e line 6 | ||
notviki | :/ | 01:36 | |
BenGoldberg | Restricted setting thingy problem, I'm guessing. | ||
notviki | It did say there is NO such method in that class :/ | ||
Nope | |||
BenGoldberg | m: Perl6::Metamodel::NativeHOW.say | ||
camelia | rakudo-moar ca919d: OUTPUT«Could not find symbol '&NativeHOW' in block <unit> at <tmp> line 1Actually thrown at: in block <unit> at <tmp> line 1» | ||
notviki | You can't get them that way (yet) | 01:37 | |
m: int.WHAT.new | |||
camelia | rakudo-moar ca919d: OUTPUT«No such method 'BUILDALLPLAN' for invocant of type 'Perl6::Metamodel::NativeHOW' in block <unit> at <tmp> line 1» | ||
notviki | bah | ||
oh right | |||
m: int.HOW.WHAT.new | |||
camelia | ( no output ) | ||
notviki | m: int.HOW.WHAT.new.^name.say | ||
camelia | rakudo-moar ca919d: OUTPUT«Perl6::Metamodel::NativeHOW» | ||
notviki | ^ that's the way to reach out to MOP classes | ||
BenGoldberg | Clearly this is not a case of perl making easy things easy ;) | 01:38 | |
notviki | Pretty easy. | ||
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» | ||
BenGoldberg | m: uint32.HOW.WHAT.new(42).say; | ||
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» | ||
BenGoldberg | m: uint32.HOW.WHAT.new().say; | ||
camelia | rakudo-moar ca919d: OUTPUT«Perl6::Metamodel::NativeHOW.new» | ||
AlexDaniel | m: say “989898988898989898980909090939838302233848473393040383234234509484.3489523478234723847238432423”.Rat.nude | 01:43 | |
camelia | rakudo-moar ca919d: OUTPUT«Cannot convert string to number: trailing characters after number in '0398989898889898989898090909093983830⏏52233848473393040383234234509484.3489523478234723847238432423' (indicated by ⏏) in block <unit> at <tmp> line 1Actually throw…» | ||
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 | ||
notviki, bisect log: gist.github.com/3fe9f20f5ea3036032...b98f22cbda | |||
notviki, (2016-03-25) github.com/rakudo/rakudo/commit/f2...61e02a8e62 | |||
01:48
dugword left
01:50
kurahaupo left
|
|||
BenGoldberg | m: ' '.uniprop.say; | 01:52 | |
camelia | rakudo-moar ca919d: OUTPUT«Zs» | ||
BenGoldberg | m: ' '.unimatch('.say; | ||
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 …» | ||
BenGoldberg | m: ' '.unimatch('Zs')..say; | ||
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 nounat <tmp>:1------> 3' '.unimatch('Zs')..…» | ||
BenGoldberg | m: ' '.unimatch('Zs').say; | ||
camelia | rakudo-moar ca919d: OUTPUT«True» | ||
BenGoldberg | u: .unimatch('Zs') | ||
unicodable6 | BenGoldberg, U+002E FULL STOP [Po] (.) | ||
BenGoldberg, U+0075 LATIN SMALL LETTER U [Ll] (u) | |||
BenGoldberg, U+006E LATIN SMALL LETTER N [Ll] (n) | |||
BenGoldberg, gist.github.com/7fd6afa0c457a7686b...17ba511279 | |||
01:52
labster joined
|
|||
AlexDaniel | u: { .unimatch('Zs') } | 01:53 | |
unicodable6 | AlexDaniel, U+0020 SPACE [Zs] ( ) | ||
AlexDaniel, U+1680 OGHAM SPACE MARK [Zs] ( ) | |||
AlexDaniel, U+00A0 NO-BREAK SPACE [Zs] ( ) | |||
AlexDaniel, gist.github.com/43cee5dd8b4fb0e1a4...30cf945c68 | |||
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 1Actually thrown at: in any at gen/moar/Metamodel.nqp line 3072 in block <unit> at <tmp> line 1» | ||
AlexDaniel | well, no, I'm not using / | ||
notviki | hehe | ||
wonder why it has "using" anything in it... | 01:58 | ||
AlexDaniel | m: say dd %42 | 02:00 | |
camelia | rakudo-moar ca919d: OUTPUT«Hash % = {}Nil» | ||
AlexDaniel | m: dd %42 | 02:01 | |
camelia | rakudo-moar ca919d: OUTPUT«Hash % = {}» | ||
AlexDaniel | what's that? | ||
commit: all dd %42 | |||
02:01
pierre_ joined
|
|||
notviki | coerser to hash? | 02:01 | |
committable6 | AlexDaniel, gist.github.com/3f52986c51224d7536...9113ac89ce | ||
AlexDaniel | ye but, what about 42? | ||
where does it go? | 02:02 | ||
notviki has no idea | |||
m: dd 42.hash | |||
camelia | rakudo-moar ca919d: OUTPUT«Odd number of elements found where hash initializer expected:Only saw: 42 in block <unit> at <tmp> line 1» | ||
notviki | m: dd 42.Hash | ||
camelia | rakudo-moar ca919d: OUTPUT«Odd number of elements found where hash initializer expected:Only saw: 42 in block <unit> at <tmp> line 1» | ||
notviki shrugs | |||
02:04
cooper left
02:05
NeuralAnomaly joined,
ChanServ sets mode: +v NeuralAnomaly,
NeuralAnomaly is now known as Guest90643,
pierre_ left
|
|||
notviki sees a little nest of bugs in combinations | 02:08 | ||
AlexDaniel++ | 02:09 | ||
Fixing the issue you found exposed a few buggy edge cases AND wrong spectests for them | |||
02:15
grumble joined
|
|||
notviki | Guest90643: status | 02:23 | |
.oO( IRC::Client bug... ) |
|||
02:27
cyphase left
|
|||
AlexDaniel | notviki: cool | 02:29 | |
I mean, the whole m: history is a bug nest… | |||
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… | ||
hopefully will start submitting tickets tomorrow :-/ | |||
notviki | oh, that's what /nickserv release is for... | 02:31 | |
02:31
Guest90643 left
02:32
NeuralAnomaly joined,
ChanServ sets mode: +v NeuralAnomaly,
cyphase joined
02:41
dugword joined
02:46
ilbot3 left
02:47
ilbot3 joined
|
|||
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]» | ||
AlexDaniel | useless useless use of warning? | ||
notviki | yeah | ||
03:03
lichtkind_ left
|
|||
AlexDaniel | m: my %e = enum < a b c >; say a.WHAT.WHICH | 03:06 | |
camelia | rakudo-moar ca919d: OUTPUT«|U74577832» | ||
AlexDaniel | notviki: I wonder if it's possible to trick it into printing just “|” | 03:07 | |
03:07
newbie1 left
|
|||
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» | ||
AlexDaniel | evalable: my $x = "a"; $x ~= $x for ^31; say $x.chars | ||
evalable6 | AlexDaniel, rakudo-moar ca919d9: OUTPUT«2147483648» | ||
AlexDaniel | hehe | ||
impressive, right? | |||
eval: my $x = ("a" x (2 ** 63)); say $x.chars | |||
evalable6 | AlexDaniel, rakudo-moar ca919d9: OUTPUT«0» | ||
AlexDaniel | … | ||
03:10
xtreak joined
03:12
itcharlie_linux joined
|
|||
notviki | m: my $x = ("a" x (2 ** 63)); say $x | 03:13 | |
camelia | rakudo-moar ca919d: OUTPUT«» | ||
notviki | m: say 2 ** 63 | 03:15 | |
camelia | rakudo-moar ca919d: OUTPUT«9223372036854775808» | ||
03:16
mr-foobar left
|
|||
notviki | tests for combinations are so sparse :( | 03:19 | |
03:19
kyan left
|
|||
notviki | m: my @a = ^3; @a[1]:delete; @a.combinations(3).say | 03:20 | |
camelia | rakudo-moar ca919d: OUTPUT«((0 (Mu) 2))» | ||
notviki | m: my @a = ^3; @a[1]:delete; dd @a.elems | ||
camelia | rakudo-moar ca919d: OUTPUT«3» | ||
03:23
aborazmeh left,
Perl6Robot joined
|
|||
Perl6Robot | OHAI! | 03:23 | |
03:23
Perl6Robot left
|
|||
notviki | -_- | 03:26 | |
AlexDaniel | commit: 2015.12,HEAD say [-] [+] 1,2,3 | 03:32 | |
committable6 | AlexDaniel, ¦«2015.12»: 6¦«HEAD»: -6 | ||
AlexDaniel | current answer seems right | ||
bisect: say [-] [+] 1,2,3 | |||
bisectable6 | AlexDaniel, Bisecting by output (old=2015.12 new=ca919d9) because on both starting points the exit code is 0 | ||
AlexDaniel, bisect log: gist.github.com/d8d4ed781cebd38986...86b7a0cb24 | |||
AlexDaniel, (2016-08-30) github.com/rakudo/rakudo/commit/b1...72e9a11558 | |||
AlexDaniel | m: (20..10)[^20] | 03:35 | |
camelia | ( no output ) | ||
AlexDaniel | m: say (20..10)[^20] | ||
camelia | rakudo-moar ca919d: OUTPUT«Index out of range. Is: 0, should be in 0..-1 in block <unit> at <tmp> line 1Actually thrown at: in block <unit> at <tmp> line 1» | ||
notviki | .seen skids | 03:36 | |
yoleaux | I saw skids 15 Dec 2016 22:05Z in #perl6: <skids> Same with I and l | ||
skids | o/ | ||
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: github.com/rakudo/rakudo/commit/2a...3c9f010b05 | 03:37 | |
03:38
itcharlie_linux left
|
|||
skids | Lemme look... I think it might come down to discrete math conventions. | 03:38 | |
AlexDaniel | alright that's it, good night everyone | 03:40 | |
notviki | night | ||
03:45
labster left
|
|||
notviki suspects skids got lost in a descrete maze :) | 03:50 | ||
03:50
noganex joined
|
|||
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? | ||
notviki visits #math | 03:52 | ||
03:52
sammers joined
|
|||
samcv | can somebody good at perl tell me what this means? | 03:52 | |
$done{"$key$_"} ||= push @lines, "{\"$_\",$prop_names->{$key}}"; | |||
i've used //= but, with the push in there it is kind of confusing | 03:53 | ||
notviki | it returns the result | ||
samcv | $done{"$key$_"} = $done{"$key$_"} || push @lines, "{\"$_\",$prop_names->{$key}}"; ? | ||
notviki | m: my @a = 42; dd @a.push: 45 | ||
camelia | rakudo-moar ca919d: OUTPUT«Array @a = [42, 45]» | ||
03:53
noganex_ left
|
|||
notviki | no, the || if for the value of $done{"$key$_"} | 03:53 | |
unless $done{"$key$_"} { push @lines, "{\"$_\",$prop_names->{$key}}"; $done{"$key$_"} = @lines; } | 03:54 | ||
samcv | ok thanks :) | ||
skids | I think it may be that it was expected that combinations might end up rejecting negatives by type. | ||
(using a subset or somesuch) | 03:55 | ||
(but a quicker fix was needed) | 03:58 | ||
notviki | antonfire │ notviki: no, you wouldn't treat it like 0. | ||
antonfire │ There is such a thing as a set with no elements. There is no such thing as a set with -1 elements. | |||
Yeah, OK. That makes sense to me, viewed in that way. | |||
skids: thanks. | 03:59 | ||
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
04:02
labster joined
04:06
pierre_ left
04:07
BenGoldberg left
|
|||
notviki | samcv: ah, I misread your "$done{"$key$_"} = $done{"$key$_"} || push @lines, "{\"$_\",$prop_names->{$key}}";" | 04:08 | |
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) | |||
hmmm | 04:09 | ||
notviki wonders... | |||
m: my %h = foo => Failure.new; %h<foo> ||= "bar"; dd %h<foo> | |||
camelia | rakudo-moar ca919d: OUTPUT«Str %h = "bar"» | ||
notviki | oh right | ||
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)» | ||
notviki | m: my %h = foo => Failure.new; %h<foo> &&= "bar"; dd %h<foo>.handled | ||
camelia | rakudo-moar ca919d: OUTPUT«Bool::True» | ||
notviki | m: my %h = foo => Failure.new; %h<foo> = %h<foo> && "bar"; dd %h<foo>.handled | ||
camelia | rakudo-moar ca919d: OUTPUT«Bool::True» | ||
notviki | cool | ||
notviki & | |||
samcv | thanks | 04:11 | |
04:12
jraglin joined
|
|||
notviki | m: my %h; %h<foo> := Proxy.new: STORE => method ($v) { say "STORING STUFF!" }, FETCH => method () { True }; %h<foo> ||= 42; | 04:12 | |
camelia | ( no output ) | ||
notviki | m: my %h; %h<foo> := Proxy.new: STORE => method ($v) { say "STORING STUFF!" }, FETCH => method () { True }; %h<foo> = %h<foo> || 42; | ||
camelia | rakudo-moar ca919d: OUTPUT«STORING STUFF!» | ||
notviki | \o/ | ||
skids | notviki: yeah I think that code needs more work: | 04:19 | |
m: say combinations(3,4) | |||
camelia | rakudo-moar ca919d: OUTPUT«()» | ||
skids | m: say combinations(0,4) | ||
camelia | rakudo-moar ca919d: OUTPUT«(())» | ||
04:21
cyphase left
04:23
jraglin left
04:26
cyphase joined
04:37
aborazmeh joined,
aborazmeh left,
aborazmeh joined
04:42
StefanSC joined
04:51
khw left
05:03
BenGoldberg joined
05:13
Cabanossi left
05:14
Cabanossi joined
05:18
pyrimidi_ joined,
pyrimidine left
05:23
geekosaur left
05:26
geekosaur joined
05:30
Wanderer68 left
05:41
bitmap joined
05:43
Ben_Goldberg joined,
BenGoldberg left,
Ben_Goldberg is now known as BenGoldberg,
StefanSC left
05:55
aborazmeh left
06:03
pierre_ joined
06:07
pierre_ left
06:09
rburkholder left
06:10
CIAvash joined
06:16
pyrimidine joined,
pyrimidi_ left
06:17
Tonik joined
06:19
BenGoldberg left
06:22
BenGoldberg joined
06:29
bjz joined
06:33
Axord left
06:35
mr-foobar joined
06:43
Ben_Goldberg joined,
BenGoldberg left,
Ben_Goldberg is now known as BenGoldberg
06:45
darutoko joined,
bjz left
06:58
dugword left
07:00
bjz joined
07:03
Ben_Goldberg joined,
BenGoldberg left,
Ben_Goldberg is now known as BenGoldberg
07:08
skids left
07:12
Ben_Goldberg joined,
BenGoldberg left,
Ben_Goldberg is now known as BenGoldberg
07:20
pyrimidi_ joined,
pyrimidine left
07:26
pyrimidine joined,
pyrimidi_ left
07:29
BenGoldberg left
07:32
cibs left
|
|||
samcv | m: use nqp; nqp::codepointfromname('PENGUIN').chr.say | 07:33 | |
camelia | rakudo-moar 3baffe: OUTPUT«🐧» | ||
07:33
Tonik left
|
|||
samcv | what would we want this called for perl. for nqp it's called codepointfrom name. i'm thinking maybe unifromname? | 07:33 | |
idk a bit longish. but | 07:34 | ||
07:34
cibs joined
|
|||
samcv | unifromname vs uniname | 07:34 | |
07:37
xiaomiao joined
08:02
CIAvash left,
lizmat joined
08:03
pierre_ joined
|
|||
moritz | don't we have that through "\c[PENGUIN]".ord ? | 08:07 | |
08:08
pierre_ left
|
|||
samcv | yes | 08:12 | |
but you can't do that programmically | |||
(sp) | |||
moritz | m: my $n = 'PENGUIN'; say "\c[$n]" | ||
camelia | rakudo-moar dbbf9d: OUTPUT«5===SORRY!5=== Error while compiling <tmp>Unrecognized \c characterat <tmp>:1------> 3my $n = 'PENGUIN'; say "\c[7⏏5$n]" expecting any of: argument list double quotes term» | ||
samcv | yep | ||
moritz | ok, I see your point | ||
Str.new(codepoint-name => 'PENGUIN') ? | 08:13 | ||
samcv | how does unifromname sound though? any better suggestions? | ||
hm | |||
that is pretty awkward | |||
08:13
wamba joined,
CIAvash joined
|
|||
moritz | just codepoint, possibly | 08:13 | |
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') | ||
samcv | that could be fine :) | ||
wait | |||
codepoint implies from a number | |||
moritz | not really | ||
codepoint is just the concept of a single "character" in the codepoint in the Unicode database, no? | 08:15 | ||
Str.from-name('PENGUIN') ? | |||
bonus points for also implementing it in Uni | |||
samcv | well. you can have ZWJ sequences | 08:16 | |
that is multi character and when we support them we'd want an easy way to do so | |||
moritz looks up zwj sequences | 08:17 | ||
samcv | m: "👨🏼⚕️".say | 08:18 | |
camelia | rakudo-moar dbbf9d: OUTPUT«👨🏼⚕️» | ||
samcv | m: "👨🏼⚕️".chars.say | ||
camelia | rakudo-moar dbbf9d: OUTPUT«3» | ||
samcv | so once we support it, it will say 1 | ||
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 | |||
atm we have unicode name resolve to only a single codepoint, well | |||
moritz | method from-name(*@names) { @names.map({ nqp::codepointfromname($_)}).join } | ||
samcv | to a single codepoint even though normalization forms could make it multiple | 08:19 | |
technically | |||
but normalization is not going to apply to the ZWJ | |||
i like from-name though | |||
would be pretty natural for ZWJ | |||
Str.from-name('woman cartwheeling') | 08:20 | ||
for example | |||
moritz | sorry, I think I can't contribute much besides API suggestions at this point | ||
samcv | nah that is fine | ||
that's really what i need | |||
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 | ||
getting the API right is an important first step | |||
08:29
domidumont joined
08:31
pierre_ joined
08:33
domidumont left,
mattp_ joined
08:34
domidumont joined
08:36
labster left,
Actualeyes left
08:47
labster joined
08:48
RabidGravy joined
|
|||
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)» | ||
moritz | m: say (^Inf).grep({last if $_ > 5; True}).elems | ||
camelia | rakudo-moar dbbf9d: OUTPUT«Cannot .elems a lazy list in block <unit> at <tmp> line 1Actually thrown at: in block <unit> at <tmp> line 1» | ||
moritz | m: say (^20).grep({last if $_ > 5; True}).elems | ||
camelia | rakudo-moar dbbf9d: OUTPUT«6» | ||
moritz | m: say (^Inf).grep({last if $_ > 5; True}).join | 08:56 | |
camelia | rakudo-moar dbbf9d: OUTPUT«...» | ||
moritz | m: say (^Inf).grep({last if $_ > 5; True}).eager.join | ||
camelia | rakudo-moar dbbf9d: OUTPUT«012345» | ||
sammers | hey #perl6, just wanted to wish everyone happy holidays. hope you have a great 2017. | 08:58 | |
moritz | same to you, sammers | ||
sammers | thanks moritz | ||
08:59
xtreak left
09:00
astj_ joined,
astj left
09:04
xtreak joined
09:15
xtreak left
09:24
xtreak joined
|
|||
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: gist.github.com/regnarg/3b98a0b5f3...c1bb0da3ff It took some NQP hackery but the result is still rather simple. Usage: ./screpl.p6 <my-script.p6> | 09:28 | |
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:29 | ||
I also do not quite understand the condition used to decide whether to run &MAIN... | 09:30 | ||
moritz | regnarg: wow, nice work | 09:31 | |
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
|
|||
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:32
vadfat left
|
|||
moritz | vadfat: please use a pastebin for pasting code (and p5 code is off-topic here) | 09:33 | |
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:34 | |
moritz | regnarg: I think it is | 09:35 | |
when you type code into the REPL, it's the mainline program that the compiler executes for you | 09:36 | ||
09:37
pyrimidi_ joined,
pyrimidine left
|
|||
pierre_ | ugexe: Sorry, i was dragged out of my computer, it was still not working, however after another upgrade of moarvm, it did | 09:38 | |
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:42 | |
dalek | c: 7e7e0a6 | samcv++ | / (2 files): Add a seperate color for `TOP´ in grammars Move some of the “Atom” things from the CSS to the end. We probably don't need them, but let’s leave them in for now. |
09:43 | |
c: b1109dc | samcv++ | doc/Type/NFD.pod6: Trigger doc rebuild to pull in highlighter changes github.com/perl6/atom-language-per...8356a9b137 |
|||
synopsebot6 | Link: doc.perl6.org/type/NFD | ||
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:44 | |
samcv | 03C02O1111LOR19S | 09:46 | |
RabidGravy | well that's, er, nice Fedora just upgraded libgfortran | 09:48 | |
lizmat | regnarg: FWIW, I think that's between "difficult" and "hard": Perl 6 has a *lot* of introspection you can use | 09:52 | |
09:52
Thorsten_ joined
|
|||
lizmat | regnarg: it most likely would involve at least some nqp:: ops | 09:52 | |
09:52
Thorsten_ left
|
|||
lizmat | so you would have to get yourself familiar with that | 09:52 | |
samcv | Perl 6, making the Easy Hard and the Impossible within reach | 09:53 | |
09:53
ThorstenB joined
|
|||
samcv | maybe it was keeping | 09:53 | |
yeah | 09:54 | ||
@DrForr, should reverse Easy and Hard so it's Keeping the Hard, Easy and impossible within reach | |||
09:55
xtreak left
09:57
ThorstenB left,
ThorstenB joined,
xtreak joined
|
|||
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". | ||
samcv | ratty repl? | 10:00 | |
lizmat | if you look at how Cool.EVAL works, you will have your answer | ||
samcv | ah as a method | ||
i can see that | |||
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:03 | |
lizmat | macros are still experimental; maybe masak could give you an answer | 10:05 | |
afk& | 10:07 | ||
10:08
lizmat left
|
|||
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» | ||
regnarg | Ok, seems EVAL already knows how to do this. No just wrap this with a REPL in a nice-looking module... | 10:14 | |
That's probably nicer than macros anyway. | 10:16 | ||
10:18
tojo joined,
tojo left
10:28
Ven joined
10:30
wamba left,
Rawriful joined,
CIAvash left
10:31
xtreak left
10:51
kalkin- joined
|
|||
notviki | regnarg: that's going away | 10:59 | |
regnarg: the :context thing | |||
regnarg | notviki: Why exactly? That seems very useful (without it, you cannot even trivially wrap EVAL) | 11:00 | |
11:00
labster left
|
|||
regnarg | And not only with CALLER::. You might also want to run some code in a new isolated namespace... | 11:01 | |
notviki | regnarg: IIRC it's something about optimizations | 11:02 | |
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:03 | |
notviki | regnarg: irclog.perlgeek.de/perl6-dev/2016-0...i_12678792 | 11:04 | |
well, that doesn't give more info except for it'll stop working "As soon as the optimizer gets better." | 11:05 | ||
but jnthn can tell you more, I guess. | |||
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 | ||
11:07
Rawriful left
|
|||
regnarg | notviki: Actually, that cleared up a few things, thanks. | 11:07 | |
notviki | yey | ||
regnarg | However, that is a problem with CALLER::, not :context | 11:08 | |
I think there might be valid use cases for :context other than CALLER:: | |||
11:08
xtreak joined
|
|||
notviki | Ah right, sorry. I misremembered | 11:08 | |
11:09
Rawriful joined
|
|||
regnarg | You remembered correctly. jnthn says "That context named arg should also go away, it's too open to abuse." | 11:09 | |
I just think that is unnecessarily harsh. Perhaps we could just warn in the documentation that it may break in some cases. | 11:10 | ||
11:10
FROGGS joined
|
|||
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:11 | |
11:12
Actualeyes joined
11:14
wamba joined
|
|||
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:15 | |
11:16
pierre_ left,
pierre_ joined
11:17
pmurias_ joined,
pmurias joined
|
|||
pmurias | what does the p6return op do? | 11:18 | |
11:19
pmurias_ left
|
|||
pmurias | notviki: that means we can expect some RT tickets to be closed after you eat a good breakfast? ;) | 11:20 | |
11:21
pierre_ left
11:25
g__k__ left
|
|||
notviki | heh, sadly no :) | 11:27 | |
moritz | during my studies I once dreamed of differential equations | ||
dalek | c: 18b6f6a | samcv++ | / (2 files): CSS: make <regexidentifiers> darker and color token/rule nicely |
11:28 | |
samcv | this looks pretty nice a.uguu.se/SdTyLDSPSyou_Screenshot_...032639.png | ||
before a.uguu.se/3kW5CjdQmBWr_Screenshot_...032701.png | |||
maybe TOP should be bold? | 11:29 | ||
moritz | samcv++ | ||
samcv | the bold? | ||
i made it slightly different shade but you can't really tell | 11:30 | ||
it's hard finding colors for a white background | |||
notviki | m: grammar { rule meows { .+ } }.parse('Look ma, no TOP!', :rule<meows>).say | ||
camelia | rakudo-moar 5023bf: OUTPUT«「Look ma, no TOP!」» | ||
samcv | :P | 11:32 | |
moritz | samcv: the ++ was for the color improvements; I'm undecided about bold TOP | 11:33 | |
samcv | ah k | ||
moritz | the upper-casing already shouts | ||
samcv | yeah | ||
11:35
TEttinger left
11:36
TEttinger joined
11:39
kalkin- left
11:42
astj_ left
11:43
b2gills1 joined
11:44
rburkholder joined
|
|||
notviki | pmurias: if you find out may be worth documenting it in github.com/rakudo/rakudo/blob/nom/...n#p6return | 11:45 | |
11:45
rpburkholder joined,
b2gills left
11:46
pierre_ joined
11:49
rburkholder left,
raschi joined
|
|||
pmurias | notviki: yes, that would likely help new devs | 11:51 | |
notviki: I'm thinking of writing tests for the p6*ops | |||
11:53
pierre_ left
12:00
ssm joined,
xtreak left
12:03
astj joined
|
|||
pmurias | I'm not sure if testing them from the NQP or Perl 6 level would be better | 12:09 | |
12:13
TEttinger left
|
|||
samcv | pmurias, can you revert the moarvm pull that got done last? | 12:14 | |
its been breaking things and i don't have the power to undo it | |||
12:17
bjz_ joined
12:19
mojca joined,
bjz left
|
|||
mojca | how could I build MoarVM against the system libuv? | 12:19 | |
to avoid the conflict with existing system libuv | |||
12:20
Gasher joined
|
|||
pmurias | samcv: you mean your last PR to the MoarVM? | 12:28 | |
samcv | yeah | ||
that | |||
pmurias | I don't think I have a MoarVM commit bit either :/ | ||
samcv | oh sorry it was merged in nvm | 12:29 | |
[Coke], ping | |||
pmurias | samcv: you could unbump MoarVM in nqp if the PR is causing trouble | 12:31 | |
samcv | true | ||
but i don't think that will magically undo it | |||
12:36
Rogbro joined
12:41
Rogbro left
12:58
lucasb joined
|
|||
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 build.macports.org/builders/ports-...ogs/stdio) | 13:08 | |
actually it seems as if libatomic_ops @7.4.4 works fine, but the built-in library doesn't | |||
notviki | mojca: FWIW, there's also #moarvm . I don't know if all the people in there are also here. | 13:10 | |
mojca | notviki: thanks, I'll keep bothering others on the other channel | 13:13 | |
dalek | c: 6bc89de | coke++ | htmlify.p6: Order use statements. (local vs. external) |
13:29 | |
c: 925b13c | coke++ | doc/ (3 files): remove trailing whitespace |
|||
c: 0904dc8 | coke++ | xt/ (2 files): learn new words |
|||
AlexDaniel | notviki: huh, did you actually see IRC window in your dream? | ||
13:31
bjz joined,
bjz_ left
13:34
sammers left
|
|||
notviki | AlexDaniel: yeah, something like that | 13:35 | |
tbrowder | good am or pm, #perl6 | 13:36 | |
notviki | \o | ||
tbrowder | can someone please turn on the switch that will show commits to perl6-mode here? | 13:37 | |
samcv | perl6-mode? | 13:38 | |
tbrowder | yes: github:perl6/perl6-mode | ||
notviki | tbrowder: done | 13:39 | |
tbrowder | t'anks! | 13:40 | |
notviki: i assume you will morph into another alias on midnight, 31 dec, UTC? | 13:42 | ||
AlexDaniel | tbrowder++ | 13:45 | |
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:47
Actualeyes left
|
|||
rightfold | m: :2017year | 13:49 | |
camelia | rakudo-moar 5023bf: OUTPUT«WARNINGS for <tmp>:Useless use of ":2017year" in sink context (line 1)» | ||
notviki | it's a Pair; same as year => 2017 or :year(2017) | 13:52 | |
13:57
iH2O joined
14:01
sammers joined,
kalkin- joined
|
|||
lucasb | m: sub infix:<:>($a) { 42 }; say (10 :) | 14:01 | |
camelia | rakudo-moar d35efb: OUTPUT«42» | ||
lucasb | somehow, I'm able to call an infix with only one operand? | 14:02 | |
14:02
Actualeyes joined
|
|||
notviki | lucasb: you can all it with any amount of arguments | 14:03 | |
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 | ||
lucasb | *expectedly | ||
camelia | rakudo-moar d35efb: OUTPUT«[10, 20, 30, 50, 60]» | ||
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) | ||
camelia | rakudo-moar d35efb: OUTPUT«\(10, 20)» | ||
lucasb | m: sub infix:<z>(|c) { c }; say (10 z) | ||
camelia | rakudo-moar d35efb: OUTPUT«5===SORRY!5=== Error while compiling <tmp>Missing required term after infixat <tmp>:1------> 3sub infix:<z>(|c) { c }; say (10 z7⏏5) expecting any of: prefix term» | ||
AlexDaniel | alright, 7k queries to go through | ||
lucasb | m: sub infix:<:>(|c) { c }; say (10 :) | ||
camelia | rakudo-moar d35efb: OUTPUT«\(10)» | ||
AlexDaniel | weeeeee! | ||
lucasb | ^^ noticed the difference with ":" ? | 14:06 | |
it parses as valid syntax | |||
dalek | c: 7b663ba | coke++ | doc/Language/operators.pod6: Clear up confusion on temp Fixes #1085 |
14:09 | |
synopsebot6 | Link: doc.perl6.org/language/operators | ||
14:13
cdg joined
14:20
iH2O left
14:25
kalkin- left
14:26
bjz left
14:30
cdg left
14:32
cyphase left
|
|||
notviki | FWIW: a ton of IO::Path methods and subs are documented as returning failures, but in reality they throw | 14:34 | |
There's a ticket for .chdir, but I see most of the routines have the same issue: rt.perl.org/Ticket/Display.html?id=130418 | |||
[Coke] | samcv: when you add whitespace to files to trigger a new build, that ends up failing one of the xt/ tests. | ||
notviki | you can trigger by adding '-' in '------' lines in readme | 14:35 | |
samcv | nice ok | ||
does any change trigger rebuild? any push? or no | |||
notviki | yeah any push | 14:36 | |
samcv | we should have a dedicated like. scratch file | ||
add or delete a space and push | |||
14:36
cyphase joined
|
|||
notviki | samcv: what is it for? To fetch new atom highlights? | 14:36 | |
samcv | yeah | ||
notviki | We should make the build script check the atom repo for new updates instead | 14:37 | |
14:37
domidumont left
|
|||
samcv | that would be cool | 14:37 | |
notviki | It's this script github.com/perl6/doc/blob/master/u...e-and-sync | ||
[Coke] | samcv: you pinged? | 14:38 | |
samcv | oh. the moar got reverted. so you are not needed regarding that | ||
lucasb | m: class C { method foo { say 10 } }; foo C.new: | 14:41 | |
camelia | rakudo-moar d35efb: OUTPUT«10» | ||
lucasb | strange, locally in my machine the above snippet is failing, but in camelia it works O.o | ||
I get a 'Undeclared routine: foo' | 14:42 | ||
can someone test it locally? :) | 14:43 | ||
notviki | you forgot the : at the end locally | 14:45 | |
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. | ||
regnarg | I can confirm this | ||
notviki | :S | ||
regnarg | on 2016.11 | ||
lucasb | echo 'class C { method foo { say 10 } }; foo C.new:' | perl6 - | 14:47 | |
notviki | Oh, it's broken in REPL | ||
lucasb | ^^ this triggers, but 'perl6 -e' doesn't | ||
regnarg | But this does: echo 'class C { method foo { say 10 } }; foo C.new:' >/tmp/x.p6; perl6 /tmp/x.p6 | 14:48 | |
14:49
raschi left
|
|||
lucasb | regnarg: thanks for confirming :) | 14:49 | |
notviki | well, "locally" to me means with -e '' or a script | ||
14:49
raschira joined
|
|||
notviki | .oO( only weirdos use the REPL... ) |
14:50 | |
ops, did I think that out loud :o | |||
lucasb | perl6 -e $'class C { method foo { say 10 } }; foo C.new:\n' | ||
^^ bash syntax to insert a newline at the end | 14:51 | ||
notviki | :S | ||
lucasb | :) | 14:52 | |
notviki | $ perl6 --target=parse -e 'say "hi":' | 14:54 | |
===SORRY!=== | |||
Expected native int argument, but got num | |||
14:59
lucasb left,
domidumont joined
15:00
b2gills1 is now known as b2gills
15:03
Actualeyes left
|
|||
[Coke] | gfldex: why do we need #130407 ? | 15:04 | |
synopsebot6 | Link: rt.perl.org/rt3//Public/Bug/Displa...?id=130407 | ||
[Coke] | (we already had a few dozen macro tickets...) | ||
15:06
Axord joined,
newbie1 joined
|
|||
[ptc] | hrm, it seems that perl.org's mail server doesn't use TLS... | 15:08 | |
15:12
sammers left
15:14
pierre_ joined
15:16
Actualeyes joined
15:21
kalkin- joined,
teksteiner joined
|
|||
kalkin- | Is S22 up to date? If not what is the autoritative sourrce for that? | 15:22 | |
notviki | kalkin-: all of speculations are historical documents and are not kept up to date. | 15:24 | |
authoritative source would be the roast ( github.com/perl6/roast/ ). | 15:25 | ||
it's possible this stuff is poorly tested/document tho | |||
kalkin- | I see thanks | ||
dalek | c: b44666b | coke++ | doc/Language/ (2 files): Correction of how temp inits a variable. Move the comparison to p5 (which was inline on temp) instead to local in the p5 section. Fixes #1085 |
15:30 | |
pmurias | kalkin-: the docs are supposed to be taking over the documentation role from the synopsis | 15:35 | |
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. | ||
*reality. | |||
(but yes, doc site always needs improvement.) | 15:37 | ||
15:39
sammers joined
|
|||
kalkin- | Perl6 is a HUGE language. The lack of a written down specification can be really harmful.(I know whining doesn't help) | 15:39 | |
[Coke] | It is written down. just in Perl 6. :| | 15:40 | |
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 | ||
[Coke] | you can help though: please open tickets on perl6/docs when you find that something isn't explained (or not explained correctly) | ||
AlexDaniel: that's not really helpful. | |||
notviki never even read the specs | |||
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 | |
interesting | |||
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) | ||
notviki | I guess he got annoyed with people mispronouncing his name? :) | ||
samcv | yeah | ||
SPVRIVS CARVILIVS RVCA (At that time, "U" and "V" were also the same letter). | |||
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. | ||
samcv | Garvilus | ||
hah. | |||
notviki | AlexDaniel: well... we're not really looking to keep specs up to date. | 15:45 | |
[Coke] | kalkin-: (open issues) perfect. Thanks! | ||
notviki: please don't say "specs" if you mean "synopses". | |||
notviki | Expecting a single person to be able to keep it up to date is unrealistic | ||
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 | ||
AlexDaniel | notviki: in fact, I was thinking about throwing away some of the parts… | ||
samcv | of the spec? | ||
AlexDaniel | kalkin-: you are completely right, I'm not the best person to represent perl6 community | 15:46 | |
samcv: yes | |||
15:46
sammers left
|
|||
samcv | i try and update the specs as i see them being different but unlike the docs | 15:46 | |
there's not an effort to improve _them_ specifically, while for the docs there is | |||
the end point should be that the docs contain all the information | |||
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 | ||
raschira | SPVRIVSCARVILIVSRVCA --> Classical Latin didn't have spaces either. | 15:48 | |
notviki | :o | ||
samcv | who needs lowercase letters | 15:49 | |
AlexDaniel | whoneedsspaces | ||
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. | ||
samcv | THEQVICKBROWNDOCJVMPEDOVERTHEQVICKFOX | ||
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? | ||
so no U and no G and no J either? | |||
i guess all the curvy letters didn't exist? | |||
raschira | J came from Hebrew. Lating didn't had it. | 15:52 | |
Latin* | |||
samcv | nice | ||
who needs vowels actually | 15:53 | ||
arabic only has implicit vowels | |||
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 | ||
samcv | hard to read with my 11pixel high font | 15:55 | |
all smashed together | |||
#طالب_يطلق_النار_داخل_مدرسته | 15:56 | ||
google translates it as # Talib_ataleg_nar_dakhl_msth | |||
don't think there's spaces in arabic either | |||
raschira | We wite TRAIANO as Trajano. | ||
or Trajan. | 15:57 | ||
notviki | It says "Student shoots inside the school" | ||
you need to replace the underscores for google translate to understand it | |||
replace with spaces | |||
kalkin- | Hmm S22 looks kind of like the most authoritative source besides roast | ||
ugexe.com/perl6-distribution-though...proposals/ | |||
samcv | are there underscores in there | ||
oh i see | |||
prolly makes it easier to read with underscores? since no spaces in arabic right? | 15:58 | ||
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 | ||
oh that makes sens | |||
qph.ec.quoracdn.net/main-qimg-2a0d..._webp=true see pic | |||
kalkin- | Docs are missing CompUnit api documentation | ||
I'm on mobile now I will create an issue later | |||
samcv | thanks :) | 16:00 | |
pmurias | kalkin-: re lack of written specification, would quality reference docs (when they exist) solve a lot of the problem? | 16:01 | |
kalkin- | Yes | 16:02 | |
I should be able to create my own package manager and even perl 6 implementation from something | |||
raschira | The "something" you should be use to be able to recreate the language from is roast. | 16:03 | |
samcv | almost forgot what i was doing. some more research into some unicode things | 16:06 | |
wouldn't that be better worked as the 'target'? | 16:07 | ||
than what it would be created from | |||
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 | ||
raschira | An spelled-out spec too. | ||
pmurias | a test suite can help out in understanding how something works when the docs are unclear and/or missing | 16:10 | |
but I don't think that the need for good docs is really debatable | 16:11 | ||
16:13
wamba left
16:15
CIAvash joined
16:17
ggoebel joined
|
|||
notviki | docs? pfft... use the source! | 16:17 | |
:) | |||
ugexe | the CompUnit api is pretty well commented in the code itself | 16:22 | |
github.com/rakudo/rakudo/blob/nom/...ository.pm | 16:23 | ||
notviki | so no one rakudobugged the foo C.new: thing? | 16:28 | |
cool... | |||
16:29
ChoHag joined
|
|||
ugexe | you can create a package manager without using compunit at all | 16:29 | |
16:30
sammers joined
|
|||
notviki | ticketed rt.perl.org/Ticket/Display.html?id=130425 | 16:30 | |
AlexDaniel: combinations now fixed | 16:33 | ||
Got more? | |||
16:40
khw joined
16:42
labster joined,
labster left
|
|||
AlexDaniel | notviki: there's a pile of stuff, but it'll take some time to get something useful out of it | 16:43 | |
notviki | :( | 16:44 | |
16:44
dugword joined
|
|||
AlexDaniel | commit: 2015.12,HEAD multi regex-dispatch(/fo+/) { }; multi regex-dispatch(/ba+/) {}; regex-dispatch("foo"); | 16:45 | |
committable6 | AlexDaniel, gist.github.com/734214dab5acba58a9...1ba15861d7 | ||
AlexDaniel | notviki: what about this? | ||
notviki: current error message doesn't even give a line number | |||
bisect: multi regex-dispatch(/fo+/) { }; multi regex-dispatch(/ba+/) {}; regex-dispatch("foo"); | |||
bisectable6 | AlexDaniel, Bisecting by output (old=2015.12 new=d86c419) because on both starting points the exit code is 1 | ||
notviki | huh | 16:46 | |
bisectable6 | AlexDaniel, bisect log: gist.github.com/9d7dd2e3b880ba467a...ddb90384c0 | ||
AlexDaniel, (2016-12-03) github.com/rakudo/rakudo/commit/5b...a63ee722ff | |||
notviki | m: sub (/foo/) { say "wat" }("foobar") | ||
AlexDaniel | commit: 5baa064^,5baa064 multi regex-dispatch(/fo+/) { }; multi regex-dispatch(/ba+/) {}; regex-dispatch("foo"); | ||
camelia | rakudo-moar d86c41: OUTPUT«===SORRY!===Cannot find method 'compile_time_value' on object of type QAST::Op» | ||
committable6 | AlexDaniel, gist.github.com/afb5e765d88b39c6a0...872a7d5779 | ||
notviki | committable6: 2015.12 sub (/foo/) { say "wat" }("foobar") | ||
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» | ||
notviki | oh, ok | ||
AlexDaniel | yea and it seems to be your fault as well? :) | ||
notviki | I thought it was working before | ||
there's an RFC ticket to allow regex literals | 16:47 | ||
Nah, I made it better. Now it crashes instead of doing the wrong thing :P | 16:48 | ||
AlexDaniel | notviki: both seem to be SORRY | ||
notviki: I'm looking at gist.github.com/Whateverable/73421...1ba15861d7 | 16:49 | ||
notviki | I'm looking at: | ||
committable6: 2015.12 sub (/foo/) { say "wat" }("foobar") | |||
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» | ||
notviki | committable6: 2015.12 sub (/foo/) { say "wat" }() | ||
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» | ||
notviki | committable6: 2015.12 sub (/foo/) { say "wat" }(3) | ||
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» | ||
notviki | committable6: 2015.12 sub (/foo/) { say "wat" }(0) | ||
committable6 | notviki, ¦«2015.12»: wat | ||
notviki | lol | 16:50 | |
AlexDaniel | o_o | ||
notviki | committable6: 2016.12 sub (/foo/) { say "wat" }(0) | ||
committable6 | notviki, ¦«2016.12»: ===SORRY!===Cannot find method 'compile_time_value' on object of type QAST::Op «exit code = 1» | ||
16:50
skids joined
|
|||
AlexDaniel | yea… well… That's LTA for sure | 16:52 | |
16:53
andrewalker joined
16:56
wamba joined,
Ven left
16:58
troys joined
|
|||
AlexDaniel | commit: HEAD class A { has $.wut = [] }; my $a = A.new; $a.wut = [1,2,3]; $a.wut | 17:02 | |
committable6 | AlexDaniel, ¦«HEAD»: | ||
AlexDaniel | commit: HEAD class A { has $.wut = [] }; my $a = A.new; $a.wut = [1,2,3]; say $a.wut | ||
committable6 | AlexDaniel, ¦«HEAD»: [1 2 3] | ||
AlexDaniel | commit: 2015.12 class A { has $.wut = [] }; my $a = A.new; $a.wut = [1,2,3]; say $a.wut | ||
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» | ||
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 | ||
AlexDaniel, bisect log: gist.github.com/fde962e59837ecb5ac...69970cbbf6 | |||
AlexDaniel, (2016-03-02) github.com/rakudo/rakudo/commit/fd...7e379b5038 | |||
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 | ||
camelia | rakudo-moar d86c41: OUTPUT«3» | ||
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» | ||
notviki | AlexDaniel: yeah, I'd expect the same | ||
m: class A { has @.wut }; my $a = A.new; $a.wut = [1,2,3]; say $a.wut.elems | |||
camelia | rakudo-moar d86c41: OUTPUT«3» | ||
notviki | m: class A { has %.wut }; my $a = A.new; $a.wut = [1,2,3,4]; say $a.wut | ||
camelia | rakudo-moar d86c41: OUTPUT«{1 => 2, 3 => 4}» | ||
17:06
holli joined
|
|||
notviki | $ perl6 -e 'm: say combinations 2147483647, 5' | 17:07 | |
First parameter out of range. Is: 2147483647, should be in 1..2147483647 | |||
17:07
kalkin- left
|
|||
notviki | fun one :) | 17:07 | |
(32-bit box) | |||
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 github.com/$user/$repo/archive/$co...-id.tar.gz links | 17:11 | |
AlexDaniel | commit: all class Foo { submethod BUILD { fail "noway" } } ; dd Foo.new | 17:12 | |
committable6 | AlexDaniel, gist.github.com/fdf3c8eaa66a4b98cc...f7a24a1267 | ||
samcv | ugexe, going to bed right now. will respond to both those comments you made tomorrow. cheers | ||
AlexDaniel | notviki: is this related to your latest ticket about stuff returning a failure instead of throwing? ↑ | ||
samcv | is there a .remind? | ||
AlexDaniel | yes | ||
samcv | .remind samcv test | ||
test | |||
AlexDaniel | .in 5h say hello | ||
yoleaux | AlexDaniel: I'll remind you at 22:12Z | ||
samcv | will it be AT that time | 17:13 | |
or the next time i talk | |||
AlexDaniel | or probably this | ||
.tell AlexDaniel hello | |||
yoleaux | AlexDaniel: Talking to yourself is the first sign of madness. | ||
AlexDaniel | t | ||
:( | |||
samcv | that sucks | ||
17:13
AlexDaniel is now known as AlexDaniel2
|
|||
samcv | would be nice if you could do that | 17:13 | |
moritz | .in 5s say hello | ||
yoleaux | moritz: I'll remind you at 17:13Z | ||
moritz: say hello | |||
AlexDaniel2 | .tell AlexDaniel hello | ||
yoleaux | AlexDaniel2: I'll pass your message to AlexDaniel. | ||
17:13
AlexDaniel2 is now known as AlexDaniel
|
|||
moritz | it doesn't wait till I speak up | 17:13 | |
notviki | .in -5s say "hello" | 17:14 | |
yoleaux | notviki: I'll remind you at 17:14Z | ||
notviki: say "hello" | |||
notviki | heh | ||
AlexDaniel | .tell samcv “ugexe, going to bed right now. will respond to both those comments you made tomorrow. cheers” | ||
yoleaux | 17:13Z <AlexDaniel2> AlexDaniel: hello | ||
AlexDaniel: I'll pass your message to samcv. | |||
samcv | you better yoleaux | ||
.tell Samcv hi | |||
yoleaux | samcv: Talking to yourself is the first sign of madness. | ||
17:14Z <AlexDaniel> samcv: “ugexe, going to bed right now. will respond to both those comments you made tomorrow. cheers” | |||
samcv[ | .tell samcv{ test | ||
yoleaux | samcv[: Talking to yourself is the first sign of madness. | ||
samcv[ | dammit | ||
notviki | heh | ||
AlexDaniel | wtf? xD | ||
samcv\ | AlexDaniel, on irc | is uppercase \ | 17:15 | |
and [] are lowercase {} | |||
notviki | AlexDaniel: on IRC protocol [ and { are capital/lowercase | ||
samcv\ | _ uppercase - | ||
mst | lol | ||
AlexDaniel | oh… really?? O_o | ||
samcv\ | yep | ||
notviki | The RFC says "Thanks to its Scandinavian origin..." | ||
mst | because of course IRC is case preserving but case insensitive | ||
`\\_--_|| | my face when i can't get to sleep < | 17:16 | |
also a valid irc name | |||
.tell `\\_--_|| test | |||
yoleaux | `\\_--_||: Talking to yourself is the first sign of madness. | ||
`\\_--_|| | .tell `\\____\| test | ||
yoleaux | `\\_--_||: I'll pass your message to `\\____\|. | ||
AlexDaniel | just tell to “samcv”, then change your nickname back. As simple as that | ||
just don't talk after that | |||
moritz | not talking? sounds hard | 17:17 | |
`\\_--_|| | i think the bot messed up | ||
pretty sure i said to tell identical as long as - and _ are same | |||
i think they are | |||
er | |||
AlexDaniel | it's not written in perl 6, sooo personally I don't really care :) | ||
samcv | test | 17:18 | |
moritz | \\____\| also misses one | at the end | ||
samcv | oh did i mess up | ||
does it though? | |||
\| and || are the same on irc for nicknames | |||
same user | |||
well i think i'm actually going to be asleep | 17:19 | ||
` | heh, registered | ||
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 | |
AlexDaniel, bisect log: gist.github.com/35d6ce075c417ff650...2f6fe99c1f | |||
AlexDaniel, (2016-06-11) github.com/rakudo/rakudo/commit/d5...71548528ea | |||
mst | damnit, samcv changed back too quickly | ||
samcv | why | ||
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 ;) | ||
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
|
|||
samcv | they could leave the room? | 17:22 | |
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 | ||
mst | in your case it would've stopped being funny about 30 seconds after you realised what I'd done | ||
samcv | lol | ||
also night for realsies! | |||
mst | :D | ||
17:27
pyrimidi_ left
|
|||
AlexDaniel | oh, wat | 17:29 | |
notviki | ? | 17:30 | |
AlexDaniel | commit: 2015.12 my @array[8]; say @array.elems; .say for @array | ||
committable6 | AlexDaniel, ¦«2015.12»: 8(Any)(Any)(Any)(Any)(Any)(Any)(Any)(Any) | ||
RabidGravy | boom! | ||
AlexDaniel | kinda makes sense, right? | ||
commit: HEAD my @array[8]; say @array.elems; .say for @array | |||
committable6 | AlexDaniel, ¦«HEAD»: 8X::TypeCheck::Binding exception produced no message in block <unit> at /tmp/uibEO3sMLN line 1 «exit code = 1» | ||
AlexDaniel | ? O_o | ||
RabidGravy | I can see both tbh | 17:31 | |
17:31
zb joined
|
|||
RabidGravy | the latter could do with a message | 17:31 | |
AlexDaniel | given that it is due to a yet another performance tweak, I'd say this was unintentional ( github.com/rakudo/rakudo/commit/dc...d6bf8c12d0 ) | 17:32 | |
RabidGravy | shaped array and all | ||
raschira | Is the module ecosystem being rebuilt with new P6 versions? | 17:33 | |
notviki | rebuilt how? | 17:34 | |
AlexDaniel | raschira: why? | ||
notviki | what! where! how! | ||
raschira | To know if changes will break people's code. | ||
notviki | raschira: no | 17:35 | |
raschira: we use the roast for that. | |||
AlexDaniel | we actually did that some time ago | ||
notviki | We did that for lexical loading branch | 17:36 | |
But it's not common practice to test 700+ modules for every change | |||
raschira | For exemple, new GCC versions are tested by rebuilding Debian. P5 also is tested by running the CPAN tests. | ||
AlexDaniel | I'd actually love to see this being brought to life again | ||
smoke.perl6.org/report | |||
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 | ||
camelia | rakudo-moar db1836: OUTPUT«1» | ||
raschira | Now that CPAN is almost supporting P6 modules, CPANtesters will be able to help. | ||
[ptc] | \o/ | ||
AlexDaniel | \o/ | ||
notviki | really? | 17:38 | |
Considering the guy who runs the system said this: irclog.perlgeek.de/mojo/2015-02-01#i_10042374 | 17:39 | ||
AlexDaniel | /o\ | 17:41 | |
[ptc] | however, that comment is from almost two years ago. Maybe he's since changed his mind? | 17:42 | |
AlexDaniel | \o/ | 17:43 | |
[ptc] | .oO(hope dies last...) |
||
[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. | ||
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:46 | |
timotimo | sitting two rows behind mister rabbitson | 17:47 | |
ribasushi: :) | |||
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
|
|||
timotimo | hes slouched in his seat | 17:49 | |
notviki | timotimo: where are you at? | ||
timotimo | his wife next to him, too | ||
33c3 | |||
notviki | ChaosCommunicationCongress2016 ? | ||
AlexDaniel | m: say (-∞^..^∞).in-range: 0/0 | 17:50 | |
camelia | rakudo-moar db1836: OUTPUT«True» | ||
notviki | m: say (-∞^..^∞).in-range: NaN | ||
camelia | rakudo-moar db1836: OUTPUT«Value out of range. Is: NaN, should be in -Inf^..^Inf in block <unit> at <tmp> line 1» | ||
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 1Actually thrown at: in block <unit> at <tmp> line 1» | ||
timotimo | yes notviki | 17:52 | |
notviki | m: say (-∞^..^∞).in-range: 0/0 | 17:59 | |
camelia | rakudo-moar db1836: OUTPUT«True» | ||
notviki | m: say (-∞^..^∞).in-range: Inf/Inf | ||
camelia | rakudo-moar db1836: OUTPUT«Value out of range. Is: NaN, should be in -Inf^..^Inf in block <unit> at <tmp> line 1» | ||
notviki | AlexDaniel: I'd say it's wrong. | 18:00 | |
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: | |||
[...] e) division: division(0, 0) or division(∞, ∞)" | |||
18:01
cooper joined,
cooper left,
cooper joined
|
|||
notviki | Prolly should just throw div-by-zero | 18:01 | |
AlexDaniel | haha, this is a fun one | 18:09 | |
m: dd max(Str, Failure.new).WHAT; # Really!? | |||
camelia | rakudo-moar db1836: OUTPUT«Failure» | ||
AlexDaniel | not this one | ||
but this | |||
commit: 2015.12 dd max(Str, Failure.new).WHAT; # Really!? | |||
committable6 | AlexDaniel, ¦«2015.12»: Num | ||
AlexDaniel | xD | ||
notviki | lulz | 18:10 | |
m: dd max(Str, Failure.new) | |||
camelia | rakudo-moar db1836: OUTPUT«Failure.new(exception => X::AdHoc.new(payload => "Failed"), backtrace => Backtrace.new)» | ||
notviki | You cheated! | ||
m: say max(Str, Failure.new) | |||
camelia | rakudo-moar db1836: OUTPUT«FailedActually thrown at: in block <unit> at <tmp> line 1» | ||
notviki | commit: 2015.12 dd max(Str, Failure.new) | 18:12 | |
committable6 | notviki, ¦«2015.12»: -Inf | ||
notviki | ah | ||
AlexDaniel | you fixed it already | 18:13 | |
18:22
dugword left
18:23
lukaramu joined
18:24
pyrimidine joined
|
|||
AlexDaniel | u: 5 | 18:25 | |
unicodable6 | AlexDaniel, U+106D MYANMAR SIGN WESTERN PWO KAREN TONE-5 [Mc] (◌ၭ) | ||
AlexDaniel, U+1089 MYANMAR SIGN SHAN TONE-5 [Mc] (◌ႉ) | |||
AlexDaniel, U+108F MYANMAR SIGN RUMAI PALAUNG TONE-5 [Mc] (◌ႏ) | |||
18:25
espadrine joined
|
|||
AlexDaniel | u: 「5̧」 | 18:26 | |
unicodable6 | AlexDaniel, U+0035 DIGIT FIVE [Nd] (5) | ||
AlexDaniel, U+0327 COMBINING CEDILLA [Mn] (◌̧) | |||
AlexDaniel, U+FF62 HALFWIDTH LEFT CORNER BRACKET [Ps] (「) | |||
AlexDaniel, U+FF63 HALFWIDTH RIGHT CORNER BRACKET [Pe] (」) | |||
AlexDaniel | ok | ||
unicodable6 | AlexDaniel, gist.github.com/a7e53bcf412329ffa1...ff50ef686a | ||
18:42
kalkin- joined
|
|||
AlexDaniel | commit: 2015.12,HEAD react { whenever Promise.in(1) { say "timeout"; last }; whenever (start { 42 }) { .say } }; say "done" | 18:44 | |
18:44
mojca left
|
|||
committable6 | AlexDaniel, ¦«2015.12»: 42timeoutdone¦«HEAD»: 42timeout«timed out after 10 seconds, output»: «exit signal = SIGHUP (1)» | 18:44 | |
18:57
CIAvash left
18:58
hankache joined
18:59
ThorstenB left
|
|||
hankache | good evening #perl6 | 18:59 | |
notviki | \0 | ||
AlexDaniel | m: DateTime.new("2016-12-31T23:59:60") | 19:00 | |
camelia | ( no output ) | ||
AlexDaniel | m: DateTime.new("2016-12-31T23:59:61") | ||
camelia | rakudo-moar db1836: OUTPUT«Second out of range. Is: 61, should be in ^61 in block <unit> at <tmp> line 1» | ||
notviki | That was broken | 19:01 | |
(:60 is a leapsecond this year) | |||
AlexDaniel | very nice choice to insert a leap second at exactly this moment, by the way | 19:02 | |
notviki | Why? | 19:05 | |
19:05
darutoko left
|
|||
AlexDaniel | notviki: no one to fix stuff it it breaks | 19:05 | |
notviki doesn't get it :\ | 19:06 | ||
Oh, 'cause New Years | |||
Doesn't it span for like 28 hours? :) | |||
m: DateTime.new("2016-12-31T23:59:60").in-timezone(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» | ||
notviki | m: DateTime.new("2016-12-31T23:59:60").in-timezone(2**63).say | ||
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» | ||
notviki | ehehe | ||
bug | |||
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» | ||
notviki | oops | ||
m: DateTime.new("2016-12-31T23:59:60").in-timezone(14*3600).say | |||
camelia | rakudo-moar db1836: OUTPUT«2017-01-01T13:59:60+14:00» | ||
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» | ||
AlexDaniel | :S | ||
notviki | m: DateTime.new("2016-12-31T23:59:60").in-timezone(-8*365*3600).say | 19:11 | |
camelia | rakudo-moar db1836: OUTPUT«2016-09-01T07:59:60-2920:00» | ||
notviki | m: DateTime.new("2016-12-31T23:59:60").in-timezone(-8*363*3600).say | ||
camelia | rakudo-moar db1836: OUTPUT«2016-09-01T23:59:60-2904:00» | ||
19:11
acrussell left,
acrussell joined
|
|||
notviki | wonder why 2**63 makes it crap out | 19:11 | |
19:13
jmerelo joined
|
|||
geekosaur | someone assumed timezone offsets were always small enough that they didn't need to check for overflow? | 19:14 | |
raschira | Literally clock arithmetic. Nice. | 19:15 | |
jmerelo | Hi | ||
(Probably) stupid array argument question | |||
notviki | m: DateTime.new(:60000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000year).say | ||
camelia | rakudo-moar db1836: OUTPUT«+60000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000-01-01T00:00:00Z» | ||
AlexDaniel | jmerelo: probably not :) | 19:16 | |
jmerelo | What am I missing here? sub MAIN( @data ) { say @data }; | ||
notviki | jmerelo: *@data | ||
in sig | |||
AlexDaniel | why *? Why not +? | ||
jmerelo | array arguments must be always slurpy? | ||
geekosaur thinks notviki went at the most common answer, tbh | 19:17 | ||
AlexDaniel | and what makes * more common than + ? :) | ||
besides the fact that + is rather new | |||
geekosaur | oh, but MAIN so maybe correct anyway | ||
AlexDaniel | ahhh | ||
yes | |||
missed this part, yea | 19:18 | ||
jmerelo | But slurpy arguments can't be typed | ||
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) | ||
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? | ||
raschira | jmerelo: the MAIN signature has to be something the system can deal with. | ||
19:19
labster joined
|
|||
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 | ||
m: BEGIN $*ARGS='22 44 55'; sub MAIN (*@a where .all ~~ Int) { dd @a } | |||
camelia | rakudo-moar db1836: OUTPUT«5===SORRY!5=== Error while compiling <tmp>An exception occurred while evaluating a BEGINat <tmp>:1Exception details: Dynamic variable $*ARGS not found in code at <tmp> line 1» | ||
geekosaur | typed parameters for MAIN are a bit difficult anyway, since the only type the OS interface to command line parameters knows is strings | ||
notviki | m: BEGIN @*ARGS= <22 44 55>; sub MAIN (*@a where .all ~~ Int) { dd @a } | ||
camelia | rakudo-moar db1836: OUTPUT«[IntStr.new(22, "22"), IntStr.new(44, "44"), IntStr.new(55, "55")]» | ||
19:21
kalkin- left
|
|||
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> ...] » | ||
notviki | seems to work | ||
geekosaur | so there are a bunch of gotchas in trying to type something like sub MAIN | ||
notviki | m: BEGIN @*ARGS= <True False>; sub MAIN (*@a where .all ~~ Bool) { dd @a } | ||
camelia | rakudo-moar db1836: OUTPUT«Usage: <tmp> [<a> ...] » | ||
notviki | huh | ||
m: BEGIN @*ARGS= <True>; sub MAIN (*@a where .all ~~ Bool) { dd @a } | 19:22 | ||
camelia | rakudo-moar db1836: OUTPUT«Usage: <tmp> [<a> ...] » | ||
jmerelo | It does not like that either sub MAIN ( Num :@data, Int :$max = 10 ) { | ||
perl6 text-chart.p6 --data 1 2 3 4 3 2 | |||
rightfold | I have a program not written in Perl 6 that outputs TAP, and I want to call it from a Perl 6 test | ||
Is that possible? | |||
jmerelo | Basically the problem seems to be you can't enter positionals here... | ||
notviki | rightfold: yes, we use TAP | ||
rightfold: even perl 5's `prove` | |||
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 declaredat <tmp>:1------> 3alse>; sub MAIN (Bool $x, Bool $y) { dd 7⏏5@a }» | ||
rightfold | notviki: do I need anything special or can I just forward the other program's output? | ||
notviki | m: BEGIN @*ARGS= <True False>; sub MAIN (Bool $x, Bool $y) { dd [$x, $y] } | ||
camelia | rakudo-moar db1836: OUTPUT«[Bool::True, Bool::False]» | ||
notviki | Seems our enums parser doesn't do anything for slurpies | ||
m: BEGIN @*ARGS= <True False>; sub MAIN (*@a) { dd [@a] } | |||
camelia | rakudo-moar db1836: OUTPUT«[Bool::True, Bool::False]» | ||
notviki | oh | 19:24 | |
m: dd True ~~ Bool | |||
camelia | rakudo-moar db1836: OUTPUT«Bool::True» | ||
notviki | m: dd False ~~ Bool | ||
camelia | rakudo-moar db1836: OUTPUT«Bool::True» | ||
notviki | wtf | ||
rightfold: just forward the output | |||
rightfold | notviki: ok :) | ||
Thank you | |||
jmerelo | This seems to work sub MAIN ( Int :$max = 10, *@data ) | 19:25 | |
Thanks guys! | |||
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 :/ | ||
notviki | doesn't matter often, but if you're doing sets or something, may as well stick a coercer: Int() :$max | ||
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 | ||
rightfold | notviki: what about plans? Only one plan may occur in TAP output | 19:28 | |
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:29 | |
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? | ||
rightfold | notviki: write some tests in Perl 6 itself | 19:31 | |
notviki | rightfold: and also output tests of that program? | ||
rightfold | Yes | 19:32 | |
Merge them | |||
Maybe I won't use plans | |||
Then the problem should be solved | |||
notviki | rightfold: just stick the output into subtest | ||
oh | |||
rightfold | Oh wait the testing stuff reset $*OUT don't they | ||
notviki | and you may need to .indent the output | 19:33 | |
notviki tries stuff | |||
19:35
avuserow joined
|
|||
notviki | rightfold: sticking the output into subtest and indenting it works: gist.github.com/zoffixznet/3b65691...fb89952f34 | 19:36 | |
oh | |||
it's got two plans in subtest, lol | |||
but harness doesn't care | |||
rightfold | What is a subtest? | 19:37 | |
notviki | rightfold: a test within a test. With it's own plan: docs.perl6.org/language/testing#in...tion%3F%29 | ||
rightfold | Why do you need it for this? | 19:39 | |
dalek | c: 61932b8 | coke++ | README.md: These were converted to issues. Removing them. Closes #1053 |
||
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 | ||
Or rather this website doesn't: testanything.org/tap-version-13-sp...ation.html | 19:41 | ||
Says last updated in 2007 | |||
19:41
mojca joined
|
|||
notviki | rightfold: 'cause otherwise your plan won't match | 19:41 | |
And well, I guess it doesn't match either, but at least `prove` doesn't care | |||
*now it doesn't match | |||
19:43
mojca left
19:46
mojca joined
19:48
jmerelo left
19:53
kyan left
19:54
kyan joined,
raschira left
|
|||
rightfold | Thanks a lot | 19:56 | |
The extra plan is lame though | |||
notviki | rightfold: actually I see the extra plan does interfere. It makes teh harness think the subtest passed. | 20:01 | |
notviki tries more stuff | |||
rightfold | Hmm | 20:02 | |
20:03
bjz joined,
grumble left
|
|||
rightfold | I suppose the most robust would be to parse the output and reinterpret it | 20:04 | |
notviki | Yeah | ||
20:05
grumble joined
|
|||
notviki | we have TAP in core, BTW | 20:05 | |
rightfold | Cool :) | ||
notviki | I don't think it's documented tho :} | ||
github.com/rakudo/rakudo/blob/nom/lib/TAP.pm6 | |||
And I think there's prove6 somewhere in the ecosystem that uses it | 20:06 | ||
And I think zef uses it too | |||
buggable: prove6 | |||
buggable: eco prove6 | |||
buggable | notviki, Nothing found | ||
notviki | buggable: eco prove | ||
buggable | notviki, flow 'a 'prove' replacement written entirely in the perl6 you know and love.': github.com/tony-o/perl6-flow | ||
notviki | no not that | ||
buggable: eco testing | |||
buggable | notviki, Found 5 results: Testing, PSpec, TestML, Green, P6TCI. See modules.perl6.org/#q=testing | ||
notviki | no idea | 20:08 | |
ugexe | yeah zef uses the perl6 TAP::Harness by default now | ||
notviki | if you search #perl6-dev's logs you'll find a link | ||
cool | |||
buggable: zef | |||
buggable: eco zef | |||
buggable | notviki, zef 'It's like [cpanm] wearing high heels with a tracksuit': github.com/ugexe/zef | ||
notviki | \o/ | ||
high heels with a tracksuit? :o | 20:09 | ||
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` | ||
notviki | buggable: eco TAP::Harness | ||
buggable | notviki, TAP::Harness 'TAP harness for perl6': github.com/Leont/tap-harness6 | ||
notviki | aye, rightfold ^ that's the one with prove6 | ||
rightfold | 😍 | 20:11 | |
ugexe | notviki: yeah, coke confirmed he couldnt find anything on it. i havent gotten around to doing a follow through | ||
[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. | ||
(but having just checked and not found samcv, ugexe wasn't there either. last was zoffix) | 20:12 | ||
20:12
kyan left
|
|||
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 | ||
[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:14 | |
samcv, notviki: on a fresh machine, "make html" dies with: | 20:15 | ||
... nevermind, it's actually pretty clear. (whoops) | |||
notviki | heh | ||
rightfold | m: say (^10)»! | 20:16 | |
camelia | rakudo-moar db1836: OUTPUT«5===SORRY!5=== Error while compiling <tmp>Malformed postfixat <tmp>:1------> 3say (^10)»7⏏5! expecting any of: postfix» | ||
20:16
kyan joined
|
|||
AlexDaniel | 23k/31k \o/ | 20:16 | |
notviki | \o/ | ||
ugexe | notviki: which email? karen? | ||
notviki | ugexe: ask, samcv | ||
ugexe: Karen resigned | |||
[Coke] | karen is no longer president, so no. | ||
one sec. | |||
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. | ||
notviki | well, ignore that 42 is in range :) | ||
I mean the -Inf^.. thing. | |||
[Coke] | ... it bugs me that the web site doesn't have email addys. :| | ||
20:18
domidumont left
|
|||
ugexe | it has some under Contact Us | 20:18 | |
notviki | m: X::OutOfRange.new( :what("First parameter"), :got(42), :range("−∞^..2147483647"), ).throw | ||
camelia | rakudo-moar db1836: OUTPUT«First parameter out of range. Is: 42, should be in −∞^..2147483647 in block <unit> at <tmp> line 1» | ||
notviki | AlexDaniel: or that.. | ||
AlexDaniel | notviki: it's fine, I'm trying to find a place where we're already doing this. | ||
20:18
Tonik joined
|
|||
notviki | dunno | 20:19 | |
AlexDaniel | m: say Int.Range | ||
camelia | rakudo-moar db1836: OUTPUT«-Inf^..^Inf» | ||
AlexDaniel | here! | ||
[Coke] | ugexe: I pinged the webmaster that the contact us page is out of date. | ||
will let you know as soon as I get an addy | 20:20 | ||
AlexDaniel | notviki: so yes, I see no problem here | ||
notviki | cool | ||
ugexe | thanks | ||
AlexDaniel | m: say Rat.Range | 20:25 | |
camelia | rakudo-moar db1836: OUTPUT«-Inf..Inf» | ||
AlexDaniel | :-/ | ||
notviki | heh | ||
Well, it makes as much sent in Int. | |||
*sence | |||
SENSE | |||
m: say Str.Range | |||
camelia | rakudo-moar db1836: OUTPUT«No such method 'Range' for invocant of type 'Str' in block <unit> at <tmp> line 1» | ||
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» | ||
notviki | m: say Complex.Range | ||
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
|
|||
notviki | :/ | 20:26 | |
AlexDaniel | m: say FatRat.Range | ||
camelia | rakudo-moar db1836: OUTPUT«No such method 'Range' for invocant of type 'FatRat' in block <unit> at <tmp> line 1» | ||
20:29
mojca left
|
|||
AlexDaniel | notviki: ok, RT #130427 for this | 20:30 | |
synopsebot6 | Link: rt.perl.org/rt3//Public/Bug/Displa...?id=130427 | ||
20:36
bjz left
|
|||
notviki | wonder why fatrat ain't got a range | 20:38 | |
rightfold | I see Test calls exit in END :/ | 20:39 | |
notviki | yeah, it got to, to report number of failures | 20:41 | |
20:42
teksteiner left
20:43
TEttinger joined
20:44
bjz joined
20:46
mojca joined
20:47
mojca left
20:48
sufrostico joined
|
|||
rightfold | can you load a module by just its filename? | 20:51 | |
20:55
dugword joined
|
|||
ugexe | you can require it | 20:56 | |
20:56
mojca joined
21:03
bjz left
|
|||
ugexe | m: my $test-dist = CompUnit::RepositoryRegistry.repository-for-name("perl").resolve(CompUnit::DependencySpecification.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/C712FE6969F786C9380D643DF17E85D06868219E".IO» | ||
21:05
Gasher left
21:09
hankache left
|
|||
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:12 | |
21:12
Tonik left
|
|||
dugword | Same as if I use :family(11) | 21:13 | |
ugexe | m: require "/home/camelia/rakudo-m-inst-2/share/perl6/sources/C712FE6969F786C9380D643DF17E85D06868219E" <&plan &ok>; plan 1; ok 1; # rightfold | ||
camelia | rakudo-moar db1836: OUTPUT«1..1ok 1 - » | ||
dugword | or any value. docs.perl6.org/type/IO$COLON$COLON...method_new | ||
Or am I reading the docs wrong? | |||
21:14
cyphase left
21:16
troys is now known as troys_
|
|||
[Coke] | dugword: it's quite possible there's a gap in the docs. | 21:16 | |
NOOOOOOOO! | 21:17 | ||
just did a perlbrew install, which is painfully slow. one test failed. :| | |||
notviki | m: say PIO::PF_INET6 | ||
camelia | rakudo-moar db1836: OUTPUT«Could not find symbol '&PF_INET6' in block <unit> at <tmp> line 1Actually thrown at: in block <unit> at <tmp> line 1» | ||
21:18
Gasher joined,
cyphase joined
|
|||
notviki | dugword, I see the code testing for taht ^ value... not sure what it's numerical equivalent is | 21:18 | |
code's here github.com/rakudo/rakudo/blob/nom/...et/INET.pm | |||
dugword | Oh awesome, thanks notviki | 21:19 | |
geekosaur | /usr/include/x86_64-linux-gnu/bits/socket.h:#definePF_INET610/* IP version 6. */ | 21:21 | |
21:24
bjz joined
21:25
rindolf left
21:28
rindolf joined
|
|||
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:32 | |
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/ | ||
camelia | rakudo-moar db1836: OUTPUT«Nil» | ||
21:36
cyphase left
21:38
bjz left
|
|||
notviki | dugword, please file a bug report. | 21:39 | |
huggable, rakudobug | |||
huggable | notviki, [email@hidden.address] or use perl6 query on rt.perl.org ; see github.com/rakudo/rakudo/#reporting-bugs | ||
notviki | dugword, we shouldn't even deal with magic numbers as arguments. :family(2) is meaningless | 21:40 | |
21:41
troys_ is now known as troys
|
|||
dugword | Woo! I'm a bug finding machine. That's 3 in 2 days | 21:41 | |
21:41
cyphase joined
|
|||
notviki | yey? :) | 21:42 | |
21:43
acrussell left
|
|||
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:43 | |
notviki | Well, what's family 11? | 21:44 | |
21:46
pierre__ joined
|
|||
notviki | or family 2 or 3 for that matter | 21:46 | |
geekosaur | ideally you don't use the numbers... | 21:48 | |
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 | |
21:49
pierre_ left,
domidumont joined
|
|||
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? | ||
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
zakharyas left
|
|||
notviki will never get people's obsession with enums | 21:52 | ||
dugword | like IO::Socket::INET.new(:ipv4) ? | ||
notviki | yeah, and default to ipv6 | ||
RabidGravy | or ipx or decnet or something | 21:53 | |
notviki | vOv | ||
geekosaur | /usr/include/x86_64-linux-gnu/bits/socket.h:#definePF_NETROM6/* Amateur radio NetROM. */ | 21:54 | |
:p | |||
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 | |
21:55
domidumont left
|
|||
notviki screams loudly | 21:55 | ||
... or I would if I weren't on a bus full of people.... | |||
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
|
|||
notviki | dugword, the spec is the roast | 21:56 | |
if this behaviour is tested in roast we can't change it until 6.d | |||
github.com/perl6/roast | 21:57 | ||
6.c-errata branch specifically. | |||
but check master too | |||
21:58
setty1 joined
|
|||
pmurias | IO::Socket::INET should accept numbers other than 2 and 3 | 21:58 | |
* shouldn't | |||
notviki | :/ | 21:59 | |
RabidGravy | but yes adverby things would be better as the meaning could be interpreted at a lower level | ||
notviki | So 2 is IPv6 and 3 is IPv8, right? | 22:00 | |
or wait, 11 is v8 | |||
or was it 22 | |||
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
|
|||
RabidGravy | if it doesn't break working code that uses the tested behaviour | 22:01 | |
while you're at it implement AF_LOCAL as I'd find that a lot more useful | 22:02 | ||
pmurias | RabidGravy: AF_LOCAL is unix sockets | 22:03 | |
RabidGravy | I know | ||
dugword | lol, well this'll be my first pull request into Perl6 (minus the docs) so I'm going to start small | ||
pmurias | IO::Socket::INET shouldn't handle unix sockets | 22:04 | |
RabidGravy | er quite | ||
22:05
lichtkind joined
|
|||
pmurias | notviki: re default to ipv6, the current default is ipv4 | 22:06 | |
RabidGravy | it actually isn't | ||
it will use either | 22:07 | ||
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? | ||
pmurias | RabidGravy: depending on the family argument it treat the host argument differently | ||
do we have a tool to grep all the modules in the ecosystem? | 22:09 | ||
lichtkind | greeting | 22:11 | |
RabidGravy | moritz had a repo with all the ecosystem in | ||
lichtkind | are there any docs on banchmarks made over last year? | ||
yoleaux | AlexDaniel: say hello | 22:12 | |
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 | ||
RabidGravy | I assumed Perl 6 | 22:15 | |
lichtkind | so maybe someone wrote some blog post i caould not find | ||
RabidGravy | I've been "it's fast enough" for a year or so :) | 22:16 | |
lichtkind | but from what i could read between line from talks i watche dits god around twice as fast in this year | 22:17 | |
ah thanks | 22:18 | ||
timotimo | buggable: speed | 22:23 | |
buggable | timotimo, ▅▅▅▅▆▅▅▆▆▄▅▅▅▄▅▅▅▅▅█▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▃▃▃▂▂▂▂▂▂▂▁▁▁▁ data for 2016-12-06–2016-12-28; variance: 5.137s–7.592s | ||
timotimo | huggable: speed | ||
huggable | timotimo, tux.nl/Talks/CSV6/speed4.html | ||
timotimo | lichtkind: ^ one benchmark we use for a lot of stuff | 22:24 | |
lichtkind | thank you | 22:25 | |
timotimo | moarvm.org/measurements/perl6-bench/ - this is also a thing | 22:26 | |
jabowery | Correction: Installed perl6 (and panda) with rakudobrew thence Debugger::UI::CommandLine | 22:28 | |
lichtkind | that is helpful and appreciated | ||
22:28
cygx joined
|
|||
cygx | lichtkind: also, pbs.twimg.com/media/Cw7W1ECUcAA0bIr.jpg:large and gist.github.com/cygx/9c94eefdf6300...e-graph-md | 22:28 | |
(first one by zoffix based on the CVS timings, I think, 2nd one is mine) | 22:31 | ||
lichtkind | isee | ||
22:34
RabidGravy left
|
|||
notviki | pmurias: but how come? | 22:34 | |
22:35
sufrostico left
|
|||
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:35 | |
something or other | 22:36 | ||
22:36
pierre__ left
|
|||
notviki cue's mst's vague image | 22:36 | ||
lichtkind: yeah, today it's 5.137 and exactly a year ago it was around 12.970s | 22:38 | ||
worth noting it doesn't represent speed up of Perl 6 as a whole. | |||
lichtkind | sure | 22:39 | |
notviki | if you do native arrays you prolly got a lot more speed | ||
while other stuff maybe not that much at all | |||
lichtkind | native arrays are typed arrays? | ||
this is the famed nsa stuff | |||
this time without snowden | |||
22:39
cpage left
|
|||
notviki | or shaped arrays I should say. lizmat++ did huge speedups there | 22:39 | |
no idea wtf nsa stuff is | |||
lichtkind | it was short for native shapd arrays | 22:40 | |
but i think they were done before Koleda? | |||
notviki | yes | ||
But barely. | |||
it's like my int @a[10] | 22:41 | ||
or my str @a[10;10] | 22:42 | ||
lichtkind | so they are array of low levvel typed data? | ||
notviki | yeah | 22:43 | |
lichtkind | thank you | ||
notviki | and also shaped you can do shapes without native stuff | ||
m: my @a[10;10] = ^10 xx 10; dd @a | |||
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,…» | ||
lichtkind | and is there a gui i was pondering to do my Sudoku::Solver::Algorithm | 22:46 | |
its not about solution but how to get there which solving method can crack wha type of task | |||
but without gui that doesnt make sense | 22:47 | ||
22:51
lizmat joined,
pe joined
22:52
awwaiid joined
22:53
Ven joined
|
|||
MasterDuke | there are some GTK bindings, 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
|
|||
notviki | pe: please pastebin the code that produces that issue | 22:54 | |
jabowery | I posted the question at stackoverflow: stackoverflow.com/questions/4137081...m-thrashes | 22:57 | |
22:57
awwaiid left
|
|||
lichtkind | MasterDuke, thanks | 22:58 | |
22:59
pe left
23:01
pe joined
|
|||
pe | HELP | 23:02 | |
notviki | pe: how? | ||
pe: we can't guess what's wrong with your code without us seeing it. | |||
pastebin it | |||
pe | but my code have a 1000 lines | 23:03 | |
just the problem is a invocation the module | 23:04 | ||
23:05
kurahaupo left
|
|||
dalek | c: f95f627 | (Zoffix Znet)++ | doc/Type/List.pod6: Give more details for edgecases in .combinations() |
23:06 | |
synopsebot6 | Link: doc.perl6.org/type/List | ||
labster | In a world… there is a newio branch. Failure means death… or does it? | ||
notviki | labster: what? | 23:07 | |
geekosaur | lizmat++ tried to make IO consistent in the newio branch, but it bitrotted severely before 6.c release | ||
wrt throwing v Failure, etc. | |||
labster | lizmat's last reply on RT#130418 was: "Welcome to the world of the newio branch" | 23:08 | |
synopsebot6 | Link: rt.perl.org/rt3//Public/Bug/Displa...?id=130418 | ||
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 | ||
So let's resurrect it. | 23:09 | ||
lizmat | fwiw, it bitrotted because nobody wanted to think about it (at least, from my perspective) | ||
geekosaur | also from what I saw | ||
notviki | ok, that was before my time. I wanna think about it now. | ||
lizmat | cool | ||
geekosaur | it looked a lot like you trying to keep up with all the changes going on and everyone else ignoring newio entirely | ||
notviki | :( | 23:10 | |
labster | I wanted to think about it, I just never got the time to do so. | ||
lizmat | fwiw,. I'm pretty burned out on the newio topic, but am willing to provide background on ideas behind it | ||
should anybody be interested | |||
23:10
pe left
|
|||
notviki | Alright. I'll take a look at it around New Years | 23:11 | |
23:11
cpage joined
23:12
pmurias left
23:32
jabowery left,
aindilis` left
23:34
lukaramu left
23:36
rindolf left,
pierre_ joined
23:42
pierre_ left
23:52
cygx left
|
|||
samcv | hello everybody | 23:53 | |
i got some pings last night | |||
[Coke], what was the problem with the build? | |||
for the doc | |||
[Coke] | samcv: loaner mactop without an up to date p5. error message was pointing out a missing p5 module. | 23:54 | |
samcv | ah ok | 23:55 | |
[Coke] | brewing p5 for a second time now. :| | ||
samcv | what perl 5 do we require? | ||
we don't use Perl 5 for just make html right? or? | |||
23:58
troys is now known as troys_
|