Perl 6 - the future is here, just unevenly distributed

IRC log for #perl6-dev, 2017-05-01

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

All times shown according to UTC.

Time Nick Message
00:00 Zoffix Something's off :/ looks like instead of smartmatching against the thunk it evals it and uses its value to then smartmatch against or something?
00:00 Zoffix I'm surprised I didn't notice this warning when I first added filters to geth :|
00:01 Zoffix c: 2017.03 my @COMMIT-FILTERS where .all ~~ Callable && .all.name = sub foo ($) {}
00:01 committable6 Zoffix, ¦2017.03: «Sub object coerced to string (please use .gist or .perl to do that)␤  in block <unit> at /tmp/x3JlIj9m08 line 1»
00:01 Zoffix c: 2017.03 my @COMMIT-FILTERS where .all ~~ Callable && .all.name; @COMMIT-FILTERS = sub foo ($) {}
00:01 committable6 Zoffix, ¦2017.03: «Sub object coerced to string (please use .gist or .perl to do that)␤  in block <unit> at /tmp/O_Hh5z8K1u line 1»
00:03 Geth joined #perl6-dev
00:03 Geth ¦ geth: e6b2acd527 | (Zoffix Znet)++ | lib/Geth/Plugin/GitHub.pm6
00:03 Geth ¦ geth: Reword where clause to avoid bug(?)
00:03 Geth ¦ geth:
00:03 Geth ¦ geth: https://irclog.perlgeek.de/perl6-dev/2017-05-01#i_14511369
00:03 Geth ¦ geth: review: https://github.com/perl6/geth/commit/e6b2acd527
00:04 Geth ¦ geth: ebaae3093f | (Zoffix Znet)++ | start
00:04 Geth ¦ geth: Enable logging of output to file
00:04 Geth ¦ geth: review: https://github.com/perl6/geth/commit/ebaae3093f
00:04 Zoffix ... I thought it would be much more complicated to make it log stuff :|
00:05 timotimo :D
00:05 timotimo you don't have to supply any filename?
00:06 Zoffix no :)
00:19 stmuk joined #perl6-dev
00:55 astj joined #perl6-dev
01:13 stmuk_ joined #perl6-dev
01:47 Zoffix .
01:47 Zoffix Well, this was a fun 1hr45m
01:47 Zoffix I fixed the where "bug" I mentioned above (RT#131239) and when I was done, I realized it's not a bug at all :}
01:47 synopsebot6 Link:  https://rt.perl.org/rt3/Public/Bug/Display.html?id=131239
01:47 Zoffix At least now I know more about how where blocks are codegenned
01:49 ilbot3 joined #perl6-dev
01:49 Topic for #perl6-dev is now Perl 6 language and compiler development 2.0 | Logs at http://irclog.perlgeek.de/perl6-dev/today | For toolchain/installation stuff see #perl6-toolchain | For MoarVM see #moarvm
02:02 Zoffix m: "/tmp/fooz".IO.spurt: "abc\nde\nfg\nz"; for "/tmp/fooz".IO.open { dd $_ }
02:02 camelia rakudo-moar a2602b: OUTPUT: «"abc"␤"de"␤"fg"␤"z"␤»
02:03 Zoffix That's kinda surprising behaviour IMO, so I want to revert the adding of IO::Handle.iterator in https://github.com/rakudo/rakudo/commit/9da50e352f899225ec805d59a834413307471ce6
02:03 Zoffix Make it a private method or something
02:45 Zoffix Is nqp::concat() constant time and memory? Does it make the ropes stuff?
02:47 Zoffix As in, if I have 200MB $x and 1-char $y and I nqp::concat($x, "\n");  or concat $y... Will it still end up using 200MB/1-char and run for the same amount of time?
02:49 Zoffix m: use nqp; my $x = nqp::indexingoptimized("a" x 1000000); my $now = now; for ^1000_000 { $ = nqp::concat($x, "\n") }; say now - $now
02:49 camelia rakudo-moar a2602b: OUTPUT: «0.63214277␤»
02:49 Zoffix m: use nqp; my $x = nqp::indexingoptimized("a" x 1); my $now = now; for ^1000_000 { $ = nqp::concat($x, "\n") }; say now - $now
02:49 camelia rakudo-moar a2602b: OUTPUT: «0.642955␤»
02:49 Zoffix Based on this, I'll assume it's constant time... (did some memory tests locally, seems not to use more RAM than just strings alone)
02:56 japhb Zoffix: I think you'd notice a sudden change in runtime if you attempted to do certain operations on it that would imply rope-flattening.  But otherwise yeah, I believe it does ropify things like 'x'
03:07 Zoffix japhb: what sort of change?
03:14 MasterDuke_ Zoffix: it looks like the MoarMV function operates on strands: src/strings/ops.c:444
03:15 Geth ¦ rakudo/nom: 50429b13a1 | (Zoffix Znet)++ | src/core/IO/Handle.pm
03:15 Geth ¦ rakudo/nom: [io grant] Make IO::Handle.put($x) about 5%-35% faster
03:15 Geth ¦ rakudo/nom:
03:15 Geth ¦ rakudo/nom: 1-char is about 35% faster and it goes down to 5% at 100_000 chars.
03:15 Geth ¦ rakudo/nom: At that point, I'm hitting some sort of system bottleneck; if I
03:15 Geth ¦ rakudo/nom: bench new method first, it ends up being 2x faster, if I bench old
03:15 Geth ¦ rakudo/nom: method first, it ends up being 2x faster...
03:15 Geth ¦ rakudo/nom: review: https://github.com/rakudo/rakudo/commit/50429b13a1
03:16 Zoffix ^ that's why I was asking. I'm just gonna stab in the dark and assume that works fine with very large strings...
03:17 MasterDuke_ well, concat will complain if the resulting string would be longer than strings are allowed to be
03:18 Zoffix Which is what?
03:18 MasterDuke_ so if x is the max string size, it now can't be put'ted
03:18 MasterDuke_ 2**32 graphemes i think
03:18 Zoffix wtf
03:18 Zoffix m: say 2**32 / 1024/1024
03:18 camelia rakudo-moar a2602b: OUTPUT: «4096␤»
03:19 Zoffix So 4GB at least?
03:21 Zoffix $ ./perl6 -e 'use nqp; my $x = ""; for ^1000 { $x = nqp::concat($x, nqp::indexingoptimized("x" x 1073741824)) }; dd $x.chars'
03:21 Zoffix Can't concatenate strings, required number of graphemes 4294967296 > max allowed of 4294967295
03:22 Zoffix m: 4294967295.log(2).dd
03:22 camelia rakudo-moar a2602b: OUTPUT: «No such method 'dd' for invocant of type 'Num'␤  in block <unit> at <tmp> line 1␤␤»
03:22 Zoffix m: dd 4294967295.log(2)
03:22 camelia rakudo-moar a2602b: OUTPUT: «31.9999999996641e0␤»
03:22 Zoffix yup
03:22 MasterDuke_ yeah. `MVMuint32 num_graphs;`
03:22 Zoffix Is that an artificial limit?
03:23 Zoffix 4GB feels paltry for a 100-year language
03:23 MasterDuke_ i don't like it either, i think i created an RT about it a while ago but it was rejected
03:24 MasterDuke_ i don't know how hard it would be to make that an MVMuint64. there is some code that assumes it's 32bits (like that error you just triggered)
03:26 MasterDuke_ hm, maybe i never filed a ticket, just chatted about it
03:27 Zoffix I see in &say we have $str = nqp::concat($str,nqp::unbox_s(.gist)) for @args;
03:28 Zoffix I guess I can do the same in IO::Handle.say, limits be damnged
03:30 MasterDuke_ m: my $a = "a" x 2**30; my $b = $a x 2**30; say($a, $b)
03:30 camelia rakudo-moar a2602b: OUTPUT: «Can't repeat string, required number of graphemes 1152921504606846976 > max allowed of 4294967295␤  in block <unit> at <tmp> line 1␤␤»
03:31 * Zoffix leaves IO::Handle.say alone
03:32 MasterDuke_ i'd call that LTA
03:32 Zoffix What exactly?
03:33 MasterDuke_ that i can't say to valid strings. i'm not explicitly concatenating them...
03:34 Zoffix That's not a real program though.
03:34 MasterDuke_ i didn't say it was a release blocker
03:37 Zoffix m: my $a = "a" x 2**30; my $b = $a x 2**30; say($a xx 1000)
03:37 camelia rakudo-moar 50429b: OUTPUT: «Can't repeat string, required number of graphemes 1152921504606846976 > max allowed of 4294967295␤  in block <unit> at <tmp> line 1␤␤»
03:37 Zoffix m: my $a = "a" x 2**30; my $b = $a x 2**30; say($a xx 1000000)
03:37 camelia rakudo-moar 50429b: OUTPUT: «Can't repeat string, required number of graphemes 1152921504606846976 > max allowed of 4294967295␤  in block <unit> at <tmp> line 1␤␤»
03:37 Zoffix m: dd 1152921504606846976.log: 2
03:37 camelia rakudo-moar 50429b: OUTPUT: «60e0␤»
03:37 Zoffix Ah, right
03:38 MasterDuke_ it's a MVMuint64
03:42 MasterDuke_ fyi to anyone and everyone, https://github.com/rakudo/rakudo/pull/1073 has been updated with a typed exception
03:53 Geth ¦ rakudo/nom: 204ea59b45 | (Zoffix Znet)++ | src/core/io_operators.pm
03:53 Geth ¦ rakudo/nom: [io grant] Make &say(**@args) 70%− faster
03:53 Geth ¦ rakudo/nom:
03:53 Geth ¦ rakudo/nom: - Measured with $*OUT set to a file handle opened for file writing
03:53 Geth ¦ rakudo/nom: - 70% faster for 2-arg calls and boost gets smaller the more args we have,
03:53 Geth ¦ rakudo/nom:   with 12-arg version being 35% faster
03:53 Geth ¦ rakudo/nom: review: https://github.com/rakudo/rakudo/commit/204ea59b45
04:07 Geth ¦ rakudo/nom: 6d7fc8e694 | (Zoffix Znet)++ | src/core/io_operators.pm
04:07 Geth ¦ rakudo/nom: [io grant] Make &put(**@args) up to 70% faster
04:07 Geth ¦ rakudo/nom:
04:07 Geth ¦ rakudo/nom: - Measured with $*OUT set to a file handle opened for file writing
04:07 Geth ¦ rakudo/nom: - 70% faster for 2-arg calls and boost gets smaller the more args we have
04:07 Geth ¦ rakudo/nom: review: https://github.com/rakudo/rakudo/commit/6d7fc8e694
04:20 Zoffix .tell nine Inline::Perl5's install is busted: https://gist.github.com/zoffixznet/487bcecb8e30384e5541e838b1294528   At first glance, looks like some files are missing from `provides` META section. Like these ones: https://github.com/niner/Inline-Perl5/commit/dfeea1b62653dd5600c6d3d350e7e01b2c965fd2
04:20 yoleaux Zoffix: I'll pass your message to nine.
04:22 Zoffix .tell lizmat  looks like Weekly-worthy material: https://szabgab.com/blog-engine-in-perl6.html
04:22 yoleaux Zoffix: I'll pass your message to lizmat.
05:34 Geth ¦ rakudo/nom: 76af536715 | (Zoffix Znet)++ | src/core/IO/Handle.pm
05:34 Geth ¦ rakudo/nom: [io grant] Make 1-arg IO::Handle.say up to 2x faster
05:34 Geth ¦ rakudo/nom:
05:34 Geth ¦ rakudo/nom: - Speedup is lower the bigger the thing to write is
05:34 Geth ¦ rakudo/nom: - Was gonna use this method to simplify 1-arg &say and make it a hair
05:34 Geth ¦ rakudo/nom:     faster, but there's a (possibly wrongish) test blocking such
05:34 Geth ¦ rakudo/nom:     a change.
05:34 Geth ¦ rakudo/nom: review: https://github.com/rakudo/rakudo/commit/76af536715
05:41 Zoffix :/
05:41 Zoffix Removing IO::Handle.iterator busts a lot of tests it seems
05:46 Zoffix Ah, it's https://github.com/rakudo/rakudo/commit/6be395e310104f91f06fc6424a175dc35de163f8
05:48 Zoffix .ask lizmat how come we have IO::Handle.iterator? It makes stuff like `for $handle { … }` and `$handle.map` auto-magically iterate over lines from the handle. IMO that's too surprising and I want to remove it. Is there a reason to keep .iterator that I don't know of?
05:48 yoleaux Zoffix: I'll pass your message to lizmat.
05:59 Geth ¦ roast: 1ed18b4319 | (Zoffix Znet)++ | S32-io/io-path.t
05:59 Geth ¦ roast: [io grant] Add test for .perl.EVAL roundtrip with combiners
05:59 Geth ¦ roast:
05:59 Geth ¦ roast: RT#126935: https://rt.perl.org/Ticket/Display.html?id=126935
05:59 Geth ¦ roast: review: https://github.com/perl6/roast/commit/1ed18b4319
05:59 synopsebot6 Link:  https://rt.perl.org/rt3/Public/Bug/Display.html?id=126935
06:01 Zoffix I now have RSI thanks to Shadow Warrior 2 game -_-
06:01 Zoffix Guess I should stop hacking for a bit and... take a nap
06:21 [Tux] This is Rakudo version 2017.04.3-132-g76af53671 built on MoarVM version 2017.04-44-gf0db8822
06:21 [Tux] csv-ip5xs        3.216
06:21 [Tux] test            13.546
06:21 [Tux] test-t           4.616 - 4.669
06:21 [Tux] csv-parser      13.682
06:22 * Zoffix now has now lost bearings on what bench numbers are good :/
06:22 [Tux] this is the new timing with test-t *not* using Slang::Tuxic. The first tests showed 4.436
06:23 [Tux] Zoffix: 4.616 is the runtime in seconds to parse 10000 lines of CSV, so the lower the better
06:23 [Tux] perl5 + Text::CSV_XS uses a mere 0.033 seconds
06:24 Zoffix Yeah, but a day ago it was around 5.2 today's changes might've made it 5.1 or 5.3, but due to the using Slang::Tuxic change I've no idea what the new numbers mean
06:25 Zoffix Why was it removed anyway? Isn't it just a bench script and isn't used for any other purpose?
06:25 Zoffix it being "use Slang::Tuxic" in test-t
06:26 [Tux] ah: Text::CSV uses Slang::Tuxic, but that is precompiled. The calling script is not precompiled, and lizmat and timotime decided it was "cleaner" to test Text::CSV without the overhead of Slang::Tuxic in the calling script, as they expect most users won't use it
06:26 Zoffix ok
06:26 [Tux] as a slang in the calling script causes about .5 seconds overhead, they wanted it out
06:27 Zoffix buggable: speed
06:27 buggable Zoffix, ▅▅▄▅▄▅█▆▄▄▅▅▅▅▅▅▆▅▅█▅▇▆▆▆▆▇▆▅▅▆▅▄▄▅▅▅█▆▆▅▆▇▇▅↓↓↓↓▁ data for 2017-04-12–2017-05-01; range: 4.400s–5.479s; 11% faster
06:27 Zoffix heh
06:27 * [Tux] still thinks this is unfair :)
06:30 samcv faster?
06:30 samcv reading
06:31 samcv oh interesting
06:42 Zoffix ZOFFLOP: t/spec/S11-modules/nested.t
06:53 Geth ¦ rakudo/nom: 134efd8393 | (Zoffix Znet)++ | src/core/IO/Path.pm
06:53 Geth ¦ rakudo/nom: [io grant] Fix .perl for IO::Path and subclasses
06:53 Geth ¦ rakudo/nom:
06:53 Geth ¦ rakudo/nom: Fixes RT#131185: https://rt.perl.org/Ticket/Display.html?id=131185
06:53 Geth ¦ rakudo/nom:
06:53 Geth ¦ rakudo/nom: - Coercer doesn't take any named args; use .new() instead
06:53 Geth ¦ rakudo/nom: - Always include $!CWD. Fixes failure to roundtrip Win32 paths that
06:53 synopsebot6 Link:  https://rt.perl.org/rt3/Public/Bug/Display.html?id=131185
06:53 Geth ¦ rakudo/nom:     start with a slash
06:53 Geth ¦ rakudo/nom: - Use right type for subclasses. Given them their own .perl, since
06:53 Geth ¦ rakudo/nom:     they don't need to include $!SPEC
06:53 Geth ¦ rakudo/nom: review: https://github.com/rakudo/rakudo/commit/134efd8393
06:54 Geth ¦ roast: 704210c519 | (Zoffix Znet)++ | S32-io/io-path.t
06:54 Geth ¦ roast: [io grant] Test we can roundtrip IO::Path.perl
06:54 Geth ¦ roast:
06:54 Geth ¦ roast: RT#131185: https://rt.perl.org/Ticket/Display.html?id=131185
06:54 Geth ¦ roast: Rakudo fix: https://github.com/rakudo/rakudo/commit/134efd8393
06:54 Geth ¦ roast: review: https://github.com/perl6/roast/commit/704210c519
06:54 synopsebot6 Link:  https://rt.perl.org/rt3/Public/Bug/Display.html?id=131185
07:01 Geth ¦ rakudo/nom: 69320e7fa8 | (Zoffix Znet)++ | src/core/IO/Path.pm
07:01 Geth ¦ rakudo/nom: [io grant] Fix .IO on :U of IO::Path subclasses
07:01 Geth ¦ rakudo/nom:
07:01 Geth ¦ rakudo/nom: Since IO::Path.IO is for :D, we end up in Cool:U multi that gives
07:01 Geth ¦ rakudo/nom: IO::Path and not a subclass.
07:01 Geth ¦ rakudo/nom: review: https://github.com/rakudo/rakudo/commit/69320e7fa8
07:01 Geth ¦ roast: 2689eb1e87 | (Zoffix Znet)++ | S32-io/io-path.t
07:01 Geth ¦ roast: [io grant] Test .IO on :U of IO::Path subclasses
07:01 Geth ¦ roast:
07:01 Geth ¦ roast: Rakudo fix: https://github.com/rakudo/rakudo/commit/69320e7fa8
07:01 Geth ¦ roast: review: https://github.com/perl6/roast/commit/2689eb1e87
07:44 nine I've just read through the comments on the RPerl grant proposal. Kinda depressing read.
07:44 yoleaux 30 Apr 2017 21:04Z <japhb> nine: With a Rakudo built from scratch a few minutes ago, I am unable to install Inline::Perl5 using zef, despite tests passing.  Error: ===> Install [FAIL] for Inline::Perl5:ver('0.26'):auth('github:niner'): ===SORRY!=== Could not find Inline::Language::ObjectKeeper at line 4 in: ...
07:44 yoleaux 04:20Z <Zoffix> nine: Inline::Perl5's install is busted: https://gist.github.com/zoffixznet/487bcecb8e30384e5541e838b1294528   At first glance, looks like some files are missing from `provides` META section. Like these ones: https://github.com/niner/Inline-Perl5/commit/dfeea1b62653dd5600c6d3d350e7e01b2c965fd2
07:47 lizmat Files=1192, Tests=56874, 210 wallclock secs (12.28 usr  4.85 sys + 1230.62 cusr 124.90 csys = 1372.65 CPU)
07:47 yoleaux 04:22Z <Zoffix> lizmat: looks like Weekly-worthy material: https://szabgab.com/blog-engine-in-perl6.html
07:47 yoleaux 05:48Z <Zoffix> lizmat: how come we have IO::Handle.iterator? It makes stuff like `for $handle { … }` and `$handle.map` auto-magically iterate over lines from the handle. IMO that's too surprising and I want to remove it. Is there a reason to keep .iterator that I don't know of?
07:49 lizmat m: dd Seq.new(42.iterator)
07:49 camelia rakudo-moar 69320e: OUTPUT: «(42,).Seq␤»
07:49 lizmat Zoffix: if IO::Handle doesn't have an iterator method, it will just create an iterator with one element in it
07:50 Zoffix lizmat: is that bad?
07:51 Zoffix Automatically turning up with a Seq of lines has the automagical feel of Perl 5 to it...
07:52 lizmat well, then there's the thing about automatically closing it when the iterator exhausts
07:53 lizmat the commit message states it made things 10% faster
07:53 Zoffix lizmat: I don't think that's related to adding an IO::Handle.iterator, but rather using an iterator to power IO::Handle.lines
07:53 Zoffix s/method iterator/method !LINES-ITERATOR/; would still have the same perf boost, wouldn't it?
07:53 lizmat probably because it can bypass .get if it knows it is =:= IO::Handle
07:54 lizmat Zoffix: perhaps, you're in charge in that area now  :-)
07:54 Zoffix OK
07:57 nine Looking at that Inline::Perl5 failure, it's a good thing that I have not declared a new version. Doesn't help at all though since our installers don't care about declared versions and just install git master :/
08:18 samcv who runs the hack.p6c.org server? i need somebody to install fuse for me
08:18 samcv so this appimage will actually be created which has every single nonfailing module in it :D
08:18 samcv at least theoretically it should. no reason it shouldn't
08:19 Zoffix how to install
08:19 samcv debian?
08:20 Zoffix Yeah
08:20 Zoffix jesse
08:20 samcv i think it's just called fuse
08:23 Zoffix samcv: done. I think
08:24 samcv ok it probably works. will find out when it finishes trying to install all modules again
08:24 samcv since i started it a few mins ago and it clears the files
08:47 Ven joined #perl6-dev
09:17 |Tux| joined #perl6-dev
09:22 Ven joined #perl6-dev
09:26 Ven_ joined #perl6-dev
09:46 Geth ¦ nqp/master: 4 commits pushed by (Pawel Murias)++
09:46 Geth ¦ nqp/master: d8e1773040 | Avoid numifying '!'
09:46 Geth ¦ nqp/master: ae21dc4d55 | Stop converting a '6 cute' to string
09:46 Geth ¦ nqp/master: f42720e90f | Fix incorrect use of == when eq should be used
09:46 Geth ¦ nqp/master: e3c6be0523 | Stop testing that nqp::sprintf converts a string that isn't a number to 0
09:46 Geth ¦ nqp/master: review: https://github.com/perl6/nqp/compare/3dbc977e23...e3c6be0523
10:08 dogbert17 lizmat: are you around?
10:08 dogbert17 check this out
10:09 dogbert17 m: my SetHash $set = SetHash.new; my $i = 1001; $set{$i} = True; $i++; $set{$i} = True; $i--; $set{$i} = True; dd $set; # Heh ?
10:09 camelia rakudo-moar 69320e: OUTPUT: «SetHash $set = SetHash.new(1001,1001)␤»
10:19 Ven joined #perl6-dev
11:01 Geth ¦ rakudo/nom: 3829488f14 | (Stefan Seifert)++ | 2 files
11:01 Geth ¦ rakudo/nom: Speed up module loading a bit by persisting source checksum
11:01 Geth ¦ rakudo/nom:
11:01 Geth ¦ rakudo/nom: There's no need for calculating the checksum of an installed source file over
11:01 Geth ¦ rakudo/nom: and over, when it can change only on installation. So instead, we calculate
11:01 Geth ¦ rakudo/nom: it at install time and record it in the short-name lookup file where we
11:01 Geth ¦ rakudo/nom: already store the name of the source file.
11:01 Geth ¦ rakudo/nom: With this change, we no longer read any source file when loading an installed
11:01 Geth ¦ rakudo/nom: module (dependencies were already covered).
11:01 Geth ¦ rakudo/nom: review: https://github.com/rakudo/rakudo/commit/3829488f14
11:02 lizmat dogbert17: care to rakudobug it ?
11:05 lizmat m: my SetHash $set = SetHash.new; my $i = 1001; $set{$i} = True; $i++; dd $set  # the actual problem
11:05 camelia rakudo-moar 69320e: OUTPUT: «SetHash $set = SetHash.new(1002)␤»
11:05 lizmat m: my SetHash $set = SetHash.new; my $i = 1001; $set{$i} = True; dd $set; $i++; dd $set  # more clearly
11:05 camelia rakudo-moar 69320e: OUTPUT: «SetHash $set = SetHash.new(1001)␤SetHash $set = SetHash.new(1002)␤»
11:09 dogbert17 lizmat: I'll rakudobug it, give me a few minutes :)
11:09 lizmat dogbert17: I've got a fix already
11:09 lizmat so, whatever you feel ok with
11:11 dogbert17 what would be a good title
11:12 dogbert17 you're quicl as lightning :)
11:12 dogbert17 *quick
11:13 lizmat well, I happened to be working a lot in that area recently, so I had a pretty good idea of where to look
11:14 dogbert17 any title suggestion?
11:14 lizmat eh...  SetHash retains container rather than object
11:15 Ven_ joined #perl6-dev
11:16 dogbert17 mail sent to rakudobug ... let's hope it shows up
11:17 dogbert17 that part is a bit like hit and miss
11:18 lizmat spectest is ok
11:18 lizmat will wait with commit until we have an RT id
11:19 dogbert17 cool, do you think the SetHash was the only type affected?
11:24 dogbert17 yay, RT #131240
11:24 synopsebot6 Link:  https://rt.perl.org/rt3/Public/Bug/Display.html?id=131240
11:28 Geth ¦ rakudo/nom: 551b8a69e0 | (Elizabeth Mattijsen)++ | src/core/SetHash.pm
11:28 Geth ¦ rakudo/nom: Fix for RT #131240, dogbert17++
11:28 Geth ¦ rakudo/nom: review: https://github.com/rakudo/rakudo/commit/551b8a69e0
11:28 synopsebot6 Link:  https://rt.perl.org/rt3/Public/Bug/Display.html?id=131240
11:34 Ven joined #perl6-dev
11:37 lizmat dogbert17: yeah, think it was the only type affected
11:37 dogbert17 cool, do we need a test?
11:37 lizmat in any case, I'm reworking some Bag/Mix internals at the moment
11:37 lizmat I replied to the RT mail with the message "tests needed "  :-)
11:38 dogbert17 I guess that the example could be turned into a test quite easily, I could do that if you tell me in what file to put it :)
11:39 lizmat ls t/spec/*/sethash*.t
11:39 lizmat t/spec/S02-types/sethash.t
11:39 dogbert17 will fix
11:39 lizmat dogbert17++
11:40 AlexDaniel joined #perl6-dev
11:55 dogbert17 lizmat: does this look ok ? https://gist.github.com/dogbert17/1641b0e6e02f19d8d41a4aefe09067ed
11:56 lizmat well, that's also testing .pick
11:57 dogbert17 well I need to get the key somehow
12:01 dogbert17 if I change the last line to 'is-deeply $set, SetHash.new(1001), "SetHash retains object, not container";'
12:03 lizmat ok $set{1001}
12:03 lizmat should do the trick I think
12:03 pmurias joined #perl6-dev
12:07 Geth ¦ roast: dogbert17++ created pull request #264: Test for RT 131240 - SetHash retains object, not container
12:07 Geth ¦ roast: review: https://github.com/perl6/roast/pull/264
12:08 Geth ¦ roast: 0e018d48b5 | (Jan-Olof Hendig)++ | S02-types/sethash.t
12:08 Geth ¦ roast: Test for RT 131240 - SetHash retains object, not container
12:08 Geth ¦ roast: review: https://github.com/perl6/roast/commit/0e018d48b5
12:08 Geth ¦ roast: 8d17fbdda0 | lizmat++ (committed using GitHub Web editor) | S02-types/sethash.t
12:08 Geth ¦ roast: Merge pull request #264 from dogbert17/rt-131240
12:08 Geth ¦ roast:
12:08 Geth ¦ roast: Test for RT 131240 - SetHash retains object, not container
12:09 Geth ¦ roast: review: https://github.com/perl6/roast/commit/8d17fbdda0
12:12 dogbert17 lizmat: bug is now marked as resolved :)
12:12 lizmat thanks!
12:13 dogbert17 the code I had, which uncovered the problem, now works again
12:14 lizmat cool, afaics it wasn't a recent breakage, or was it ?
12:15 dogbert17 well, it seemed to work in 2016-12 at least, perhaps AlexDaniel can figure out when the breakage occured
12:16 AlexDaniel hello
12:16 dogbert17 hi
12:16 AlexDaniel e: https://gist.githubusercontent.com/dogbert17/1641b0e6e02f19d8d41a4aefe09067ed/raw/fda5d0d9191fbf6f41dd991942ac513edf7b4776/test.pl6
12:16 lizmat star: my SetHash $set = SetHash.new; my $i = 1001; $set{$i} = True; dd $set; $i++; dd $set  # more clearly
12:16 evalable6 AlexDaniel, Successfully fetched the code from the provided URL.
12:16 camelia star-m 2016.10: OUTPUT: «SetHash $set = SetHash.new(1001)␤SetHash $set = SetHash.new(1001)␤»
12:16 evalable6 AlexDaniel, rakudo-moar 551b8a69e: OUTPUT: «(exit code 1) ===SORRY!=== Error while compiling /tmp/eGFgxgrPmT␤Undeclared routine:␤    is used at line 7␤»
12:17 dogbert17 hmm
12:17 AlexDaniel bisect: my SetHash $set = SetHash.new; my $i = 1001; $set{$i} = True; dd $set; $i++; dd $set  # more clearly
12:17 bisectable6 AlexDaniel, On both starting points (old=2015.12 new=551b8a6) the exit code is 0 and the output is identical as well
12:17 bisectable6 AlexDaniel, Output on both points: «SetHash $set = SetHash.new(1001)␤SetHash $set = SetHash.new(1001)»
12:18 AlexDaniel right, it's broken in 2017.04.3
12:18 AlexDaniel bisect: new=2017.04.3 my SetHash $set = SetHash.new; my $i = 1001; $set{$i} = True; dd $set; $i++; dd $set  # more clearly
12:18 bisectable6 AlexDaniel, Bisecting by output (old=2015.12 new=2017.04.3) because on both starting points the exit code is 0
12:18 bisectable6 AlexDaniel, bisect log: https://gist.github.com/3766b2535b4a6c5e80f52006f0dc9451
12:18 bisectable6 AlexDaniel, (2017-04-07) https://github.com/rakudo/rakudo/commit/a4b30dc7d14a56b02c5419dcf7a21aa9bfdaf6a2
12:18 AlexDaniel and then it was fixed again I guess?
12:18 AlexDaniel bisect: old=2017.04.3 my SetHash $set = SetHash.new; my $i = 1001; $set{$i} = True; dd $set; $i++; dd $set  # more clearly
12:18 bisectable6 AlexDaniel, Bisecting by output (old=2017.04.3 new=551b8a6) because on both starting points the exit code is 0
12:18 bisectable6 AlexDaniel, bisect log: https://gist.github.com/26346613cb371e893ffb9cf5bb6ccd0f
12:18 bisectable6 AlexDaniel, (2017-05-01) https://github.com/rakudo/rakudo/commit/551b8a69e0a83e2c34d4fff89cc32acc6881a7d6
12:19 AlexDaniel dogbert17: but that's not what you were asking, right? :)
12:20 dogbert17 Well, the code seemed to work in 2016-12 (which I have) but not earlier today so we're interested in when the breakage occured
12:22 AlexDaniel c: a4b30dc7d14a56b^,a4b30dc7d14a56b my SetHash $set = SetHash.new; my $i = 1001; $set{$i} = True; dd $set; $i++; dd $set  # more clearly
12:22 committable6 AlexDaniel, ¦a4b30dc7d14a56b^: «SetHash $set = SetHash.new(1001)␤SetHash $set = SetHash.new(1001)» ¦a4b30dc: «SetHash $set = SetHash.new(1001)␤SetHash $set = SetHash.new(1002)»
12:22 AlexDaniel dogbert17: you mean this? ↑
12:22 Geth ¦ rakudo/nom: 451a238070 | (Elizabeth Mattijsen)++ | src/core/Baggy.pm
12:22 Geth ¦ rakudo/nom: Make Baggy.EXISTS-KEY about 8% faster
12:22 Geth ¦ rakudo/nom:
12:22 Geth ¦ rakudo/nom: Not much, but for such essential functionality worthwhile.
12:22 Geth ¦ rakudo/nom: review: https://github.com/rakudo/rakudo/commit/451a238070
12:23 dogbert17 yeah
12:24 dogbert17 m: my SetHash $set = SetHash.new; my $i = 1001; $set{$i} = True; dd $set; $i++; dd $set  # more clearly
12:24 camelia rakudo-moar 551b8a: OUTPUT: «SetHash $set = SetHash.new(1001)␤SetHash $set = SetHash.new(1001)␤»
12:26 dogbert17 so it was the commit on April 7th?
12:27 dogbert17 btw, can you amend/update a pull request which has already been merged?
12:29 dogbert17 there is a moronic typo in the PR I sent, i.e. in the code comment I wrote 130240 instead of 131240
12:31 AlexDaniel dogbert17: yes, you will have to force pushe it
12:31 AlexDaniel push*
12:31 AlexDaniel but it's ok if it's in your own fork
12:35 pmurias can I rerun travis tests for a MoarVM PR? I fixed the nqp tests that where failing?
12:36 Geth ¦ star: c5a440681d | (Steve Mynott)++ | docs/announce/2017.04.md
12:36 Geth ¦ star: Doc MoarVM version correctly.  Add https.
12:36 Geth ¦ star: review: https://github.com/rakudo/star/commit/c5a440681d
12:42 Geth ¦ star: 4b74d71e6b | (Steve Mynott)++ | modules/doc
12:42 Geth ¦ star: bump doc
12:42 Geth ¦ star: review: https://github.com/rakudo/star/commit/4b74d71e6b
12:46 [Coke] I think you can re-run any set of travis tests if you're looking at the results.
12:48 timotimo dogbert17: if the PR has already been merged, you'll update the UI on github and maybe it'll re-open it, but it won't change what's in the master branch
12:51 Geth ¦ star: a05b933581 | (Steve Mynott)++ | README
12:51 Geth ¦ star: bump Star version in README and stress JVM build is experimental
12:51 Geth ¦ star: review: https://github.com/rakudo/star/commit/a05b933581
13:10 Geth ¦ rakudo/nom: eb1ce4142f | (Elizabeth Mattijsen)++ | 2 files
13:10 Geth ¦ rakudo/nom: Scrape off the tiniest bit on Hash.EXISTS-KEY
13:10 Geth ¦ rakudo/nom:
13:10 Geth ¦ rakudo/nom: Around 1%, but again, maybe worthwhile for many applications.
13:10 Geth ¦ rakudo/nom: review: https://github.com/rakudo/rakudo/commit/eb1ce4142f
13:20 lizmat argh, what is the URL for test-t data again ?
13:20 lizmat looking at the improvement made in 2016
13:21 lizmat *for
13:23 timotimo huggable: csv
13:23 huggable timotimo, https://github.com/Tux/CSV (see `bench csv` for how to run bench)
13:23 timotimo no
13:23 timotimo buggable: csv
13:23 timotimo buggable: speed
13:23 buggable timotimo, ▅▅▄▅▄▅█▆▄▄▅▅▅▅▅▅▆▅▅█▅▇▆▆▆▆▇▆▅▅▆▅▄▄▅▅▅█▆▆▅▆▇▇▅↓↓↓↓▁ data for 2017-04-12–2017-05-01; range: 4.400s–5.479s; 11% faster
13:23 timotimo huggable: speed
13:23 huggable timotimo, http://tux.nl/Talks/CSV6/speed4.html
13:23 timotimo there it is
13:24 lizmat whee
13:36 AlexDaniel timotimo: so… what caused it?
13:37 lizmat AlexDaniel: removing 'use Slang::Tuxic' from the test script
13:38 lizmat as we want to test Text::CSV for "normal" users (as in the ones that don't have Tux's coding preferences)
13:39 timotimo what caused what?
13:39 lizmat I felt we could/should make test-t.pl be generic Perl 6 code without Slang::Tuxic
13:39 timotimo oh, that
13:39 Zoffix AlexDaniel: the "11% faster" are really "5% slower"; we just removed a specialty module most users wouldn't be using, so that the numbers compared to other benches are more fair
13:40 Zoffix And my best guess for why slower is we fixed bugs in string/regex/IO stuff
13:42 lizmat m: say now - BEGIN now; sub prefix:<!>(\a) { a }
13:42 camelia rakudo-moar eb1ce4: OUTPUT: «0.0149347␤»
13:42 lizmat m: say now - BEGIN now; sub postfix:<!>(\a) { a }   # rewrite grammar
13:42 camelia rakudo-moar eb1ce4: OUTPUT: «0.28631672␤»
13:55 lizmat m: my $b = <a b c>.BagHash; $_ = -1 for $b.values; dd $b   # yikes
13:55 camelia rakudo-moar eb1ce4: OUTPUT: «BagHash $b = ("b"=>-1,"a"=>-1,"c"=>-1).BagHash␤»
13:55 lizmat m: my $b = <a b c>.BagHash; $_ = 0 for $b.values; dd $b   # yikes
13:55 camelia rakudo-moar eb1ce4: OUTPUT: «BagHash $b = ("b"=>0,"a"=>0,"c"=>0).BagHash␤»
13:55 * lizmat is looking at that
14:06 Geth ¦ rakudo/nom: 1192a03baa | (Zoffix Znet)++ | src/core/IO/ArgFiles.pm
14:06 Geth ¦ rakudo/nom: Revert "Fix crash on ^D to $*IN when reading with IO::ArgFiles"
14:06 Geth ¦ rakudo/nom:
14:06 Geth ¦ rakudo/nom: This reverts commit 4b8fd4a4f9c57ca60bf63d2cdb09a450f62d0142.
14:06 Geth ¦ rakudo/nom: review: https://github.com/rakudo/rakudo/commit/1192a03baa
14:06 Geth ¦ rakudo/nom: 7a45cba45a | (Zoffix Znet)++ | src/core/IO/ArgFiles.pm
14:06 Geth ¦ rakudo/nom: Revert "Wean IO::ArgFiles away from IO::Handle.lines(:close)"
14:06 Geth ¦ rakudo/nom:
14:06 Geth ¦ rakudo/nom: This reverts commit 6be395e310104f91f06fc6424a175dc35de163f8.
14:06 Geth ¦ rakudo/nom: review: https://github.com/rakudo/rakudo/commit/7a45cba45a
14:06 Geth ¦ rakudo/nom: eb8d006e64 | (Zoffix Znet)++ | src/core/IO/Handle.pm
14:06 Geth ¦ rakudo/nom: [io grant] Make IO::Handle.iterator a private lines iterator
14:06 Geth ¦ rakudo/nom:
14:06 Geth ¦ rakudo/nom: Fixes unwanted automagical behaviour of for $fh { ... } looping
14:06 Geth ¦ rakudo/nom: over the .lines from the handle instead of the handle itself.
14:06 Geth ¦ rakudo/nom:
14:06 Geth ¦ rakudo/nom: Discussion: https://irclog.perlgeek.de/perl6-dev/2017-05-01#i_14512345
14:06 Geth ¦ rakudo/nom:
14:06 Geth ¦ rakudo/nom: Previous two revert commits are part of the work in this commit and
14:06 Geth ¦ rakudo/nom: are just reverting IO::ArgFiles back to using .lines instead of
14:06 Geth ¦ rakudo/nom: no-longer-available .iterator method. It was done mostly because
14:06 Geth ¦ rakudo/nom: `:close` arg on IO::Handle.lines was going away, but it stayewd.
14:07 Geth ¦ rakudo/nom: review: https://github.com/rakudo/rakudo/commit/eb8d006e64
14:07 Geth ¦ roast: 40353f13ef | (Zoffix Znet)++ | S32-io/io-handle.t
14:07 Geth ¦ roast: [io grant] Test for IO::Handle:D { ... } loops over handle
14:07 Geth ¦ roast:
14:07 Geth ¦ roast: ...and not its .lines.
14:07 Geth ¦ roast: Rakudo fix: https://github.com/rakudo/rakudo/commit/eb8d006e64
14:07 Geth ¦ roast: review: https://github.com/perl6/roast/commit/40353f13ef
14:25 Zoffix Perl developer survey is out: http://blog.builtinperl.com/post/perl-developer-survey-2017-results---part-1
14:25 Zoffix Only 16% of survey answerers are new (within last 5 years) Perl 5 programmers
14:27 Zoffix There's no real useful data for Perl 6 tho. Was just 1 question about "trying Perl 6" and from "what other langs you use" 4% of responders that use more than just Perl 5 listed Perl 6 as other lang
14:29 TimToady joined #perl6-dev
14:32 MasterDuke_ well, 46% have tried Perl 6, that's good
14:32 Zoffix Even the "trying Perl 6" data is bad actually... It doesn't specify any time periods. "Yeah, I tried Perl 6 10 years ago. It was unfinished and sucked"
14:41 ggoebel joined #perl6-dev
14:48 * Zoffix wants a Cat
14:48 Zoffix m: "/tmp/foo2".IO.spurt: "abc\ndefg\nhij"; my $*DEFAULT-READ-ELEMS = 1; dd "/tmp/foo2".IO.open.comb: /\S+/
14:48 camelia rakudo-moar eb8d00: OUTPUT: «("a", "b", "c", "d", "e", "f", "g", "h", "i", "j").Seq␤»
14:48 Zoffix m: "/tmp/foo2".IO.spurt: "abc\ndefg\nhij"; my $*DEFAULT-READ-ELEMS = 2; dd "/tmp/foo2".IO.open.comb: /\S+/
14:48 camelia rakudo-moar eb8d00: OUTPUT: «("ab", "c", "de", "fg", "h", "ij").Seq␤»
14:49 Zoffix The same bug exists with IO::Handle.split as well. The boundary between reads screws stuff up.
14:50 lizmat hmmm...
14:51 lizmat yeah, a Cat would be nice
14:51 lizmat please rakudobug  :-)
14:52 Zoffix The Cat?
14:52 lizmat yeah, that too, it's been loooong overdue :-)
14:53 Zoffix I was gonna fix the .comb/.split stuff as part of the grant
14:54 Zoffix Well, the original issue is not all the features of Str.split/(and I think .comb) are implemented
14:56 lizmat well, there's always .slurp.split  :-)
14:57 Geth ¦ rakudo/nom: 5ec8a4644e | (Elizabeth Mattijsen)++ | src/core/Baggy.pm
14:57 Geth ¦ rakudo/nom: Streamline Baggy.AT-KEY/DELETE-KEY a bit
14:57 Geth ¦ rakudo/nom: review: https://github.com/rakudo/rakudo/commit/5ec8a4644e
15:10 * Zoffix tries a hand at making a Cat
15:10 Zoffix 1 female cat. Check: http://i.imgur.com/sNOLIvn.jpg
15:10 Zoffix .... wonder what else I'll need.
15:11 timotimo is that your cat?
15:11 Zoffix Yeah
15:11 timotimo cool pattern
15:14 Zoffix Yup. Got a black heart on her right shoulder: http://i.imgur.com/I0sEZk7.jpg
15:14 Zoffix ZofBot: black heart of doom from killer cat!
15:14 ZofBot Zoffix, Files=1192, Tests=56874, 210 wallclock secs (12.28 usr 4.85 sys + 1230.62 cusr 124.90 csys = 1372.65 CPU)
15:24 AlexDaniel amazing answer
15:27 Zoffix baaah
15:27 Zoffix The gist/put not using .Str/.gist on Str types is already affecting Cat :|
15:27 Zoffix 'cause I figure it should be an Str and be able to be used anywhere a Str can be used
15:27 timotimo Cat must be a subtype of Str?
15:28 Zoffix Not must, but it's just a lazy Str... not making it a subclass is silly
15:28 jnthn Cat should be Stringy, but not Str
15:28 Zoffix Ah, OK
15:29 jnthn (That's the reason we added the Stringy role)
15:29 jnthn (Or at least, so far as I remember :))
15:29 Zoffix :)
15:30 jnthn I think gist/put on Str should be able to assume they have a Str they can just unbox
15:30 jnthn If somebody writes a subclass that isn't OK with that, then I call Liskov. :)
15:30 Zoffix They can just add more candidates to handle their subclass, I think.
15:30 jnthn That also :)
15:35 stmuk_ http://rakudo.org/2017/05/01/announce-rakudo-star-release-2017-04/
15:35 Zoffix wooo \o/
15:35 Zoffix stmuk_++
15:36 stmuk_ nice cat
15:36 stmuk_ BTW
15:37 MasterDuke_ stmuk_++, but minor typo 'In particular This release'
15:37 stmuk_ grrr
15:38 stmuk_ fixed on the website anyway!
15:39 Zoffix stmuk_: FWIW, there was another upgrade notice for lexical require: http://rakudo.org/2017/03/18/lexical-require-upgrade-info/
15:39 Zoffix (to go with the 3 IO ones you listed)
15:40 stmuk_ goo.gl/eFaSXg
15:44 Zoffix So... where do I go to get papers on lazy string stuff?
15:44 Zoffix uuu https://github.com/papers-we-love/papers-we-love
15:46 MasterDuke_ m: say q| '$a' | ~~ m/<<'$a'>>/
15:46 camelia rakudo-moar 5ec8a4: OUTPUT: «False␤»
15:47 MasterDuke_ m: say q| 'a' | ~~ m/<<'a'>>/
15:47 camelia rakudo-moar 5ec8a4: OUTPUT: «「a」␤»
15:47 Zoffix That's correct output.
15:48 timotimo stmuk_++
15:48 MasterDuke_ huh. how's that?
15:48 Zoffix `'` and `$` do not have a << boundary between them, so there's no match. The single quotes in the regex just quote the string, they're not the literal quotes
15:48 MasterDuke_ yeah, i'm just using them in the regex to quote the literal, i don't want to match them
15:49 Zoffix The << is a boundary between \W and \w, not \s and \S
15:49 MasterDuke_ oh, right
15:50 Zoffix s/, not//; # wouldn't have matched anyway due to quotes
15:50 Zoffix s/, not.+//; # wouldn't have matched anyway due to quotes
15:51 |Tux| This is Rakudo version 2017.04.3-142-g5ec8a4644 built on MoarVM version 2017.04-44-gf0db8822
15:51 |Tux| csv-ip5xs        2.977
15:51 |Tux| test            12.963
15:51 |Tux| test-t           4.376 - 4.381
15:51 |Tux| csv-parser      12.538
16:17 Geth ¦ rakudo/nom: 1f80dba186 | (Elizabeth Mattijsen)++ | src/core/Rakudo/QuantHash.pm
16:17 Geth ¦ rakudo/nom: Oops, forgot vi hint for new R:Q file
16:17 Geth ¦ rakudo/nom: review: https://github.com/rakudo/rakudo/commit/1f80dba186
16:33 Ven joined #perl6-dev
16:33 nebuchad` joined #perl6-dev
16:41 Zoffix ZofBot: Finite-State Reduplication in One-Level Prosodic Morphology
16:41 ZofBot Zoffix, Note, though, that if you remap a section of "buf32" memory to be "buf8", you'll have to multiply all your positions by 4
16:42 Zoffix noted.
16:42 ilmari joined #perl6-dev
17:08 lizmat wish we could have ANI semantics for Perl 6  http://www.ybrikman.com/writing/2014/04/09/six-programming-paradigms-that-will/
17:10 Zoffix "The unusual syntax is tough to parse, and the language seems dead".... or maybe not :P
17:13 lizmat well, that's basically how I envisioned true multiprocessing
17:13 lizmat a long time ago
17:13 lizmat let the system figure out what can be done in parallel  :-)
17:14 Zoffix :)
17:14 Zoffix The "Dependent types" section is kinda like our subsets, if you remove the "compile time" prereq, since some values aren't known at compile time...
17:15 Zoffix m: -> UInt {}(-1); say "runtime"
17:15 camelia rakudo-moar 1f80db: OUTPUT: «Constraint type check failed in binding to parameter '<anon>'; expected UInt but got Int (-1)␤  in block <unit> at <tmp> line 1␤␤»
17:15 MasterDuke_ yeah, thought that too
17:15 Zoffix m: say "runtime"; -> UInt {}(-1);
17:15 camelia rakudo-moar 1f80db: OUTPUT: «runtime␤Constraint type check failed in binding to parameter '<anon>'; expected UInt but got Int (-1)␤  in block <unit> at <tmp> line 1␤␤»
17:15 Zoffix yeah
17:15 Zoffix m: say "runtime"; BEGIN -> UInt {}(-1);
17:15 camelia rakudo-moar 1f80db: OUTPUT: «5===SORRY!5=== Error while compiling <tmp>␤An exception occurred while evaluating a BEGIN␤at <tmp>:1␤Exception details:␤  Constraint type check failed in binding to parameter '<anon>'; expected UInt but got Int (-1)␤    in code  at <tmp> li…»
17:15 Zoffix hehe
17:37 sasheto joined #perl6-dev
17:37 Zoffix "The sentence is_string characterizes valid string models and is defined as is_string def = ∀x, y, z.(∨a∈ΣLa(x))∧∧a6=b∈Σ(La(x) → ¬Lb(x))∧(S(x, y)∧S(x, z) → y = z)∧(first(x)∧first(y) → x = y). It is easy to see that a structure satisfying is_string property uniquely characterizes a string"
17:37 Zoffix I think I'm done hunting for CS papers and will just wing it :P
17:38 timotimo :D :D
17:41 lizmat hehe
17:41 Geth ¦ rakudo/nom: c1bd844e27 | (Elizabeth Mattijsen)++ | 2 files
17:41 Geth ¦ rakudo/nom: Fix for RT #131241
17:41 Geth ¦ rakudo/nom:
17:41 Geth ¦ rakudo/nom: This actually also allows for:
17:41 Geth ¦ rakudo/nom:   for $b.values {
17:41 synopsebot6 Link:  https://rt.perl.org/rt3/Public/Bug/Display.html?id=131241
17:41 Geth ¦ rakudo/nom:       $_ = 0;   # remove from BagHash
17:41 Geth ¦ rakudo/nom:       $_ = 42;  # reinstate
17:41 Geth ¦ rakudo/nom:   }
17:41 Geth ¦ rakudo/nom: <…commit message has 6 more lines…>
17:41 Geth ¦ rakudo/nom: review: https://github.com/rakudo/rakudo/commit/c1bd844e27
17:45 MasterDuke_ fyi to anyone and everyone, https://github.com/rakudo/rakudo/pull/1073 has been updated with a typed exception and some adapted tests from roast. if/when this is merged i'll change the roast tests to just look for the correct type of Exception
17:51 Geth ¦ rakudo/nom: 0e0ac2fb8c | (Elizabeth Mattijsen)++ | src/core/MixHash.pm
17:51 Geth ¦ rakudo/nom: Oops, fix a copy-pasto
17:51 Geth ¦ rakudo/nom:
17:51 Geth ¦ rakudo/nom: For MixHashes we accept any HLL numeric value that is not 0.
17:51 Geth ¦ rakudo/nom: review: https://github.com/rakudo/rakudo/commit/0e0ac2fb8c
17:51 Geth ¦ rakudo/nom: 7 commits pushed by MasterDuke17++, (Daniel Green)++, lizmat++
17:51 Geth ¦ rakudo/nom: 8511081f7c | Add method name to type vs instance error
17:51 Geth ¦ rakudo/nom: 4f9fa6b073 | Make method name '<anon>' if null
17:51 Geth ¦ rakudo/nom: 12cec7a700 | Say 'routine' when it could be a method or sub
17:51 Geth ¦ rakudo/nom: 146f3a398e | De-dupe code shared between two branches
17:51 Geth ¦ rakudo/nom: d1a81b303e | Create and use typed exception
17:51 Geth ¦ rakudo/nom: b4b55040f5 | Adapt tests from roast to check Exception messages
17:51 Geth ¦ rakudo/nom: 858a3d50fd | Merge pull request #1073 from MasterDuke17/add_method_name_to_type_vs_instance_error
17:51 Geth ¦ rakudo/nom: review: https://github.com/rakudo/rakudo/compare/0e0ac2fb8c...858a3d50fd
17:52 lizmat MasterDuke_++
17:54 MasterDuke_ lizmat++, thanks
18:06 * TimToady finally back to civilization, but now has an infestation of grandkids :)
18:06 Zoffix :O
18:06 Zoffix :o
18:23 lizmat .oO( takes a while to build an infestation of those  :)
18:24 lizmat m: my $b = <a b c>.BagHash; .value = -1 for $b.pairs; dd $b   # RT #131241 goes deeper  :-(
18:24 synopsebot6 Link:  https://rt.perl.org/rt3/Public/Bug/Display.html?id=131241
18:24 camelia rakudo-moar 858a3d: OUTPUT: «BagHash $b = ("b"=>-1,"a"=>-1,"c"=>-1).BagHash␤»
18:25 lizmat m: my $b = <a b c>.BagHash; for $b.kv -> \k, \v { v = -1 }; dd $b   # much deeper :-(
18:25 camelia rakudo-moar 858a3d: OUTPUT: «BagHash $b = ("b"=>-1,"a"=>-1,"c"=>-1).BagHash␤»
18:29 lizmat but that will be for tomorrow
18:42 ggoebel joined #perl6-dev
18:53 lizmat dinner&
19:13 Zoffix Looks like The Curse of 2017.04 Releases is still alive and is now affecting Rakudo Star releases :P https://twitter.com/mike_sanderson/status/859106594922962944
19:34 Zoffix left #perl6-dev
19:37 lizmat *sigh*  so should I mention the Rakudo Star release in the P6W or not ?
19:38 Zoffix joined #perl6-dev
19:39 Zoffix lizmat: mention it and say there's a problem and people should keep an eye on updated version?
19:39 lizmat so does it prevent users to use R* on Windows completely, or just when they want to install in a non-standard location ?
19:40 TimToady perl6.bat starts: @ "C:\Users\steve\temp\rakudo-star-2017.04\install\bin\moar"
19:41 TimToady which is already a bit non-standandard :)
19:41 * TimToady likes "non-standardard"
19:41 TimToady sort of self-descriptive...
19:42 lizmat ah, ok, so basically useless for Win users atm
19:43 Zoffix Or... we could launch a marketing campaign: Personalized Rakudo Star distribution. "Share a Perl 6 with... `steve`": https://s-media-cache-ak0.pinimg.com/originals/c6/67/ac/c667ac09ff57fdae8b6b758f7545d007.jpg
19:44 lizmat :-)
19:48 timotimo you are our star
19:49 ggoebel joined #perl6-dev
19:49 Zoffix :)
19:57 Ven joined #perl6-dev
19:59 AlexDaniel “There are 399,502 people in the U.S. with the first name Steve.“
20:08 timotimo that's a nice little user base right there
20:18 Zoffix joined #perl6-dev
20:19 Zoffix m: dd <42.1>.Numeric.^name
20:19 camelia rakudo-moar 858a3d: OUTPUT: «"Rat"␤»
20:20 Zoffix Seems if we make allomorphs do an empty role, say `NumericStr`, we can reduce the number of candidates and fix the ambiguity thing too
20:20 Ven_ joined #perl6-dev
20:22 Zoffix m: say ([X] <Int Num Rational Complex> xx 2).combinations(2).elems
20:22 camelia rakudo-moar 858a3d: OUTPUT: «120␤»
20:23 Zoffix m: $ = <42> cmp <1.2>
20:23 camelia rakudo-moar 858a3d: OUTPUT: «Ambiguous call to 'infix:<cmp>'; these signatures all match:␤:(Int:D \a, Rational:D \b)␤:(Str:D \a, Str:D \b --> Order:D)␤  in block <unit> at <tmp> line 1␤␤»
20:23 Zoffix m: $ = <42> eqv <1.2>
20:23 camelia rakudo-moar 858a3d: OUTPUT: «Ambiguous call to 'infix:<eqv>'; these signatures all match:␤:(Numeric:D \a, Numeric:D \b)␤:(Str:D \a, Str:D \b)␤  in block <unit> at <tmp> line 1␤␤»
20:23 Zoffix That ambiguity thing I mean ^
20:23 Zoffix And those aren't really the right candidates
20:37 geekosaur joined #perl6-dev
20:45 Zoffix `is default` isn't working for me :/ https://gist.github.com/zoffixznet/93493f687dbfdb7864813b120d2e5c77
20:48 Zoffix Full diff: https://gist.github.com/zoffixznet/f29917b3930b3e877df6da68271f192d
20:50 Zoffix Ah, I'm blind. The rational candidate also has is default on it -_-
20:50 Zoffix is there `is default is default`? If two ambiguious candidates, use the one with two defaults
20:53 Zoffix m: multi infix:<foo> (Str:D, Str:D) is default {}; multi infix:<foo> (Int:D, Int:D) is default {}; <1> foo <2>
20:53 camelia rakudo-moar 858a3d: OUTPUT: «Ambiguous call to 'infix:<foo>'; these signatures all match:␤:(Str:D $, Str:D $)␤:(Int:D $, Int:D $)␤  in block <unit> at <tmp> line 1␤␤»
20:53 Zoffix Like, I need for it to pick up the `Int` candidate.
20:54 Zoffix But Str candidate still needs is default :/
20:58 Zoffix Ah
20:58 Zoffix m: dd ([X] <Num Int Rat Complex> xx 2).elems
20:58 camelia rakudo-moar 858a3d: OUTPUT: «16␤»
20:58 Zoffix There's only 16 candidates. My math that gave me 120 was wrong :)
21:13 Zoffix m: dd IntStr.new(42, 'x') eqv <42>
21:13 camelia rakudo-moar 858a3d: OUTPUT: «Bool::True␤»
21:15 geekosaur joined #perl6-dev
21:16 samcv is defaulter
21:16 samcv heh.
21:16 Zoffix :)
21:16 samcv then we will have defaultest
21:17 samcv for the most default of the defaults
21:19 geekosaur defaultererester
21:19 samcv or is default(3)
21:19 samcv i mean would it be possible to give them numbers?
21:19 Zoffix uuhhh... a bunch of failures in roast :/ wonder how many are due to my change
21:19 * Zoffix reset --hard's and recompiles
21:20 pmurias joined #perl6-dev
21:20 Zoffix teh failures: https://gist.github.com/zoffixznet/1b8e25065a35326002bf6424d6e525db
21:23 lizmat the baghash/mixhash ones are mine
21:23 lizmat when I tried to fix those, I realized that my fix for RT #131241 was incomplete
21:23 synopsebot6 Link:  https://rt.perl.org/rt3/Public/Bug/Display.html?id=131241
21:24 lizmat so I didn't fix it yet
21:24 lizmat will do so now
21:25 Zoffix And the signature/misc are likely due to the exceptions PR that went in; and t/spec/S17-promise/nonblocking-await.t just flopped
21:26 Zoffix ZOFFLOP: t/spec/S17-promise/nonblocking-await.t
21:26 Geth ¦ roast: 233717633d | (Elizabeth Mattijsen)++ | 2 files
21:26 Geth ¦ roast: Fix tests broken by fix to RT #131241
21:26 Geth ¦ roast: review: https://github.com/perl6/roast/commit/233717633d
21:26 synopsebot6 Link:  https://rt.perl.org/rt3/Public/Bug/Display.html?id=131241
21:43 Geth ¦ rakudo/nom: e5870c11df | (Zoffix Znet)++ | src/core/allomorphs.pm
21:43 Geth ¦ rakudo/nom: Add `eqv` and `cmp` candidates for mixed allomorphs
21:43 Geth ¦ rakudo/nom:
21:43 Geth ¦ rakudo/nom: Otherwise we get "Ambiguous call" error. The `===` op does not
21:43 Geth ¦ rakudo/nom: appear to need similar treatment.
21:43 Geth ¦ rakudo/nom:
21:43 Geth ¦ rakudo/nom: Bug find: https://irclog.perlgeek.de/perl6/2017-05-01#i_14514985
21:43 Geth ¦ rakudo/nom: review: https://github.com/rakudo/rakudo/commit/e5870c11df
21:44 Geth ¦ roast: ab8d175f01 | (Zoffix Znet)++ | S02-literals/allomorphic.t
21:44 Geth ¦ roast: Test mixed allomorphs can be `eqv`ed and `cmp`ed
21:44 Geth ¦ roast:
21:44 Geth ¦ roast: Bug find: https://irclog.perlgeek.de/perl6/2017-05-01#i_14514985
21:44 Geth ¦ roast: Rakudo fix: https://github.com/rakudo/rakudo/commit/e5870c11df
21:44 Geth ¦ roast: review: https://github.com/perl6/roast/commit/ab8d175f01
21:44 Zoffix samcv: ^ that fixed the bug you had
21:45 samcv yay :)
21:46 Zoffix Oh, forgot to mention on the commit message: this also fixes `eqv` for allomorphs; it was incorrectly using `||` instead of `&&` and so IntStr.new(42, "x") was `eqv` IntStr.new(72, "x")
21:52 Geth ¦ roast: c442a072c4 | (Zoffix Znet)++ | S02-literals/allomorphic.t
21:52 Geth ¦ roast: Test manually-made allomorphs `eqv` right
21:52 Geth ¦ roast:
21:52 Geth ¦ roast: Using both Numeric and Str parts.
21:52 Geth ¦ roast: Rakudo fix: https://github.com/rakudo/rakudo/commit/e5870c11df
21:52 Geth ¦ roast: review: https://github.com/perl6/roast/commit/c442a072c4
22:38 lizmat and another Perl 6 Weekly hits the Net: https://p6weekly.wordpress.com/2017/05/01/2017-18-starlight-starbright/
22:42 timotimo lizmat: you missed the opportunity to write "fixed various issues first with orelse and then with andthen" :P
22:44 lizmat so WHAT :-)
22:51 lizmat m: say "sphere" if not so WHAT pi
22:51 camelia rakudo-moar e5870c: OUTPUT: «sphere␤»
22:51 Zoffix lizmat++ good weekly. And good rocket video :P
22:51 lizmat yeah, that was cool, wasn't it?
22:51 Zoffix Yeah, very futuristic
22:58 lizmat good night, #perl6-dev!
22:58 timotimo gnite lizmat
22:58 timotimo lizmat++ # weekly
23:02 Zoffix night
23:15 Woodi joined #perl6-dev
23:46 samcv argh my travi still failing due to URI not passing tests
23:46 samcv write string requires an object with REPR MVMOSHandle (got Scalar with REPR P6opaque)
23:47 samcv does not look that great https://travis-ci.org/samcv/keira-perl6-ircbot/jobs/227742055#L1487
23:47 samcv anybody know if this is a bug that was introduced?

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