Perl 6 - the future is here, just unevenly distributed

IRC log for #perl6, 2015-12-06

Perl 6 | Reference Documentation | Rakudo

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

All times shown according to UTC.

Time Nick Message
00:00 herby_ dumb question, but what does "so" do?
00:00 herby_ i'm trying to search, but so is used a lot
00:00 Guest99713 See https://github.com/perl6/doc/commit/cf66efc7c9cc8eee515e05568ec59cfe02770498
00:00 AlexDaniel 「grep -R 'say so' *」 shows that there is only one such error
00:00 zengargoyle herby_: think opposite of 'not'
00:00 herby_ nm
00:01 herby_ I found it, I'm a dummy
00:01 zengargoyle loose precedence boolifier
00:01 herby_ thanks zenga
00:01 cygx welcome to Day 6 \o/
00:01 jdv79 timotimo: should i just bug it?
00:01 masak cygx: \o/
00:02 herby_ I can't contribute much to the technical side of the Perl 6 project, but should I report typos & small mistakes I spot as I'm reading Perl 6 docs?
00:02 herby_ or at this point are they not a priority
00:03 dalek doc: cf66efc | (Christopher Bottoms)++ | doc/Type/Any.pod:
00:03 dalek doc: Removed erroneous use of "so"
00:03 dalek doc: review: https://github.com/perl6/doc/commit/cf66efc7c9
00:03 dalek doc: 6de7f0b | RabidGravy++ | doc/Type/Any.pod:
00:03 dalek doc: Merge pull request #225 from molecules/patch-2
00:03 dalek doc:
00:03 dalek doc: Removed erroneous use of "so"
00:03 dalek doc: review: https://github.com/perl6/doc/commit/6de7f0bbc3
00:03 timotimo jdv79: i know this exact code has been in the channel before, so you may have to search the bug tracker first
00:03 cygx herby_: better yet, you can fix them
00:03 herby_ the famous pull requests? not sure how that works but I'll do a little reading
00:04 jdv79 surely a dup is better than nothing:)
00:04 Guest99713 herby_: Do you have a github account?
00:04 herby_ I do I do, created one the other day
00:04 cygx herby_: for minor things, you can use the github web interface
00:04 AlexDaniel herby_: as far as I know it is not a problem to get push access. This will make it easier to fix typos
00:04 AlexDaniel herby_: oh, and what cygx just said!
00:05 RabidGravy in a nutshell, fork https://github.com/perl6/doc/, clone locally, make changes push, make PR
00:05 AlexDaniel herby_: it will fork, commit and create a pull request. All behind the scenes! You just edit a file :)
00:05 herby_ sweet, that'll give me something to work on and contribute to
00:05 herby_ thanks
00:06 jdv79 is rt slow?
00:06 Guest99713 herby_++ for finding that error
00:06 abaugher_ joined #perl6
00:09 AlexDaniel herby_: frequently I see tiny typos but sometimes I am too lazy to fix them. That being said, I'd love these things to be fixed. Your work will be appreciated!
00:10 herby_ great, I've been looking for a way I could help
00:12 dalek mu: 373bff6 | (Wenzel P. P. Peppmeyer)++ | misc/perl6advent-2015/schedule:
00:12 dalek mu: Update schedule
00:12 dalek mu: review: https://github.com/perl6/mu/commit/373bff6cd4
00:14 raiph joined #perl6
00:15 mngrif joined #perl6
00:18 raiph joined #perl6
00:20 raiph joined #perl6
00:24 cygx_ joined #perl6
00:27 jdv79 so there's :adverb('str with spaces') and :adverb<strsansspaces> - is there a terse form for a str with spaces?
00:28 timotimo no
00:28 timotimo hm.
00:28 timotimo m: say (:foobar/hello how are you/)
00:28 camelia rakudo-moar fdec62: OUTPUT«5===SORRY!5=== Error while compiling /tmp/ZtVYVP5cmq␤Missing required term after infix␤at /tmp/ZtVYVP5cmq:1␤------> 3say (:foobar/hello how are you/7⏏5)␤    expecting any of:␤        prefix␤        term␤»
00:28 timotimo m: say (:foobar<<hello how are you>>).perl
00:28 camelia rakudo-moar fdec62: OUTPUT«:foobar(("hello", "how", "are", "you"))␤»
00:29 timotimo thought so.
00:33 jdv79 no such thing as a positional adverb, right?  like :() or so
00:35 raiph joined #perl6
00:36 BenGoldberg joined #perl6
00:36 timotimo nope
00:38 masak hi -- https://rt.perl.org/Public/Bug/Display.html?id=126827 is currently breaking 007.
00:43 vendethiel jdv79: :adverb<<"str sans spaces">>? :D
00:44 cygx_ 'night o/
00:46 AlexDaniel so, indeed, it seems like DBIish is fully functional if you switch to “use”. I don't think that it makes sense to commit this awful workaround, but at least now I can continue my work…
00:49 Ben_Goldberg joined #perl6
00:49 masak 'night, #perl6
00:50 AlexDaniel In short: 「perl6 -e 'require DBDish::Pg'」 does not work, but 「perl6 -e 'use DBDish::Pg'」 works. No idea why
00:50 AlexDaniel and this happened after curli, I think
00:52 lolisa joined #perl6
00:54 TEttinger joined #perl6
01:00 webstrand joined #perl6
01:21 dalek roast: 42fbf6c | thundergnat++ | S32-num/rounders.t:
01:21 dalek roast: Fix plan I forgot to update last commit. thundergnat--
01:21 dalek roast: review: https://github.com/perl6/roast/commit/42fbf6cd4f
01:33 dalek roast: 6c1ec2d | thundergnat++ | S32-num/narrow.t:
01:33 dalek roast: Add tests for RT #126828
01:33 dalek roast: review: https://github.com/perl6/roast/commit/6c1ec2d490
02:00 rurban joined #perl6
02:00 Zoffix joined #perl6
02:23 dalek ecosystem: 79bb07e | cygx++ | META.list:
02:23 dalek ecosystem: add NQP::Eval
02:23 dalek ecosystem:
02:23 dalek ecosystem: a tiny module that enables EVAL :lang<nqp>
02:23 dalek ecosystem:
02:23 dalek ecosystem: cf https://github.com/cygx/p6-nqp-eval
02:23 dalek ecosystem: review: https://github.com/perl6/ecosystem/commit/79bb07eee0
02:32 mohae joined #perl6
02:34 vendethiel joined #perl6
02:38 Zoffix .tell cygx would be nice to mention in https://github.com/cygx/p6-nqp-eval why one would want to EVAL :lang<nqp>; as opposed to regular EVAL.... at least for outsiders like me to make sense of the module :)
02:38 yoleaux Zoffix: I'll pass your message to cygx.
02:47 kid51 joined #perl6
03:05 skids joined #perl6
03:05 noganex joined #perl6
03:16 kjs_ joined #perl6
03:17 bjz joined #perl6
04:00 sgt_baker joined #perl6
04:01 cxreg never came up with a compelling use for .WHEN, eh?
04:01 yoleaux 15 Nov 2015 12:28Z <bbkr_> cxreg: I'll be back online at 22 UTC today
04:03 molecules joined #perl6
04:07 Guest97065 exit
04:09 pierre-vigier joined #perl6
04:09 grondilu joined #perl6
04:39 molecules joined #perl6
04:40 ChristopherBotto joined #perl6
04:44 ChristopherBotto joined #perl6
04:44 ChristopherBotto m: for "A\nB\nC\nD".lines() -> $x, $y { say "$x, then $y" }
04:44 camelia rakudo-moar fdec62: OUTPUT«A, then B␤C, then D␤»
04:47 ChristopherBotto It's fixed! Yea!
04:48 ChristopherBotto m: my \i = "A\nB\nC\nD".lines.iterator; my @x; (say i.push-exactly(@x, 2)) xx 3
04:48 camelia rakudo-moar fdec62: OUTPUT«2␤2␤␤»
04:49 cheesus joined #perl6
04:50 ChristopherBotto Looks like RT #126270 is fixed
04:50 cheesus e
04:51 mandroit joined #perl6
04:51 ChristopherBotto .tell masak Looks like RT #126270 is fixed
04:51 yoleaux ChristopherBotto: I'll pass your message to masak.
05:23 zengargoyle joined #perl6
05:33 webstrand joined #perl6
05:41 ChristopherBotto joined #perl6
05:44 lolisa joined #perl6
05:44 ChristopherBotto joined #perl6
05:45 Ben_Goldberg joined #perl6
05:45 ChristopherBotto joined #perl6
05:46 Yuki joined #perl6
05:46 Ben_Goldberg joined #perl6
05:46 TimToady_ joined #perl6
05:46 ChristopherBotto joined #perl6
05:46 Guest64768 ok
05:48 Guest64768 quit
05:48 Guest64768 left #perl6
05:48 bjz joined #perl6
05:52 Ben_Goldberg joined #perl6
05:53 Ben_Goldberg joined #perl6
05:56 Ben_Goldberg joined #perl6
06:14 dalek roast: b37b797 | lizmat++ | S03-binding/ro.t:
06:14 dalek roast: Fudge another :== NYI casualty in testing
06:14 dalek roast: review: https://github.com/perl6/roast/commit/b37b797044
06:14 dalek roast: 182fd17 | lizmat++ | S32-num/narrow.t:
06:14 dalek roast: Properly fudge test for RT #126828
06:14 dalek roast: review: https://github.com/perl6/roast/commit/182fd17996
06:25 z8 joined #perl6
06:40 skids m: $*SCHEDULER.cue({42.say}, :every(1), :times(2)); sleep 4 # design docs say you can, was that changed or is this an NYI?
06:40 camelia rakudo-moar fdec62: OUTPUT«Cannot specify :every and :times at the same time␤  in block <unit> at /tmp/qpFljbVUyy:1␤␤»
06:58 ChoHag What symbols are (in)valid for variables, module names, etc.?
07:02 CIAvash joined #perl6
07:10 pierre-vigier joined #perl6
07:25 skids ChoHag: alphas, digits, underscore, hyphen, and ' are valid for many things.  There are some places where ' is not allowed, as ' is in the grammar rule "identifier" but not the rule 'ident'.  Also ":" if you count long (package qualified) names. ' and - cannot be the first char and must be followed by an alpha, not a digit.
07:29 lizmat skids: re .cue, that's NYI, but I think I can actually make that happen now
07:32 skids lizmat: Nice. I'm going through current S17 checking for inconsistencies.  The other one I found so far is Promise.at is NYI.  Haven't gotte to the rough/churny part yet.
07:32 ChoHag Is there any way to create different types of iterator, eg. with an adverb?
07:33 ChoHag $foo.map: ... where $foo is an object which does Iterable.
07:33 ChoHag I tried adding optional options to the iterator method but don't know if that does anything and/or there's any way to get at it.
07:35 lizmat .tell timotimo trying to make 'use trace' more flexible, but: https://gist.github.com/lizmat/639f7ffa428ba1d55861   Any suggestions on fixing the optimizer / emitted code ?
07:35 yoleaux lizmat: I'll pass your message to timotimo.
07:36 skids ChoHag: not entirely clear as to your question.
07:36 lizmat ChoHag: if something is Iterable, it must have an "iterator" method, you can give that any params you want
07:37 ChoHag How are those params set when calling the function (eg. map) which ends up calling the iterator?
07:37 lizmat they're not, but when you call the iterator method yourself, you can set them
07:38 lizmat perhaps you need to use a dynamic variable to change meaning of the iterator method ?
07:38 ChoHag Well I tried that, but then I just the loop just iterates over the iterator rather than what the iterator iterates.
07:39 ChoHag $foo.iterator.map: ...
07:39 ChoHag Hmm.
07:39 ChoHag Well I don't need to do it. Just curious.
07:39 skids ChoHag: If you provide default values those will be used.  Also maybe a parameterized role would let you have myiter[:option(1)] ~~ myiter
07:40 hankache joined #perl6
07:40 hankache computer, messages
07:41 skids m: List.^roles.say # bad puns
07:41 camelia rakudo-moar fdec62: OUTPUT«Method 'iterator' must be implemented by Iterable because it is required by a role␤  in any compose_method_table at gen/moar/m-Metamodel.nqp:2680␤  in any apply at gen/moar/m-Metamodel.nqp:2690␤  in any compose at gen/moar/m-Metamodel.nqp:2826␤  in…»
07:42 gfldex ChoHag: you could .wrap the iterator method
07:42 bjz joined #perl6
07:42 gfldex and then return your own iterator
07:43 skids But .wrap has some runtime penaties and restrictions WRT compile time vs runtime, caveat emptor
07:56 darutoko joined #perl6
08:00 skids o/ sleep time
08:11 kaare_ joined #perl6
08:28 nine mÖ List.^roles>>.name.say
08:28 nine m: List.^roles>>.name.say
08:28 camelia rakudo-moar fdec62: OUTPUT«Method 'name' not found for invocant of class 'Positional'␤  in block <unit> at /tmp/yFhPd4U7Li:1␤␤»
08:28 nine m: List.^roles>>.^name.say
08:28 camelia rakudo-moar fdec62: OUTPUT«List␤»
08:29 nine That's odd
08:29 nine m: say .^name for List.^roles
08:29 camelia rakudo-moar fdec62: OUTPUT«Positional␤Iterable␤»
08:37 pierre-vigier joined #perl6
08:38 _nadim joined #perl6
08:44 domidumont joined #perl6
08:49 domidumont joined #perl6
08:54 nuc joined #perl6
08:58 noam_ joined #perl6
09:00 rurban joined #perl6
09:08 Actualeyes joined #perl6
09:09 dalek rakudo/nom: 2a635cd | lizmat++ | src/core/ThreadPoolScheduler.pm:
09:09 dalek rakudo/nom: Allow for :every *and* :times in SCHEDULER.cue
09:09 dalek rakudo/nom:
09:09 dalek rakudo/nom: skids++ for spotting this omission
09:09 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/2a635cd962
09:18 rindolf joined #perl6
09:19 dalek roast: 9fd62a1 | lizmat++ | S17-scheduler/ (2 files):
09:19 dalek roast: Adapt tests because of 2a635cd96279ace1c5d3d6d687
09:19 dalek roast: review: https://github.com/perl6/roast/commit/9fd62a17c7
09:19 timotimo lizmat: you can try using call with a WVal as the first argument populated by $*W.find_symbol
09:19 yoleaux 07:35Z <lizmat> timotimo: trying to make 'use trace' more flexible, but: https://gist.github.com/lizmat/639f7ffa428ba1d55861   Any suggestions on fixing the optimizer / emitted code ?
09:22 dalek rakudo/nom: cc13049 | (Stefan Seifert)++ | src/Perl6/World.nqp:
09:22 dalek rakudo/nom: Make "no precompilation;" usefull for avoiding automatic precomp
09:22 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/cc130494b1
09:22 dalek Inline-Perl5: 1d62b44 | (Stefan Seifert)++ | / (4 files):
09:22 dalek Inline-Perl5: Prohibit precompilation of Inline::Perl5
09:22 dalek Inline-Perl5:
09:22 dalek Inline-Perl5: While Inline::Perl5 itself is actually precompilation safe, modules that use
09:22 dalek Inline-Perl5: Inline::Perl5 may not be precompiled if they use compile time features like
09:22 dalek Inline-Perl5: use Foo:from<Perl5> which they usually will. The Perl 5 interpreter used by
09:22 dalek Inline-Perl5: Inline::Perl5 represents external state that would not be saved during
09:22 dalek Inline-Perl5: precompilation and would thus be missing when loading a precompiled module that
09:22 dalek Inline-Perl5: depends on it.
09:22 dalek Inline-Perl5: Since we have no way to tell Perl 6 to not precompile reverse dependencies,
09:22 dalek Inline-Perl5: prohibit precompilation of Inline::Perl5 itself.
09:22 dalek Inline-Perl5: review: https://github.com/niner/Inline-Perl5/commit/1d62b44d6c
09:25 zengargoyle joined #perl6
09:28 dalek nqp: 5a5a4eb | (JJ Merelo)++ | README.pod:
09:28 dalek nqp: Adds info on using it
09:28 dalek nqp: review: https://github.com/perl6/nqp/commit/5a5a4eb153
09:28 dalek nqp: 9c3b296 | (JJ Merelo)++ | README.pod:
09:28 dalek nqp: Uses URLs
09:28 dalek nqp: review: https://github.com/perl6/nqp/commit/9c3b296e4a
09:28 dalek nqp: 4247d1f | niner++ | README.pod:
09:28 dalek nqp: Merge pull request #262 from JJ/master
09:28 dalek nqp:
09:28 dalek nqp: Info on using NQP
09:28 dalek nqp: review: https://github.com/perl6/nqp/commit/4247d1f6fd
09:28 dalek roast: e2fcaab | lizmat++ | S17-promise/at.t:
09:28 dalek roast: Add tests for Promise.at
09:28 dalek roast: review: https://github.com/perl6/roast/commit/e2fcaab7c8
09:29 dalek rakudo/nom: 1faeb30 | lizmat++ | src/core/Promise.pm:
09:29 dalek rakudo/nom: Implement Promise.at, skids++ for spotting absence
09:29 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/1faeb30af7
09:29 dalek rakudo/nom: 3172033 | lizmat++ | t/spectest.data:
09:29 dalek rakudo/nom: Run Promise.at tests
09:29 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/31720335a4
09:31 Akagi201 joined #perl6
09:32 dalek doc: faae5ff | lizmat++ | doc/Type/Promise.pod:
09:32 dalek doc: Add documentation for Promise.at
09:32 dalek doc: review: https://github.com/perl6/doc/commit/faae5ff9af
09:34 lizmat afk for a few hours&
09:38 RabidGravy joined #perl6
09:44 haidarian joined #perl6
09:55 gfldex day 13 in the advent calender is scheduled, proofreading is welcome
09:57 [Tux] test             50000    22.841    22.720
09:57 [Tux] test-t           50000    16.469    16.347
09:57 [Tux] csv-parser       50000    25.549    25.428
09:58 lolisa joined #perl6
09:58 Begi joined #perl6
09:58 [Tux] Q: I have a Str with "aaXbbYccXddXeeY" (X and Y being $fh.nl-in)
09:59 [Tux] I want to split that into [ "aaX", "bbY", "ccX", "ddX", "eeY" ]
10:00 [Tux] If Str is "aaXbbYccXddXeeYff" (X and Y still being $fh.nl-in)
10:00 [Tux] I want to split that into [ "aaX", "bbY", "ccX", "ddX", "eeY", "ff" ]
10:00 [Tux] suggestions for best approach?
10:00 Begi2 joined #perl6
10:02 spider-mario joined #perl6
10:02 [Tux] aa, bb, .. ff can be anything, even empty, as long as it does not contain X or Y. ff cannot be empty
10:02 timotimo m: "aaXbbYccXff".split(["X", "Y"]).perl.say
10:02 camelia rakudo-moar 317203: OUTPUT«("aa", "bb", "cc", "ff")␤»
10:03 timotimo m: "aaXbbYccXff".split(["X", "Y"], :kv).perl.say
10:03 camelia rakudo-moar 317203: OUTPUT«("aa", 0, "X", "bb", 1, "Y", "cc", 0, "X", "ff")␤»
10:03 timotimo m: "aaXbbYccXff".split(["X", "Y"], :v).perl.say
10:03 camelia rakudo-moar 317203: OUTPUT«("aa", "X", "bb", "Y", "cc", "X", "ff")␤»
10:03 [Tux] I have played with those already
10:03 timotimo m: "aaXbbYccXff".split(["X", "Y"], :v).rotor(2).perl.say
10:03 camelia rakudo-moar 317203: OUTPUT«(("aa", "X"), ("bb", "Y"), ("cc", "X")).Seq␤»
10:04 [Tux] there is ff gone missing
10:04 timotimo m: "aaXbbYccXff".split(["X", "Y"], :v).rotor(2, :partial).perl.say
10:04 camelia rakudo-moar 317203: OUTPUT«(("aa", "X"), ("bb", "Y"), ("cc", "X"), ("ff",)).Seq␤»
10:04 timotimo i was just looking for the name of the flag :)
10:04 timotimo m: "aaXbbYccXff".split(["X", "Y"], :v).rotor(2, :partial).map(-> $a, $b { $a ~ $b }).perl.say
10:04 camelia rakudo-moar 317203: OUTPUT«("aa Xbb Y", "cc Xff").Seq␤»
10:05 timotimo m: "aaXbbYccXff".split(["X", "Y"], :v).rotor(2, :partial).map(-> $a, $b? { $a ~ $b }).perl.say
10:05 camelia rakudo-moar 317203: OUTPUT«("aa Xbb Y", "cc Xff").Seq␤»
10:05 timotimo oh, wrong
10:05 timotimo m: "aaXbbYccXff".split(["X", "Y"], :v).rotor(2, :partial).map(*.join).perl.say
10:05 camelia rakudo-moar 317203: OUTPUT«("aaX", "bbY", "ccX", "ff").Seq␤»
10:05 [Tux] \o/
10:05 timotimo now that we have something that works, we can find something that looks/performs good, too :P
10:06 [Tux] looks testworthy!
10:06 timotimo (if it performance becomes a concern soon enough. it usually does)
10:06 timotimo rotor may be overkill here
10:06 timotimo m: "aaXbbYccXff".split(["X", "Y"], :v).map(-> $a, $b? {$a ~ ($b // "")}).perl.say
10:06 camelia rakudo-moar 317203: OUTPUT«("aaX", "bbY", "ccX", "ff").Seq␤»
10:06 gfldex use .index and provide your own iterator?
10:10 Begi tadzik (or others) : a website for Bailador would be really great
10:15 [Tux] m: dd "a,b,c\n1,foo,bar\n".split($*IN.nl-in,:v).map(->$a,$b?{$a~($b//"")})
10:15 camelia rakudo-moar 317203: OUTPUT«Seq $var = ("a,b,c\n", "1,foo,bar\n", "").Seq␤»
10:16 [Tux] why is there a trailing ""?
10:18 RabidGravy If anyone happens to be looking at panda today, I'm getting:
10:18 RabidGravy "==> Bootstrapping Panda
10:18 RabidGravy Use of uninitialized value %ENV of type Any in string context
10:18 RabidGravy Any of .^name, .perl, .gist, or .say can stringify undefined things, if needed.  in sub MAIN at bootstrap.pl:64"
10:24 RabidGravy it still seems to work though
10:32 pippo joined #perl6
10:44 azawawi joined #perl6
10:44 azawawi hi #perl6
10:48 [Tux] m: class C { has $!x; method new (Str $s){$!x:=$s;};method close{$!x="Foo";}};my Str$s;C.new($s).close;$s.say;
10:48 camelia rakudo-moar 317203: OUTPUT«Cannot bind attributes in a type object␤  in method new at /tmp/FjOBUMe0h7:1␤  in block <unit> at /tmp/FjOBUMe0h7:1␤␤»
10:48 [Tux] is there some way to do that?
10:49 pippo azawawi: o/
10:50 sno joined #perl6
10:51 vendethiel joined #perl6
10:51 vendethiel o/, #perl6
10:51 [Tux] almost there … :)
10:55 [Tux] can I distinguish between $c.foo("aaa") and my$a="aaa";$c.foo($a);  using multi method foo (Str $s) and multi method foo (Str $s is rw) ?
10:58 Begi I'll use Perl6 on Ubuntu now. I think (and I hope) it will be better than Windows
10:58 moritz [Tux]: with a sufficiently new rakudo, that works
10:59 [Tux] rakudo is only 3 hours old, and I just tested, it works
10:59 * [Tux] raises himself to the next step
10:59 moritz Begi: the majority of developers use some kind of Linux (and many Debian based), so yes, that should help
11:00 bjz joined #perl6
11:00 pierre-vigier joined #perl6
11:01 [Tux] All tests successful.
11:01 [Tux] Files=27, Tests=20977, 49 wallclock secs ( 2.83 usr  0.15 sys + 101.75 cusr  1.99 csys = 106.72 CPU)
11:01 [Tux] Result: PASS
11:01 * [Tux] merges …
11:04 timotimo [Tux]: your new method gets passed a re-containered version of the $s; you may want \s instead
11:05 timotimo oh, "is rw" should also give you that, yeah
11:05 [Tux] just pushed. comments welcome on https://github.com/Tux/CSV/commit/3a0c558c5ab47dcb37e3c4
11:05 bjz joined #perl6
11:06 [Tux] that is enough perl6 success for one day :)
11:06 [Tux] hoelzro, feel free to steal and improve from that commit for your IO::String, so I can remove it from my internals :)
11:08 pippo Any one can explain me what .bless does as in self.bless?
11:09 nine pippo: it creates an object
11:09 spacebat joined #perl6
11:09 nine pippo: bless is the low level part of a constructor
11:10 pippo nine: OK so self is a reference to current object and bless will create an object identical to the one referred to by bless?
11:10 pippo nine: OK so self is a reference to current object and bless will create an object identical to the one referred to by self?
11:11 nine pippo: http://doc.perl6.org/language/classtut#___top
11:11 nine pippo: http://doc.perl6.org/routine/bless
11:11 pippo nine: thank you very much.
11:11 spacebat I'm defining a few functions and tending to use keyword arguments, declaring them and passing them individually is working fine, but how do I collect a bunch of arguments, either all or something like a hash slice of a few keyword args, and pass them on to another function? I've tried variants of @_ to no avail
11:13 spacebat related: how can I determine if an argument was passed or not?
11:16 leont joined #perl6
11:16 moritz spacebat: use *%named for named arguments and *@pos for positional argument, or |c for either
11:17 moritz and passing them on to another function with other(|@pos) or other(|%named) for example
11:17 moritz spacebat: and then you can check with %named<key>:exists if it was passed
11:20 spacebat thanks moritz I'll try that
11:20 spacebat I saw mention of |c but had no clue how that works
11:21 raoulvdberge joined #perl6
11:22 spacebat I'm used to verbosity like (defun foo (&rest args &key bar (baz nil baz-p)) (apply #'qux args))
11:26 moritz m: sub call(&code, |args) { code |args }; call &say, 42
11:26 camelia rakudo-moar 317203: OUTPUT«42␤»
11:27 18WABBFX8 joined #perl6
11:29 spacebat right I get that, thanks :)
11:31 abaugher_ joined #perl6
11:40 dalek ecosystem: 9abe3a1 | (Karl Rune Nilsen)++ | META.list:
11:40 dalek ecosystem: Add Unicode::UTF8-Parser to ecosystem
11:40 dalek ecosystem:
11:40 dalek ecosystem: See https://github.com/krunen/unicode-utf8-parser
11:40 dalek ecosystem: review: https://github.com/perl6/ecosystem/commit/9abe3a1cd1
11:52 pierre-vigier joined #perl6
12:13 pierre-vigier joined #perl6
12:16 gfldex if i would want to read the implemenation of bless, where would i need to look?
12:19 timotimo probably in Mu.pm
12:19 grondilu Mu.pm
12:19 * grondilu ran grep -r ' bless(' * in src/core
12:19 timotimo https://github.com/rakudo/rakudo/blob/nom/src/core/Mu.pm#L108
12:19 timotimo directly below that is "BUILDALL" which is what gets called on the created object
12:20 gfldex thanks
12:32 nebuchadnezzar joined #perl6
12:43 masak hi, #perl6
12:43 yoleaux 04:51Z <ChristopherBotto> masak: Looks like RT #126270 is fixed
12:44 masak you can thank Travis for digging up the bug in https://rt.perl.org/Public/Bug/Display.html?id=126827
12:44 masak things worked locally for me, since I hadn't updated rakudo for ages.
12:44 masak but they failed in Travis.
12:44 kjs_ joined #perl6
12:45 z8 joined #perl6
12:46 masak yeah, I was running fdd236 from 2015-11-18.
12:46 masak :)
12:47 masak back in 2009 in my second Perl 6 talk ever, I came up with this analogy of the ecosystem being a test-bed for Rakudo regressions.
12:48 masak and not just as a static thing, but when you do refactors and renamings and restructurings of various kinds, passing from (it is hoped) one state to an equivalent one.
12:48 masak that's exactly what happened in this case.
12:49 masak the offending commit in 007 was https://github.com/masak/007/commit/492fad95d0dd3e8c34eb7e46f526cdbc7ecae8e3, a very trivial rename. it un-earthed the rakudobug.
12:49 masak (so glad I did `git add -p` and extracted it from the commit after it -- that sure paid off when reverting!)
12:51 masak I feel like blogging about this :)
12:51 masak (about how refactors unearth regressions)
12:52 spacebat still struggling a bit to pass a hash slice to a function: tried f(|%h<a b>) f(|%h<a b>:kv) f(|%h<a b>:p) but in each case f is complaining that I'm passing positionals
12:52 spacebat f(|%h) doesn't work because %h has a few extra keys that f isn't expecting
12:55 cognominal joined #perl6
12:55 kid51 joined #perl6
12:55 masak spacebat: a hash slice is a list
12:55 masak spacebat: that's your problem
12:55 masak let me code up a solution
12:56 spacebat yeah, I also tried &f.apply(...stuff) but apply isn't a method
12:56 spacebat could be lisp braindamage :)
12:56 timotimo is the precedence of | there right?
12:56 spacebat I tried f(|(%h<a b>:kv)) to no avail
12:57 moritz you need |%(...)
12:57 timotimo m: sub foo(*%kw) { say %kw.perl }; my %h = :1a, :2b, :3c; foo(|%(%h<a b>:kv)
12:57 camelia rakudo-moar 317203: OUTPUT«5===SORRY!5=== Error while compiling /tmp/ruHkUO7v6e␤Unable to parse expression in argument list; couldn't find final ')' ␤at /tmp/ruHkUO7v6e:1␤------> 3y %h = :1a, :2b, :3c; foo(|%(%h<a b>:kv)7⏏5<EOL>␤»
12:57 spacebat ah
12:57 timotimo m: sub foo(*%kw) { say %kw.perl }; my %h = :1a, :2b, :3c; foo(|%(%h<a b>:kv))
12:57 camelia rakudo-moar 317203: OUTPUT«{:a(1), :b(2)}␤»
12:57 timotimo ^- here's a working example
12:57 spacebat thanks
12:58 masak m: sub f(:$foo, :$bar) { say "$foo $bar" }; my %h = :foo<OH>, :bar<HAI>, :!baz; f(|%(%h<foo bar>:kv))
12:58 camelia rakudo-moar 317203: OUTPUT«OH HAI␤»
12:58 masak ah, timotimo++ beat me to it
12:58 spacebat moritz set me on the path and you've shown me further along, thanks
12:58 spacebat so .apply and .call don't exist because with these syntactical options, there is no need
12:59 RabidGravy joined #perl6
13:00 moritz correct
13:01 masak that's a nice way to view it, yes :)
13:02 timotimo moritz: :)
13:02 timotimo er, masak :)
13:03 spacebat f(|%(%h<a b>:kv)) is a little dense, either I'll get used to it or find a slicker idiom in time
13:03 Skarsnik joined #perl6
13:03 timotimo m: sub foo(*%kw) { say %kw.perl }; my %h = :1a, :2b, :3c; foo(|%%h<a b>:kv)
13:03 camelia rakudo-moar 317203: OUTPUT«Too many positionals passed; expected 0 arguments but got 2␤  in sub foo at /tmp/9t_f78fzzE:1␤  in block <unit> at /tmp/9t_f78fzzE:1␤␤»
13:04 timotimo :<
13:06 gfldex m: my Capture $c.=new(list=>(1,2,3),hash=>{a=>4,b=>5}); sub foo(*@a, *%h){dd @a, %h}; foo(|$c);
13:06 camelia rakudo-moar 317203: OUTPUT«Array $var = $[1, 2, 3]␤Hash $var = ${:a(4), :b(5)}␤»
13:06 gfldex spacebat: you can also construct the capture by hand ^^^
13:07 spacebat right, I'll look into captures
13:07 spacebat I guess that's what the c in |c means
13:10 stmuk https://www.serveraptor.com/ might be interesting for anyone wanting to try rakudo on obscure OSes
13:10 stmuk anyone for Minix? :)
13:14 Skarsnik not even GNU/Hurd
13:16 stmuk sadly Hurd is 32 bit only
13:16 Zoffix joined #perl6
13:16 isBEKaml joined #perl6
13:19 Skarsnik *download debian/hurd*
13:19 Skarsnik I am curious now x)
13:30 molaf joined #perl6
13:35 abaugher_ joined #perl6
13:37 xpen joined #perl6
13:41 El_Che I just read jnthn's latest blogpost: https://6guts.wordpress.com/2015/12/05/getting-closer-to-christmas/ . Now that supply got an overhaul, what's the fundamental difference between $supply.tab + $supplier.emit and $channel.poll + $channel.send?
13:41 moritz_ joined #perl6
13:41 luis` joined #perl6
13:41 jantore_ joined #perl6
13:41 arnsholt_ joined #perl6
13:41 El_Che jnthn: there is a copy paste typo in the code example in your blogpost
13:41 advwp joined #perl6
13:41 obra_ joined #perl6
13:41 ashleydev joined #perl6
13:41 chewie_2082 joined #perl6
13:42 _sri joined #perl6
13:42 Util joined #perl6
13:42 dbohdan_ joined #perl6
13:42 sjn__ joined #perl6
13:43 go|dfish joined #perl6
13:44 lucasb joined #perl6
13:44 [ptc] joined #perl6
13:45 vendethiel joined #perl6
13:45 sftp joined #perl6
13:45 El_Che is it about a sigle vs multiple readers of the same data?
13:45 timotimo with a supply, you immediately force the tappers to react
13:46 timotimo with a channel, you're free to read at your leisure
13:47 revdiablo joined #perl6
13:47 b2gills joined #perl6
13:47 M-eternaleye joined #perl6
13:48 lucasb a tiny typo slipped in the last ecosystem META.list commit
13:48 timotimo oh
13:49 timotimo githubuksercontent; that's novel
13:49 El_Che in my code I used a channel in order to read a huge ldif file (ldap db dump) while converting the lines into a datastructure by polling the channel. That seemed very natural to me. I was looking at the docs to see if that a typical way to do things on perl6. (I had a look at promisses, but it does not apply on that context)
13:50 dalek ecosystem: c29a2f2 | timo++ | META.list:
13:50 dalek ecosystem: fix tiny typo; lucasb++
13:50 dalek ecosystem: review: https://github.com/perl6/ecosystem/commit/c29a2f207d
13:50 lucasb timotimo++ :)
13:50 M-Illandan joined #perl6
13:54 tony-o joined #perl6
13:55 kjs_ joined #perl6
13:56 isacloud joined #perl6
13:57 ilmari joined #perl6
14:08 hankache is anyone interested in translating http://perl6intro.com to their native language?
14:08 hankache we already started a French translation
14:08 RabidGravy nine++ # that %?RESOURCES thing so works
14:08 nine Yeah :)
14:09 xdbr joined #perl6
14:09 timotimo <3
14:09 spacebat joined #perl6
14:09 RabidGravy also it works with  sub-paths in the resources directory which is really cool
14:09 nine We just have to find a nice way to make it platform independent. Having a hard coded p5helper.so in META.info doesn't help all that much on Windows
14:09 nine RabidGravy: really? I already implemented that?
14:10 RabidGravy either that or it works by accident ;-)
14:10 Zoffix m: my $var’one = 42; say $var’one
14:10 camelia rakudo-moar 317203: OUTPUT«5===SORRY!5=== Error while compiling /tmp/VRTFkyapZ_␤Bogus postfix␤at /tmp/VRTFkyapZ_:1␤------> 3my $var7⏏5’one = 42; say $var’one␤    expecting any of:␤        constraint␤        infix␤        infix stopper␤        postfix␤…»
14:10 RabidGravy i.e. I have "resources" : [ "lib/utmphelper.so"] here and it seems to work fine
14:11 hankache anyone here is native German or Chinese speaker?
14:11 nine hankache: native German speaker here
14:11 hankache hi nine
14:11 RabidGravy hankache, I can translate to "South East London" if you want ;-)
14:12 nine m: say "/tmp".IO.child("foo/bar").abspath
14:12 camelia rakudo-moar 317203: OUTPUT«/tmp/foo/bar␤»
14:12 nine RabidGravy: ah, that's the reason ^^^
14:12 hankache RabidGravy :) does that include words like "blimey"
14:12 RabidGravy Nah, that's more "hollywood cockney" ;-)
14:13 RabidGravy innit
14:13 Zoffix Weird
14:13 nine RabidGravy: specs want %?RESOURCES<foo><bar><baz> to work for accessing subdirectories, too
14:14 hankache nine i was looking at perl6intro.com traffic and noticed that after English, Chinese and German are the most used languages of people who visited
14:14 SmokeMachine__ joined #perl6
14:14 Zoffix hankache, in section "1.7.1. Identifiers", "var’one" shows up with an incorrect apostrophe. But when I went to make a PR, in the source, it actually *is* correct.
14:14 hankache I was wondering if anyone would like to translate to those two
14:15 hankache Zoffix it's a rendering issue
14:15 Zoffix .u ’
14:15 yoleaux U+2019 RIGHT SINGLE QUOTATION MARK [Pf] (’)
14:15 Zoffix .u '
14:15 yoleaux U+0027 APOSTROPHE [Po] (')
14:16 hankache i guess
14:17 hankache asciidoctor
14:17 hankache is getting lost when it comes to apostrophes and single quotation marks
14:18 hankache we already started a French translation with the guys at #perlfr
14:19 [ptc] joined #perl6
14:19 masak nine: hi! :D
14:19 espadrine joined #perl6
14:20 nine hi masak ;)
14:20 RabidGravy nine, I suspect that in the fullness of time the dynamic libraries should be in their own thing to handle the different names for different platforms, plus being able to enumerate required dynamic libraries (not just locally created ones) will help downstream packagers *and* help a more clever installer that might offer to install 3rd party libraries for you
14:20 masak nine: guess you saw https://rt.perl.org/Public/Bug/Display.html?id=126827
14:21 masak nine: I'm investigating it now. will add to the ticket when I know more.
14:21 AlexDaniel joined #perl6
14:22 ChoHag What's the significance of the $ in $[1,2,3] or $(1,2,3)?
14:23 masak ChoHag: "item, not list"
14:23 nine masak: haven't seen that yet. I'm mostly afk this weekend.
14:24 masak got it.
14:24 sftp joined #perl6
14:24 vendethiel joined #perl6
14:24 masak don't let me inconvenience you, then :) I'll just try to do as much of the investigation work as possible for when you get back
14:24 ChoHag So what's the difference between {:a($(1,2,3))}, {:a($[1,2,3])} and {:a([1,2,3])}?
14:24 jnthn El_Che: Channels are used when you want to pass work between different threads, like if you're setting up producer/consumer things. Supplies are for when you want to have a chain of operations that will be performed on the triggering thread, as far as is possible.
14:25 masak jnthn: "channels are for communication, supplies are for observers" -- is that a fair description?
14:25 nine masak: if 87288285f6f398ec7cba0900312ced4b580d79ed is to blame, it may just be an older precompilation issue that surfaced because we precompile everything that's too slow to run away now...
14:25 jnthn Yes, something like
14:26 samb1 joined #perl6
14:27 nine masak: to find that out, it would help if you could test with a version before 3b943782768260d4422933f4e2e71be40429c570 with manual precompilation
14:29 masak how do I do manual precompilation?
14:30 virtualsue joined #perl6
14:31 El_Che jnthn: thx
14:32 El_Che jnthn: typo in you blogpost, last line in the supply example
14:32 jnthn why?
14:33 jnthn Where? :)
14:33 nine masak: perl6 --target=mbc -o Foo.moarvm Foo.pm
14:33 * jnthn is looking at can't see a typo :)
14:33 Zoffix Huh? Cannot find method 'run_alt' in method paste at /home/[..blah..]/lib/Pastebin/Gist.pm6:31 , but there's no run_alt method on that line: https://github.com/zoffixznet/perl6-Pastebin-Gist/blob/master/lib/Pastebin/Gist.pm6#L31
14:34 El_Che jnthn: ctrl + f -> $supplier.emit('oh$supplier.emit('hai
14:34 masak nine: do I need to put the Foo.moarvm anywhere in particular for it to be picked up?
14:34 jnthn El_Che: Finds nothing
14:35 jnthn It's two lines...
14:35 jnthn $supplier.emit('oh');
14:35 jnthn $supplier.emit('hai');
14:35 grondilu last time I tried to precompile something, I got:
14:35 grondilu perl6 --target=mbc -o Foo.moarvm Foo.pm
14:35 grondilu sorry
14:36 grondilu ===SORRY!===
14:36 grondilu Cannot dump this object; no dump method
14:36 jnthn It's --output= not -o
14:36 El_Che I get this:
14:36 El_Che # Emit on it
14:36 El_Che $supplier.emit('oh$supplier.emit('hai
14:36 El_Che let me try an other browser
14:37 Skarsnik Zoffix, H::UA has the same one :)
14:37 nine masak: the old implementation just looked alongside the .pm6 file
14:37 Zoffix Skarsnik, seems like an issue with panda. If I clone the repo and run the tests, it works fine
14:38 Zoffix Skarsnik, or maybe precomp stuff... For some reason I don't got lib/.precomp dir right now when I ran tests and they passed
14:38 jnthn El_Che: Odd...reading it on my blog itself, or some aggregator?
14:38 Skarsnik blame precomp stuff? x
14:38 Zoffix Skarsnik, well, it's one of the variables I see different between the failing and passing modes :)
14:39 jnthn Looks fine for me on pl6anet too though
14:40 masak nine: got it -- will try.
14:40 grondilu FYI -o is listed as a possibility in perl6 --help
14:40 El_Che jnthn: strange. The html code shows 2 lines.
14:40 Zoffix jnthn, when did it end up on pl6anet? For some reason the list on perl6.org hasn't updated yet :/
14:41 El_Che jnthn: on FF and Chrome on win8.1 shows one line
14:41 El_Che maybe this pc (not mine)
14:41 Zoffix Looks fine on mine
14:41 jnthn Zoffix: Dunno, I only looked there just now to see if that was to blame
14:42 jnthn El_Che: OK. Well, I've about zero interest in hunting browser rendering bugs... :)
14:43 Zoffix Skarsnik, weird. Doing panda install . in a cloned repo worked :S
14:44 RabidGravy tadzik, you about it
14:45 RabidGravy er, about?
14:45 RabidGravy (losing control of my fingers here.)
14:45 El_Che jnthn: http://claudio.ulyssis.be/6guts.png
14:46 El_Che weird that FF and Chrome both have the same output
14:48 rurban joined #perl6
14:48 masak $ perl6 --target=mbc -o B.moarvm B.pm
14:48 masak ===SORRY!===
14:48 masak Cannot dump this object; no dump method
14:48 timotimo maybe -o is broken
14:48 masak grondilu: I just got exactly the same message!
14:48 timotimo try the full name?
14:48 masak ok.
14:49 masak ...nope. no luck.
14:49 timotimo :<
14:49 masak ok, unless a miracle appears, I am unable to test nine's hypothesis.
14:49 masak it's not related to -o
14:50 masak I get it even without the -o option
14:50 timotimo huh!
14:50 timotimo well, without the -o option, --target=mbc being broken is known
14:50 Akagi201 joined #perl6
14:52 masak seems the brokenness has been unified to include the -o option, then... :)
14:53 jnthn El_Che: Indeed; especially as it looks fine for me in Chrome also
14:53 jnthn masak: It's --output=Foo.pm.moarvm, not -o
14:53 jnthn I didn't even know we had a -o option
14:54 jnthn El_Che: Plus I'm on Windows also, though 7
14:54 * jnthn saw other pepole using 8 and decided "never" :)
14:55 El_Che I'll check later on my linux machine.
14:55 masak jnthn: I went looking for the -o option in source, and didn't find one. so maybe we don't have one :P
14:56 jnthn -o noes...
14:56 masak good news! it works on the commit before, with manual precompilation \o/
14:56 masak so it's *not* an ancient error surfacing only now
14:57 timotimo good!
14:57 Zoffix ShimmerFairy, has that bug been reported? The Cannot find method 'run_alt' you say also happens in H::UA?
14:58 ShimmerFairy ?
14:58 Zoffix Sorry
14:58 Zoffix Skarsnik, has that bug been reported? The Cannot find method 'run_alt' you say also happens in H::UA?
14:58 masak which means I should keep investigating 8728828...
14:58 * masak .oo( S<tab>, has that bug been reported? )
14:58 Zoffix It was Sh<tab> because I have really fat fingers :P
14:59 nine masak: why is that good news? Now I have to fix it ;)
14:59 El_Che is the .nl method suppose to change: http://doc.perl6.org/type/IO#Newline_options. Supplying nl => '\n\n' does not work, while giving it random chars (e.g. 'a' does work).
14:59 Skarsnik I assume it was related to other bug like this (like find_method in DBIis), so I did not repport it
14:59 El_Che in the rakudo changelog I see this:  + New IO::Handle.nl-in now allows multiple line-endings to be set
14:59 El_Che would it mean that that would fix my problem?
15:00 masak nine: hm. I may have spoken too soon.
15:00 El_Che (I am parsing ldif, separated by an empty line)
15:00 masak nine: I just went one commit back, not to before 3b943782
15:00 masak nine: trying from that one.
15:03 Zoffix Seems it's comming from ./nqp/src/QRegex/Cursor.nqp or ./nqp/src/QRegex/NFA.nqp
15:03 Zoffix grepped panda/Moar/nqp/rakudo and that's the only place I see run_alt method
15:04 cognominal is it possible to invite camelia on a irc.perl.org channel ? how ?
15:05 masak nine: ok, now it's conclusive. building off 3b943782^, with modules precompiled, everything works fine.
15:05 * masak adds this to the ticket
15:05 Skarsnik cognominal, just add a conf entry on p6evalbot I think
15:06 DrForr Hurr. The '>>' in '@<foo>>>.ast' isn't documented as an operator...
15:06 DrForr At least that I can see.
15:07 DrForr I'm trying to figure out where a seemingly extraneous comma is coming in when I generate an array in a grammar.
15:09 pdcawley joined #perl6
15:09 znpy joined #perl6
15:12 nine masak: I still doubt it's actually 8728828 that's to blame. Between 3b943782 and 8728828 there's a lot of refactoring, especially some changes touching the handling of global merging. Might be a good idea to bisect that (with manual precompilation in every step)
15:12 ChoHag How can I modify va;ues of a list in a for loop looping over that list/
15:13 masak nine: ok, understood.
15:13 Zoffix cognominal, which channel?
15:13 masak nine: will do.
15:13 nine masak++
15:14 geekosaur ChoHag, <->?
15:14 geekosaur in place of ->
15:15 khw joined #perl6
15:16 ChoHag That does it.
15:17 Zoffix cognominal, just add the channel here and restart the bot: https://github.com/perl6/evalbot/blob/master/irc.perl.org.conf#L2
15:18 JimmyZ jnthn: I told you too, I saw: $supplier.emit('oh$supplier.emit('hai :P
15:18 JimmyZ don't know why
15:19 JimmyZ jnthn: not only ff, chrome, aslo IE
15:19 hankache Zoffix i think cognominal wants to add it to #perlfr
15:20 ilmari joined #perl6
15:21 mohae joined #perl6
15:24 dalek evalbot: 45d27f7 | (Zoffix Znet)++ | irc.perl.org.conf:
15:24 dalek evalbot: Add a couple more channels on irc.perl.org
15:24 dalek evalbot: review: https://github.com/perl6/evalbot/commit/45d27f7529
15:25 Zoffix hankache, well, I added it to config but I don't have access to pull the update and restart camelia :)
15:25 hankache Zoffix whos has?
15:26 Zoffix hankache, I bet nine does, since it runs off their account :P
15:27 cognominal thx
15:27 Zoffix hankache, oh wait, I might know how to do it
15:27 hankache Zoffix++
15:28 hoelzro [Tux]: sure, I'll incorporate that, as soon as I get panda-build&panda-test working =/
15:28 camelia joined #perl6
15:30 Zoffix hm, I may also have broken it :P The irc.perl.org version is taking forever to come back on
15:30 arnsholt_ nine: Should I just go ahead and merge the precomp branch, or do are there more tihngs I can do to test it a bit more?
15:31 arnsholt nine: Incidentally, I think I see more or less how to implement "no precompilation" with the new single-process implementation
15:31 hankache Zoffix: is it working?
15:32 hankache m: say 1
15:32 camelia rakudo-moar 317203: OUTPUT«1␤»
15:32 hankache it is working here
15:32 Zoffix hankache, nope, it's gone awol
15:32 Zoffix hankache, it's p6eval on irc.perl6.org and it did not come back after I told it to pull and restart :(
15:33 nine arnsholt: yes, within the single-process we can just catch the X::Pragma::CannotPrecomp exception :)
15:34 Zoffix nine, I think I broke the irc.perl6.org version of the eval bot :)
15:34 hankache nine can you help Zoffix please. He is trying to help us add camelia to ~perlfr on irc.perl.org
15:34 hankache #perlfr
15:34 nine arnsholt: if you think everything works, I'd just go ahead and merge.
15:34 Zoffix nine, I added two more channels in the config file in the commit above, told it to pull, then to restart and it never came back
15:35 nine Sorry, have to leave again :( Kitchen duty
15:35 Zoffix No problem
15:38 awwaiid Is there a builtin thing to print out the tree of matches form a grammar?
15:38 awwaiid pretty-print
15:39 flussenc1 joined #perl6
15:39 moritz_ awwaiid: say $/
15:40 Zoffix It's also Grammar::Debugger and Grammar::Tracer in the ecosystem that make it easier to debug grammars
15:40 DrForr I'm stil grumbling over a GLR change here...
15:42 awwaiid yeah, I was just starting to play with Grammar::Tracer, very nice
15:42 DrForr Changing '$/<foo>>>.ast' to '@<foo>>>.ast' returns the correct data but adds a redundant comma (or maybe nil element) at the end of the data structures.
15:43 arnsholt nine: Yeah, that's pretty much what I was thinking for no precompilation. Some work has to be done to track the things that re implicitly no precomp by depending on a no precomp module, but that's mostly bookkeeping I think
15:43 * arnsholt goes to merge
15:44 arnsholt Bah. Conflicts.
15:45 csd_ left #perl6
15:45 csd_ joined #perl6
15:45 csd_ left #perl6
15:45 csd_ joined #perl6
15:46 spider-mario joined #perl6
15:47 koo8 joined #perl6
15:48 masak nine: the results are in. a bisect of 3b943782^..87288285f, with precompilation at every step, turned up 87288285f as the first bad commit.
15:55 Zoffix m: grammar G { token TOP { [<foo>\s*]+ }; token foo { \w+};}; class GA { method TOP ($/) { $/.make: @<foo>>>.ast }; method foo ($/) { $/.make: ~$/} }; say G.parse("foo bar baz", :actions(GA)).made
15:55 camelia rakudo-moar 317203: OUTPUT«[foo bar baz]␤»
15:55 Zoffix m: grammar G { token TOP { [<foo>\s*]+ }; token foo { \w+};}; class GA { method TOP ($/) { $/.make: $/<foo>>>.ast }; method foo ($/) { $/.make: ~$/} }; say G.parse("foo bar baz", :actions(GA)).made
15:55 camelia rakudo-moar 317203: OUTPUT«[foo bar baz]␤»
15:55 Zoffix ¯\_(ツ)_/¯
15:55 flussence joined #perl6
16:00 cognominal after compiling rakudo and installing panda, I get Could not find Shell::Command:ver<True>:auth<True>:api<True> in... when doing  panda install Task::Star
16:00 cognominal probably need an incantation to tell rakudo where panda stuff is :(
16:00 Zoffix cognominal, to resolve that, a lot of people had good fortune with nuking ~/.rakudobrew and ~/.perl6 and installing all the stuff from scratch
16:01 cognominal ok
16:01 hankache yup nuke ~/.rakudobrew and ~/.perl6 and start from scratch
16:01 hankache i had the same issue yesterday
16:01 cognominal zoffix++ hankache++
16:02 hankache see you later everyone
16:02 Zoffix \o
16:03 awwaiid I'm trying to make a whitespace-indent data file parser (like a YAML), and am trying to pass the current "indent" to a token as a parameter, but something isn't quite right. https://gist.github.com/awwaiid/e5bdc58ce76866cc8ba3 has my current code, including some debugging. This isn't important (just playing), but any pointers are appreciated
16:04 awwaiid someone asked me if I knew of some parsers that can parse the offsides rule, and I want to give them an example :)
16:04 moritz_ awwaiid: I think tracking the indention in a dynamic variable would work better
16:04 awwaiid moritz_: great! how do I do that?
16:04 moritz_ :my $*IDENT = 4;
16:05 moritz_ I'm pretty sure we have examples for that in the ecosystem
16:05 awwaiid they get to "define" their indent just by indenting more. so like :my $*INDENT = $<current-indent> maybe?
16:05 awwaiid I noticed that the YAML impls in echosystem are generators, not parsers
16:06 hoelzro for CompUnit::Repository::Installation.files, what do $file and $name each represent?
16:07 moritz_ awwaiid: arnsholt has an unfinished python implementation named 'snake'. Might be worth checking how it parses
16:07 moritz_ (it's NQP, but the grammars don't differ so much)
16:07 awwaiid thanks moritz_
16:07 kjs_ joined #perl6
16:07 hoelzro I ask because the panda-test wrapper installed into my $PATH uses .files('panda-test') with no $name, and .files seems to me like it could never work without a provided $name
16:08 arnsholt awwaiid: It's not *too* hard
16:08 arnsholt Some fiddly bits, but nothing brainmeltingly hard
16:08 awwaiid ya, reading the Grammar of it now
16:09 arnsholt And to be fair, I stole large bits of the structure in snake from pmichaud++'s and alison++'s earlier pynie project
16:11 awwaiid this has an interesting explicit stack of indent levels. I think I'll continue exploring letting the grammar manage that for a bit before I switch to that.
16:11 hoelzro nine: would you mind answering a quick question I have about CURLI?
16:11 hoelzro I'm trying to get panda-build&panda-test working again
16:12 znpy joined #perl6
16:17 ab5tract joined #perl6
16:19 ugexe probably not a point to panda build, as the files will be precomped into their own location once you `use` them
16:19 nine hoelzro: shoot
16:19 hoelzro nine: in CURLI.files, what do $file and $name each represent?
16:20 hoelzro it looks to me like files will always fail if $name is Any
16:20 hoelzro and I'm trying to figure out why panda-test's wrapper uses .files('panda-test')
16:21 nine masak: ok, thanks for your hard work! Though the results are surprising, we can at least be sure now.
16:29 nine hoelzro: I don't see a reason for panda to use .files at all. Also .files doesn't really have a place in the new design (yet). I just patched it up a little to keep panda working.
16:29 hoelzro I don't think panda uses it directly; it looks like CURLI installs wrappers that invoke .files
16:30 ugexe originally it served as a way to navigate/access the files by their original names after CURLI changed their filenames to $number
16:30 [Coke] We took a snapshot of anyone whose contributed up through about a week ago. I need to remember to go through recent pull requests for more names for December.
16:31 nine hoelzro: oh, that could very well be. I wonder if we can replace that by %?RESOURCES now
16:31 hoelzro oh, %?RESOURCES is YI now?
16:32 nine hoelzro: yes, since yesterday :)
16:32 hoelzro \o/
16:33 ugexe originally file navigation was supposed to be handled by Distribution, so even if you had a Tar file your Distribution::Tar could still .content(<files bin/script>) without having to expand everything to the file system
16:33 Zoffix We need to do some sort of a "call to Perl 6 module authors" (maybe a blog post somewhere prominent)? I can barely install a distro without it or its dependencies having some sort of fatal issues, and worse still, many of those actually have PRs waiting with the fix. Like this one: https://github.com/dnmfarrell/URI-Encode/pull/10
16:34 Zoffix And that breaks 3 of my modules
16:34 Zoffix -_-
16:34 Zoffix oh.. the "call" would be to check for PRs and merge stuff (and fix any issues if they can)
16:35 dalek rakudo/nom: 104623a | arnsholt++ | src/core/ (5 files):
16:35 dalek rakudo/nom: Initial sketch of precompilation in a single process.
16:35 dalek rakudo/nom:
16:35 dalek rakudo/nom: Unfortunately this doesn't quite work yet, as a circular dependency chain is
16:35 dalek rakudo/nom: falsely detected when precompiling the NativeCall libraries.
16:35 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/104623a21a
16:35 dalek rakudo/nom: 299adc5 | arnsholt++ | src/core/CompUnit (2 files):
16:35 arnsholt Oh well. He ded
16:35 arnsholt nine: Merged!
16:36 dalek joined #perl6
16:37 [ptc] joined #perl6
16:37 Zoffix GAH! "Cannot find method 'run_alt'" again.. now in another dist
16:37 * Zoffix reaches for Acme::GiveUp
16:38 JimmyZ arnsholt: 'use nqp;' , I think it is not needed there
16:39 flussence jnthn: just so you don't start thinking you're crazy: that blog post looks fine on all my browsers, and I have some pretty weird ones installed at that
16:41 grondilu wow I was curious about v5 so I ran 'panda install v5'.  That was somthing like half an hour ago.  Still running :/
16:42 grondilu (yeah 31min according to htop)
16:43 ugexe i put bitcoin miners in all my modules
16:44 grondilu lol
16:45 Zoffix Well, I logged it. It may or may not be related to precomp stuff, so *pokes nine *: https://rt.perl.org/Ticket/Display.html?id=126832
16:47 Juerd jnthn: No, rejecting the tau PR does not result in an extra module because someone already has a Math::Tau in the ecosystem :)
16:47 ugexe he just added a way to turn off precomp so manybe you can test Zoffix
16:47 grondilu though I should probably mention that it started with a warning (or error?) message:
16:47 grondilu ==> Fetching v5
16:47 grondilu Any of .^name, .perl, .gist, or .say can stringify undefined things, if needed.  in sub git-fetch at /usr/local/share/perl6/site/sources/CC8B1AB096E45379F3094E892E5F3C293A6BD26D:46
16:47 grondilu Use of uninitialized value %ENV of type Any in string context
16:47 luis joined #perl6
16:47 ugexe i wonder if it does a temp %*ENV
16:48 ugexe m: say %*ENV.keys; { temp %*ENV; %*ENV<a> = 1; say %*ENV.keys; } say %*ENV.keys
16:48 camelia rakudo-moar 317203: OUTPUT«5===SORRY!5=== Error while compiling /tmp/07ZL_7lZy9␤Strange text after block (missing semicolon or comma?)␤at /tmp/07ZL_7lZy9:1␤------> 3p %*ENV; %*ENV<a> = 1; say %*ENV.keys; }7⏏5 say %*ENV.keys␤    expecting any of:␤        infix␤ …»
16:48 ugexe m: say %*ENV.keys; { temp %*ENV; %*ENV<a> = 1; say %*ENV.keys; }; say %*ENV.keys
16:48 camelia rakudo-moar 317203: OUTPUT«(RAKUDO_NO_DEPRECATIONS PERLBREW_VERSION PERLBREW_PERL LANG LC_CTYPE SHELL PERL5LIB SHLVL PERLBREW_PATH PWD PERLBREW_HOME HOME MANPATH USER PERLBREW_ROOT PERLBREW_BASHRC_VERSION _ PERLBREW_MANPATH PATH LOGNAME)␤(RAKUDO_NO_DEPRECATIONS a PERLBREW_VERSION …»
16:48 ugexe m: say %*ENV.keys.elems; { temp %*ENV; %*ENV<a> = 1; say %*ENV.keys.elems; }; say %*ENV.keys.elems
16:48 camelia rakudo-moar 317203: OUTPUT«20␤21␤20␤»
16:48 arnsholt JimmyZ: In PrecompilationRepository.pm? Yeah, it is needed. There's a call to nqp::getcomp
16:48 ugexe cool maybe that is fixed
16:50 awwaiid moritz_: arnsholt: I made some progress https://gist.github.com/awwaiid/d3ca4a4d4d895d696f51 -- still some weirdness, but now the current-indent is being tracked via params on tokens
16:51 awwaiid notice the input uses many spaces and the output is normalized to 2 space indent
16:52 awwaiid lunch time!
16:52 ugexe a flag for turning off precomp for non-core stuff might be handy for testing if something is busted because of precomp
16:52 ugexe -M"no precomp" wouldnt exactly work
16:53 arnsholt awwaiid: Cool! I can't remember the exact edge-cases I debugged in Snake, but if you git log the Grammar file you might get some pointers
16:54 JimmyZ arnsholt: Isn't it free to use nqp:xxxx in core setting?
16:54 flussence Zoffix: now that we've got proper :auth support, maybe we ought to start using perl6-community-modules more liberally in situations like that
16:55 lucasb JimmyZ, arnsholt: yes, I thought core didn't need 'use nqp'
16:55 Zoffix flussence, not sure what you mean... what situations?
16:56 flussence broken modules high up the ecosystem chain
16:56 arnsholt IIRC it triggered a warning during compilation, so I added it. Feel free to experiment with removing it =)
16:57 Skarsnik Zoffix, does the META file has author contact?
16:57 Zoffix flussence, still not following you.. It's a module by some author... Is there a community module alternative for URI encoding?
16:57 Zoffix Skarsnik, no
16:57 Skarsnik it should?
16:58 Skarsnik but github send a mail when someone add a pr x)
16:58 flussence Zoffix: https://github.com/perl6-community-modules is where we fork stuff when upstream is non-responsive and it needs to be fixed
16:59 Zoffix flussence, ah, wasn't aware of that
16:59 Zoffix I ping URI::Econding author on that PR.. hopefully they'll notice
16:59 Zoffix s/ping/pinged/
17:03 csd_ joined #perl6
17:06 rurban joined #perl6
17:08 skids joined #perl6
17:13 DrForr Hidey-ho there, grammar/GLR question in regards to https://gist.github.com/drforr/f270ca6c14422033b660
17:13 flussence joined #perl6
17:13 vendethiel joined #perl6
17:13 DrForr It's probably purely aesthetic, but I'd like to remove the trailing comma on the second-to-last line.
17:14 moritz_ DrForr: try ${ ID => "12" }
17:14 DrForr Will do.
17:16 DrForr That works. The next question is why - I'm guessing that the foo => 'bar' is a Pair and ${} does something to linearize it, but why?
17:17 DrForr Seeing as with any luck I get to explain this little bit of trivia to a crowd of ~100 people in a few weeks...
17:18 RabidGravy Zoffix, for reference I gave up on URI::Encode and just put my fixed version right in URI::Template
17:19 jdv79 is .t6 supported anywhere?
17:23 psch hmm, that's a bit surprising
17:23 psch also, hi #perl6
17:23 psch m: my %h = a => 1, b => 2; my @a = [ %h ]; say @a.elems
17:23 camelia rakudo-moar 459a41: OUTPUT«2␤»
17:23 psch well, i guess it is single-arg-rule, in the end
17:25 BenGoldberg joined #perl6
17:30 skids m: my $p = Promise.new; my $v = $p.vow; my $s = start { sleep 1; +"this throws"; $v.keep(True); }; await $s, $p
17:30 camelia rakudo-moar 459a41: OUTPUT«Cannot convert string to number: base-10 number must begin with valid digits or '.' in '3⏏5this throws' (indicated by ⏏)␤  in block <unit> at /tmp/zxf1AxPYa7:1␤␤»
17:30 skids m: my $p = Promise.new; my $v = $p.vow; my $s = start { sleep 1; +"this throws"; $v.keep(True); }; await $p, $s;
17:30 camelia rakudo-moar 459a41: OUTPUT«(timeout)»
17:30 skids Doc clarification needed -- await calls .result on the list *in turn* not like allof()?
17:31 psch DrForr: "single arg rule" finds a lot of related explanations on the clog, but i don't think we have a comprehensive doc entry yet
17:32 JimmyZ m: my %h = a => 1, b => 2; my @a = [ %h ]; say @a.perl
17:32 camelia rakudo-moar 459a41: OUTPUT«[:a(1), :b(2)]␤»
17:32 DrForr Yeah, I ran across that while searching, I'll save reading for when I've got the test suite working again.
17:34 zacts joined #perl6
17:34 psch the core i understand somewhat like "as long as a given level of a structured variable is a single item and the variable isn't explicitly treated as an item, flatten everything"
17:34 psch m: my @a = [[[[[[[[[[1]]]]]]]]]]; say @a.perl # like this
17:34 camelia rakudo-moar 459a41: OUTPUT«[1]␤»
17:34 psch m: my @a = [[[[[[$[[[[1]]]]]]]]]]; say @a.perl # or this
17:34 camelia rakudo-moar 459a41: OUTPUT«[[1],]␤»
17:35 psch note that only keeps one array around, because the inner ones are again not itemized and single elements
17:35 psch m: my @a = [[$[[[[$[[[[1]]]]]]]]]]; say @a.perl #
17:35 camelia rakudo-moar 459a41: OUTPUT«[[[1],],]␤»
17:44 telex joined #perl6
17:46 zengargoyle has anybody used the %?RESOURCES stuff yet?  i.e. is there a working module that uses it to find a .so file that i can cargo-cult-cut-paste from? :)
17:47 Skarsnik err, find what .so file?
17:49 zengargoyle find a .so file that is built/installed with the module.  like Algorithm::Trie::libdatrie builds a libdatrie.so file that panda installs with the module and then needs to be found at runtime.
17:49 timotimo zengargoyle: Inline::Perl5 uses it, i believe
17:51 domidumont joined #perl6
17:51 rurban joined #perl6
17:52 zengargoyle timotimo: thanks, that'll probably get me started.
17:53 timotimo :)
17:53 timotimo i wonder if Linenoise is already updated?
17:54 RabidGravy zengargoyle, see e.g https://github.com/jonathanstowe/p6-Sys-Lastlog/commit/5a0f12d7e1ae3930842adf303cce3e7e3ead916f
17:55 RabidGravy it's relatively trivial to be honest
17:57 zengargoyle yeah, ack'd for RESO in the Inline::Perl5.  doing the rakudobrew dance ATM.
17:58 zengargoyle bah!
17:59 psch hrm
17:59 zengargoyle Dynamic variable @*PRECOMP-WITH not found
17:59 RabidGravy You'll need to adjust the Build.pm META.info and Makefile.in (if you are using librarymake)
18:00 arnsholt zengargoyle: That's probably my fault! Is this while compiling Rakudo, or installing something?
18:00 psch re-locking the same fh is allowed on moar, but not on jvm.  that's the current r-j build hang-up, in case anyone was wondering
18:01 zengargoyle rakudobrew build panda;  # after nuke; build moar;
18:01 psch (where "re-locking" means "without unlocking")
18:01 zengargoyle SC not yet resolved; lookup failed # trying perl6 ./bootstrap.pl
18:03 Skarsnik %?RESOURCES work in context? I mean it only the ressources for the modules/namespace?
18:04 arnsholt zengargoyle: I'll have a look at it, but don't have time to do it right away. But if you try to do the steps by hand and apply --ll-exception at the failing step it may very well turn out to be relatively straightforward, if you want to look at it yourself
18:04 RabidGravy for a "distribution" as I read the code
18:05 hoelzro timotimo: I fixed it on Friday, but using an awful hack rather than %?RESOURCES
18:05 hoelzro I'm hoping to change that today
18:06 timotimo :S
18:08 hoelzro I'm wondering how to handle .so vs .dll in the resources list, though?
18:08 hoelzro just list both?
18:08 hoelzro and do we use .dylib on OS X?
18:09 Skarsnik hm
18:09 Skarsnik good question actually
18:09 zengargoyle isn't extension somewhere in the $*VM or somesuch settings info?
18:11 Skarsnik ahah
18:12 Skarsnik look at I what I did to get the ext in https://rt.perl.org/Ticket/Display.html?id=126645 (toward the end) x)
18:13 * zengargoyle wonders if `perl6 --version` should have a 'build date' component.
18:13 azariah_ joined #perl6
18:14 pecastro joined #perl6
18:14 hoelzro zengargoyle: I believe it is, but does that mean that we need to generate META.info based on the building OS?
18:14 Skarsnik Na ressources should be typed
18:14 [Coke] nine: I have some failing precomp tests on OS X.
18:15 [Coke] t/spec/S10-packages/precompilation.t is failing tests 1,7
18:15 azariah_ Is it possible to override the default value of an attribute in a derived class without repeating the entire attribute definition?
18:16 Skarsnik like Ressources : [ lib : "mylibfile" ]
18:16 Skarsnik azariah_, try in BUILD?
18:17 arnsholt [Coke]: Probably my fault!
18:17 arnsholt I'll have a look at them tomorrow
18:17 Skarsnik but I am not sure it will work if you write method BUILD(:$!attrtochange = "foo"); it will not be called with a Class.new(:stuff, :stuff2) maybe
18:18 azariah_ Was just wondering if there was something like the "has +'attrname'" syntax in Moose
18:19 Skarsnik damn Configure.pl does not work on hurd
18:21 lizmat is it just me, or is every single spectest file broken atm ?
18:21 lizmat ===SORRY!===
18:21 lizmat SC not yet resolved; lookup failed
18:21 * lizmat nukes install and rebuilds
18:23 zengargoyle that's the same i'm getting trying to install panda from a fresh rakudobrew.  starts happening with JSON__Fast
18:24 corbyhaas joined #perl6
18:25 woolfy joined #perl6
18:25 woolfy left #perl6
18:28 [Coke] t/spec/S17-supply/syntax.t has some very fiddly failures on OS X. Trying to golf it, the abort keeps going away.
18:28 zengargoyle if i rm -rf lib/.precomp between each prove t/*.t test, one test file passes, next fails.
18:30 zengargoyle i.e.  prove -e 'perl6 --ll-exception -Ilib' -v t/01-parse.t passes; run it again it fails; rm -rf lib/.precomp and it passes again.
18:31 Skarsnik lol
18:31 zengargoyle bets other parts of panda install work because the only have one t/ file. :)
18:32 RabidGravy okay I was just going to bite the bullet and update the rakudo on the laptop. perhaps I won't
18:32 dalek specs: 5ce1177 | skids++ | S17-concurrency.pod:
18:32 dalek specs: Update design doc section on Channels
18:32 dalek specs:
18:32 dalek specs:   Channels use .closed not .done.
18:32 dalek specs:   Remove old earliest and related constructs.
18:32 dalek specs: review: https://github.com/perl6/specs/commit/5ce1177cc9
18:33 zengargoyle can i blame precomp without sounding snarky? :)
18:34 Juerd joined #perl6
18:35 profan joined #perl6
18:36 lizmat after a nuked install, spectest is still mostly dead :-(
18:36 lizmat ===SORRY!===
18:36 lizmat SC not yet resolved; lookup failed
18:37 zengargoyle lizmat: does very first test pass?
18:37 nadim joined #perl6
18:37 lizmat looks like
18:38 lizmat but *not* if I run it again
18:38 zengargoyle precomp is making more than 1 test fail.
18:38 Skarsnik I wonder if precomp could be use with something like Mojo6::Template
18:39 zengargoyle lizmat: see my last few msgs, having same issue with installing panda
18:40 RabidGravy it was working this morning, so I'm guessing you're looking at a commit since about 11 GMT
18:40 lizmat reverting to before arnsholt's merge, makes things work again
18:40 lizmat arnsholt: you still around ?
18:41 zengargoyle and if spectest is failing, i'm guessing in rakudo/nqp and not panda...
18:41 lizmat zengargoyle: yea, spectest of rakudo
18:42 lizmat I'm going to revert arnsholt's merge
18:43 RabidGravy iirc he knows what it is but didn't have time to fix it
18:43 lizmat well, meanwhile nobody can develop anymore
18:44 lizmat hmmm.... I guess I don't have enough git fu to revert the merge
18:44 RabidGravy yeah totally with reverting
18:45 psch hm, do we have tests for file locks with multiple threads?
18:47 psch ...do we have *any* tests for IO::Handle.lock? o.o
18:49 RabidGravy lizmat, I think it's "git revert -m 1 459a41890"
18:49 timotimo is transpose.t broken in "make test"?
18:50 timotimo oh, huh
18:50 timotimo it seems to require "make install" first
18:51 zengargoyle RabidGravy: yeah, that looks right to me....
18:51 RabidGravy the result looks sane anyway :)
18:51 timotimo oh, it's the SC not resolved problem
18:52 TEttinger joined #perl6
18:52 psch what does IO::Handle.lock actually do, anyway?  on r-m i can run two interpreters that both .lock(2) the same file..?
18:53 lizmat RabidGravy: verifying your findings...
18:53 psch hm, might be lock modes that i'm ignorant of
18:53 RabidGravy Oh wait it might leave the merge faults from that merge
18:54 timotimo psch: linux only has "advisory" locks anyway ...
18:54 timotimo don't know if that makes a difference for your test case
18:55 zengargoyle revert diffed with 31720335a4d262a3195ca59f2dd25ad0e3247e4e shows nothing.
18:56 psch timotimo: that just makes it more confusing, actually :/
18:56 psch as in, javadoc says that jvm-level locks should be treated as advisory because they utilize the OS locking mechanism
18:57 psch but the "let's just lock again and not care if it's locked already" impl for nqp-j lockfh dies with (what's essentially) "can't lock this again, it's already locked"
18:57 timotimo lol.
18:58 timotimo it's making an effort :)
18:58 psch and well, nqp-m lockfh just seems to not do anything... vOv
18:58 autarch what's the format for advent calendar articles? is there a repo I can look at?
18:59 psch autarch: what do you mean "format"?  they're usually submitted in the wordpress editor
18:59 autarch oh, I see, can I get access to that then?
18:59 autarch psch: for the record, the perl 5 calendar uses a slightly tweaked POD format - https://github.com/perladvent/Perl-Advent/blob/y2015/2015/articles/2015-12-16.pod
19:00 psch autarch: i think moritz_ or PerlJam can invite you to the author group, but it's the same editor as any wordpress installation uses
19:00 lizmat autarch: I think moritz can give you access to that
19:00 autarch moritz_: ^
19:01 timotimo OK, so i have built a thingie that reports what lines have been hit via MoarVM; now to 1) somehow make that work with the spectests, 2) somehow generate a report from that
19:01 psch timotimo: in any case, should IO::Handle.lock on r-m work twice on the same FH..?
19:01 dalek rakudo/nom: ccf15ec | lizmat++ | src/core/ (6 files):
19:01 dalek rakudo/nom: Revert "Merge branch 'precomp-singleprocess' into nom"
19:01 dalek rakudo/nom:
19:01 dalek rakudo/nom: This reverts commit 459a41890766ce1706d79ee48c0ca5f8e91f6965, reversing
19:01 dalek rakudo/nom: changes made to 31720335a4d262a3195ca59f2dd25ad0e3247e4e.
19:01 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/ccf15ec6db
19:02 timotimo psch: i have no idea? :(
19:03 Actualeyes joined #perl6
19:03 timotimo i haven't worked with file locks, like, ever
19:04 psch timotimo: yah, me neither...
19:05 timotimo maybe libuv's docs can help?
19:05 RabidGravy linux does have mandatory locks https://www.kernel.org/doc/Documentation/filesystems/mandatory-locking.txt but it's to be avoided
19:05 DrForr This seems very odd to me. I just made a 'is-deeply' test pass simply by reordering hash keys. Does Test::is-deeply do string comparison on a canonical ordering of data structures, by chance?
19:06 * DrForr sees if he can reproduce outside the grammar.
19:06 Skarsnik Ohh that could be why I have is-deeply test that does not work in DBIish stuff
19:06 Skarsnik DrForr, try eqv
19:06 ZoffixW joined #perl6
19:06 ZoffixW m: grammar G { token TOP { <foo> | <bar> }; token foo { \d+}; token bar { \D+} }; class GA { method TOP ($/) { say $/<bar>.WHAT }}; G.parse("42", :actions(GA)).made
19:06 camelia rakudo-moar 459a41: OUTPUT«Nil␤»
19:07 ZoffixW weird
19:07 * DrForr reads.
19:07 timotimo who can help me with Test::Harness?
19:07 timotimo if it's about grammars, you might want .caps instead of .hash or something
19:07 zengargoyle locking is even worse over NFS, there's a Perl5 module that does extreem gymnastics to do NFS locking.
19:08 dalek rakudo/nom: c4f8cad | (Juerd Waalboer)++ | src/core/Num.pm:
19:08 dalek rakudo/nom: Provide tau constant (also: τ)
19:08 dalek rakudo/nom:
19:08 dalek rakudo/nom: The Tau Manifesto <http://tauday.com/tau-manifesto>
19:08 dalek rakudo/nom:
19:08 dalek rakudo/nom: See also
19:08 dalek rakudo/nom: <https://en.wikipedia.org/wiki/Turn_(geometry)#Tau_proposal>
19:08 dalek rakudo/nom: and
19:08 dalek rakudo/nom: <http://tauday.com/state-of-the-tau>
19:08 dalek rakudo/nom:
19:08 dalek rakudo/nom: A patch for S32 is also submitted, as is a spectest.
19:08 ZoffixW m: https://gist.github.com/zoffixznet/9d78d31f9f6b38b1c8c5
19:08 camelia rakudo-moar 459a41: OUTPUT«Use of Nil in string context  in method message at /tmp/OA_ce2VLkF:30␤␤YES␤wat?␤Use of Nil in string context  in method message at /tmp/OA_ce2VLkF:35␤␤»
19:08 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/c4f8cad514
19:08 dalek rakudo/nom: dd5bcdb | lizmat++ | src/core/Num.pm:
19:08 dalek rakudo/nom: Merge pull request #614 from Juerd/nom
19:08 dalek rakudo/nom:
19:08 dalek rakudo/nom: Provide tau constant (also: τ)
19:08 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/dd5bcdb82f
19:08 Skarsnik m: my %hash; %hash<a> = 1; %hash<b> = 2; say {b => 2, a => 1} eqv %hash;
19:08 camelia rakudo-moar 459a41: OUTPUT«True␤»
19:08 ZoffixW How come I'm getting that output?
19:09 hankache joined #perl6
19:09 autarch is there any way to get a thread id?
19:09 autarch I mean an id for the current thread, like the pid
19:09 ZoffixW Oh, it's due to ~ never mind
19:09 lizmat m: say $*THREAD   # autarch
19:09 camelia rakudo-moar 459a41: OUTPUT«Thread.new(app_lifetime => Bool::False, name => "Initial thread")␤»
19:10 autarch lizmat: thanks
19:10 lizmat m: say $*THREAD.id   # autarch
19:10 camelia rakudo-moar 459a41: OUTPUT«1␤»
19:10 Skarsnik m: my %hash; %hash<a> = 1; %hash<b> = 2; say {b => 2, a => 1} eqv {a => 1, b => 2};
19:10 camelia rakudo-moar 459a41: OUTPUT«True␤»
19:12 timotimo hum. leont could probably help me :P
19:12 cxreg wondering what the semantics of a non-blocking await looks like
19:12 AlexDaniel non-blocking await?
19:12 timotimo cxreg: it'll just resume execution in a different task
19:12 cxreg oh ok
19:13 timotimo so from the perspective of the code the await is in, it'll still "block"
19:13 cxreg but not from the vm's
19:14 timotimo that's right
19:14 cxreg makes sense, thanks for clarifying.  jnthn said he wanted to do that before p6.c but if the semantics dont change then it's probably fine if not
19:14 autarch is panda broken with the current moar/rakudo HEAD?
19:14 AlexDaniel Hooooraaaay for τ!
19:14 lizmat autarch: I just reverted a merge that broke things
19:14 lizmat autarch: do you have that pulled ?
19:14 autarch lizmat: probably not, I rebuilt my perl6 about 20 minutes ago
19:14 zengargoyle lizmat++
19:15 RabidGravy I don't thinkk I've ever used pi in any code that I have been paid for so the chances of tau changing my life are slim
19:15 zengargoyle autarch: pull and you get τ for free!
19:15 autarch oh, thank goodness, that's exactly what I needed ;)
19:16 AlexDaniel m: τ
19:16 camelia rakudo-moar ccf15e: OUTPUT«5===SORRY!5=== Error while compiling /tmp/zAnbUv3KmG␤Undeclared routine:␤    τ used at line 1␤␤»
19:16 AlexDaniel not yet!
19:17 * timotimo is excited for tau
19:17 psch huh
19:18 hankache Z
19:18 autarch lizmat: is the error you fixed this one? "Could not find Shell::Command:ver<True>:auth<True>:api<True> in: ..."
19:18 autarch cause I Just did a "rakudobrew build moar" but I'm still getting that error
19:18 psch r-m apparently installs e.g. BOOTSTRAP.moarvm to $prefix/share/nqp/lib/Perl6/, but r-j installs to $prefix/share/lib/Perl6/
19:18 zengargoyle i was hoping τ/2 would return π
19:19 psch (r-j obviously installs BOOTSTRAP.jar...)
19:19 RabidGravy autarch, when was the *previous* time you did a rakudobrew?
19:19 hankache autarch: nuke ~/.rakudobrew and ~/.per;6 and start from scratch
19:19 autarch RabidGravy: maybe 20 minutes ago?
19:19 RabidGravy before that?
19:19 hankache i did it yesterday and it solved my issue
19:19 hankache ~/.perl6
19:19 zengargoyle autarch: rakudobrew nuke moar; rm -rf ~/.perl6; cd ~/.rakudobrew; git pull; cd -; rakudobrew build moar; ...
19:20 cxreg zengargoyle: arguably it's a bug that it does not? :)
19:20 autarch too late, I nuked the dot dirs
19:20 RabidGravy wahay!
19:20 El_Che I would like to read file as records (in my case separated by \n\n) instead of lines. This does not work:
19:20 El_Che m: spurt('/var/tmp/file1', "A\n\nB\n\nC\n\n"); my $fh = open('/var/tmp/file1', nl-in => "\n\n"); say $_.perl for $fh.lines;
19:20 camelia rakudo-moar ccf15e: OUTPUT«spurt is disallowed in restricted setting␤  in sub restricted at src/RESTRICTED.setting:1␤  in sub spurt at src/RESTRICTED.setting:17␤  in block <unit> at /tmp/JK61dZea7p:1␤␤»
19:21 El_Che well, it just splits the output on "\n" instead of "\n\n"
19:21 hankache Zoffix: Any news about inviting camelia to #perlfr ?
19:21 zengargoyle doing a git pull on rakudobrew seems easier than nuking/reinstalling it.
19:21 cxreg <banter> i wonder if the perl 6 excitement is really building, or if that's echochamber effect.  seems like the HN discussion has been mostly positive. </banter>
19:21 RabidGravy zengargoyle, "rakudobrew self-upgrade" ;-)
19:22 zengargoyle ha, lol
19:22 autarch yeah, _now_ you mention that
19:22 hankache rakudo self-upgrade didn't solve it for me
19:22 hankache i had to nuke ~/.rakudobrew
19:23 zengargoyle i have not yet ever had to nuke .rakudobrew...
19:23 AlexDaniel by the way, there is some issue with rakudobrew. You can only use it if you put it into ~/.rakudobrew, no idea what happened. It was working just fine in any other directory earlier
19:23 timotimo rakudobrew self-upgrade only updates the rakudobrew installation itself
19:23 El_Che cxreg: the slashdot discussion was a trollfest
19:23 timotimo it does nothing to rakudo
19:23 hankache don't ask me why though, someone told me to do it and it just worked :)
19:23 autarch El_Che: unlike other slashdot discussions?
19:24 lizmat autarch: no, that's not in
19:24 lizmat *it
19:24 zengargoyle AlexDaniel: i still have /opt/rakudobrew... haven't seen any problems.
19:24 RabidGravy yes, but "rakudobrew self-upgrade; rakudobrew nuke moar" (and possibly the .perl6 directory) *should* do for the pre-curli to post-curli leap
19:24 lizmat fwiw, I bootstrapped panda ok on my machine after having nuked install a while ago
19:24 RabidGravy still building for me here
19:25 zengargoyle lizmat: me too! seems to be ok after the revert.
19:25 AlexDaniel zengargoyle: that's interesting. I saw this problem on two different machines (on both it was working just fine for a looooong time), so something definitely happened I'm just not sure what exactly
19:25 lizmat but I can't install Inline::Perl5
19:25 RabidGravy yeah, I thought that slashdot had actually replaced under bridges as to where trolls lived about fifteen years ago
19:26 autarch well, stuff seems to be working after rebuilding everything from scratch
19:26 AlexDaniel m: say τ
19:26 camelia rakudo-moar ccf15e: OUTPUT«5===SORRY!5=== Error while compiling /tmp/x6NFTJlPdu␤Undeclared routine:␤    τ used at line 1␤␤»
19:26 timotimo autarch: glad to hear it
19:26 El_Che autarch: :)
19:26 RabidGravy ah, did that rever too much (i.e. nine's %?RESOURCES stuff?)
19:28 hankache autarch++
19:28 cxreg El_Che: well.  slashdot.
19:28 lizmat RabidGravy: yeah, suggestions for fixing ?
19:28 dalek nqp: 7ab9ad5 | peschwa++ | src/vm/jvm/runtime/org/perl6/nqp/io/FileHandle.java:
19:28 dalek nqp: Bring nqp-j lockfh handling in line with nqp-m.
19:28 dalek nqp:
19:28 dalek nqp: As noted in the comment in the file there might be a cleaner way to achieve
19:28 dalek nqp: this, the fact that re-locking a locked filehandle might be a bad things to
19:28 dalek nqp: allow aside.
19:28 dalek nqp: review: https://github.com/perl6/nqp/commit/7ab9ad58bb
19:28 dalek rakudo/nom: 0ec5ad5 | peschwa++ | tools/build/Makefile-JVM.in:
19:28 dalek rakudo/nom: Correct lib path to install a working R-J.
19:28 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/0ec5ad5628
19:29 psch there, r-j builds and installs and at least basically works again
19:29 cxreg El_Che: r/programming and HN are far superior these days, honestly
19:29 timotimo cxreg: they troll better?
19:29 El_Che cxreg: Last perl or perl6 that wasn't that but. It's not that it was negative, just too silly to even bother. I mean, I can appreciate a good troll, but this time it wasn't even funny
19:29 El_Che last thread
19:29 bartolin_ psch++
19:29 autarch hmm, I don't think ThreadPoolScheduler works like I think it should work ... https://gist.github.com/autarch/fc41bcaf31f05651a2c5 - everything runs in the same thread
19:29 cxreg timotimo: heh.  fair.
19:29 psch bartolin_: i'm fairly confident spectest is still an undeniable mess, though... :)
19:29 timotimo autarch: oh! i have a clue why that might be %)
19:30 autarch timotimo: please share
19:30 * psch starts that out of morbid curiousity...
19:30 timotimo autarch: jnthn recently built something that allows you to see dynamic variables from the context where a start block was placed
19:30 * bartolin_ too
19:30 timotimo perhaps it gets the $*THREAD value from before it got put into the ThreadPoolScheduler?
19:30 timotimo oh
19:30 autarch timotimo: how could I figure this out?
19:31 timotimo you're using supplies
19:31 * lizmat is getting very sad about the mess nom is in
19:31 timotimo supplies have a "pipeline" semantic kind of deal that means things are tried to run on the same thread for better locality
19:31 timotimo OSLT
19:31 timotimo try with start instead of tap
19:31 timotimo (to see if i'm full of shit)
19:32 jnthn autarch: $supply.schedule-on($sched);
19:32 jnthn autarch: That's a no-op
19:32 jnthn autarch: It returns something that you would then tap
19:33 jnthn It doesn't work in-place
19:33 autarch jnthn: aha, that makes sense
19:33 autarch though the docs must be wrong, because they don't document a return value
19:33 jnthn Ah, sounds like. I don't think there's anything at all on a Supply that works in-place, fwiw
19:34 bartolin_ psch: actually, I hope the spectest on r-j is not that bad. I ran some test files manually the last days (while looking at some tests) and didn't see any new problems with those
19:34 lizmat I'm about to restore files manually in nom that I think are right
19:34 lizmat and then create a commit out of that to fix things
19:34 autarch jnthn: I think the docs may be way out of date on that then - I'll try to put some patches together once I finish my advent article
19:34 lizmat jnthn RabidGravy do you have better ideas ?
19:35 AlexDaniel m: say τ
19:35 camelia rakudo-moar dd5bcd: OUTPUT«6.28318530717959␤»
19:35 AlexDaniel alriiiiight!
19:35 jnthn lizmat: You're planning to revert something?
19:35 AlexDaniel m: say τ == pi * 2
19:35 camelia rakudo-moar dd5bcd: OUTPUT«True␤»
19:35 lizmat jnthn: I reverted arnsholt's merge badly
19:35 psch bartolin_: well, it starts with 55 lines of "No subtests run"... :/
19:35 lucasb joined #perl6
19:35 lizmat jnthn: now I need to revert that and then revert arnsholt's merge properly
19:35 lizmat jnthn: as I said, it's a mess
19:36 bartolin_ psch: oh :-(
19:36 jnthn lizmat: How many commits were in the merge?
19:36 jnthn lizmat: You can just list those to git revert
19:37 * lizmat feels like the wizard's apprentice watching the brooms go wild
19:37 jnthn lizmat: https://git-scm.com/blog/2010/03/02/undoing-merges.html has probably a lot more info than you want to know on it :)
19:38 lizmat I'm not interested in learning stuff atm, I'm interested in getting stuff right asap
19:38 AlexDaniel m: my \r = 25; my $C = τ * r; say $C
19:38 camelia rakudo-moar dd5bcd: OUTPUT«157.07963267949␤»
19:38 AlexDaniel feels good :)
19:39 brrt joined #perl6
19:40 * hankache test
19:40 lucasb by looking at github rendering of the commits, it looks like the lizmat's revert commit is exactly the reverse of arnsholt's one. why it was said that it reverted too much?
19:40 lizmat the %?RESOURCES work
19:40 lizmat which is what Inline::Perl5 now depends on
19:40 * hankache knows how this works now :)
19:41 * grondilu is glad about tau
19:41 psch hm, and the ContextRef serialize stuff still pops up
19:41 lucasb ah, ok. maybe it was because arnsholt found some conflicts when merging (?)
19:41 RabidGravy there were
19:43 autarch is Supply.wait not blocking?
19:43 jnthn It blocks
19:44 jnthn m: Supply.iterval(1).wait; say 'here';
19:44 camelia rakudo-moar dd5bcd: OUTPUT«Method 'iterval' not found for invocant of class 'Supply'␤  in block <unit> at /tmp/cJRko05KqD:1␤␤»
19:44 jnthn m: Supply.interval(1).wait; say 'here';
19:44 autarch hmm, that's not what I'm seeing
19:44 jnthn heh, of course that'll go on forever :)
19:44 jnthn m: Supply.interval(1).head(2).wait; say 'here';
19:44 camelia rakudo-moar dd5bcd: OUTPUT«(timeout)»
19:44 camelia rakudo-moar dd5bcd: OUTPUT«===SORRY!===␤last without loop construct␤»
19:44 jnthn o.O
19:44 grondilu fir use of tau in RC:  http://rosettacode.org/wiki/Category:Perl_6
19:44 grondilu oops
19:44 grondilu meant http://rosettacode.org/wiki/Fast_Fourier_transform#Perl_6
19:45 autarch m: (1,2,3).Supply.tap( -> $x { say $ } )
19:45 camelia rakudo-moar dd5bcd: OUTPUT«(Any)␤(Any)␤(Any)␤»
19:45 lucasb so... it seems there was consensus about the tau thing? :)
19:45 autarch m: (1,2,3).Supply.tap( -> $x { say $x } )
19:45 camelia rakudo-moar dd5bcd: OUTPUT«1␤2␤3␤»
19:45 autarch m: (1,2,3).Supply.tap( -> $x { say $x } ).wait
19:45 camelia rakudo-moar dd5bcd: OUTPUT«1␤2␤3␤Method 'wait' not found for invocant of class 'Tap'␤  in block <unit> at /tmp/KqGHgHEH3p:1␤␤»
19:45 autarch m: my $s = (1,2,3).Supply; $s.tap( -> $x { say $x } ); $s.wait
19:45 camelia rakudo-moar dd5bcd: OUTPUT«1␤2␤3␤»
19:46 lizmat lucasb: no, there wasn't, but I bit the bullet by hoping for forgiveness
19:46 autarch m: my $s = (1,2,3).Supply; $s.tap( -> $x { sleep 2; say $x } ); $s.wait
19:46 camelia rakudo-moar dd5bcd: OUTPUT«1␤2␤3␤»
19:46 autarch hmm, of course it works here :(
19:46 lucasb lizmat: I forgive you :)
19:46 lucasb just kidding :)
19:46 lizmat it felt right to me, forward looking to the use of tau in the world
19:46 autarch it doesn't seemt to be waiting here - https://gist.github.com/autarch/cfa68f65b36a8cd5cd0b - there's no progress bar output except the call to $prog.?message($msg)
19:47 jnthn autarch: .wait is a form of .tap
19:47 autarch If I replace .tap with .wait I get ... "Too many positionals passed; expected 1 argument but got 2"
19:48 * lizmat gives up on fixing the mess nom is in
19:48 jnthn autarch: What are you actually wanting to do? :)
19:48 jnthn .wait means "wait for the thing to complete and give me its final value"
19:48 yoleaux jnthn: Sorry, this command is admin-only.
19:48 autarch jnthn: run the $sub in up to N threads, one per thing in $items
19:48 autarch and wait for that to complete before returning
19:50 lizmat autarch: what you want, is Supply.throttle(N, -> { ... } )
19:50 autarch then what's Supply.schedule-on for?
19:50 yqt joined #perl6
19:51 lizmat autarch: that's for special things like GTK binding, running on the GTK scheduler
19:51 jnthn autarch: And get the items back in order?
19:51 autarch ah, ok
19:51 autarch jnthn: don't want anything back at all
19:51 jnthn lizmat: I think schedule-on could work for this
19:51 jnthn autarch: Then what were you passing to .tap? :)
19:51 autarch jnthn: a subroutine that does some work
19:51 jnthn Ah
19:52 jnthn m: Supply.from-list(1, 2, 3, 4).schedule-on($*SCHEDULER).do({ say "work on $_ on $*THREAD.id()" }).wait; say 'done';
19:52 camelia rakudo-moar 0ec5ad: OUTPUT«work on 1 on 3␤work on 2 on 4␤work on 3 on 5␤work on 4 on 6␤done␤»
19:53 jnthn oh, but that may not be parallel enough
19:53 autarch yeah, the goal here is to parallelize an operation across N threads - there are no return values to care about
19:53 ZoffixW joined #perl6
19:53 jnthn m: (1, 2, 3, 4).hyper.map({ say "work on $_ on $*THREAD.id()" });
19:53 camelia rakudo-moar 0ec5ad: ( no output )
19:54 jnthn m: (1, 2, 3, 4).hyper.map({ say "work on $_ on $*THREAD.id()" }).sink
19:54 camelia rakudo-moar 0ec5ad: ( no output )
19:54 ZoffixW Hey, what's "AUTOGEN"? I'm getting "Ambiguous call to 'AUTOGEN'"
19:54 jnthn Hm, that *should* work...
19:54 autarch but I want to be able to limit it to a certain (user-specified) number of threads
19:54 autarch if there are 300 items it should not make 300 threads ;)
19:54 rob joined #perl6
19:55 autarch ah, I see hyper takes a batch size
19:55 moritz_ you can always instantiate your own ThreadPoolScheduler with a differen max-threads
19:55 moritz_ https://doc.perl6.org/type/ThreadPoolScheduler
19:56 moritz_ not necessary with .hyper, but in general if you use promises etc. and want to limit the number of threads
19:56 jnthn m: for ^10 .rotor(4) { await do for @$_ { start { say "$_ on $*THREAD.id" } } }
19:56 camelia rakudo-moar 0ec5ad: OUTPUT«0 on Thread<3>(<anon>).id␤1 on Thread<4>(<anon>).id␤2 on Thread<3>(<anon>).id␤3 on Thread<4>(<anon>).id␤4 on Thread<3>(<anon>).id␤5 on Thread<5>(<anon>).id␤6 on Thread<6>(<anon>).id␤7 on Thread<4>(<anon>).id␤»
19:56 jnthn There's another way
19:57 jnthn Supplies aren't really a great tool for this because their goal is to tame concurrency rather than introduce it :)
19:57 autarch I'm just trying what someone told me to do a week ago, I think ;)
19:57 lucasb Isn't reverting the revert commit helping in this case? Then the repo arrives back at arnsholt's change. From there, it can be decided how to revert (or not) that correctly.
19:58 moritz_ m: for ^10 .rotor(4) { await do for @$_ { start { say "$_ on $*THREAD.id()" } } }
19:58 camelia rakudo-moar 0ec5ad: OUTPUT«0 on 3␤1 on 4␤2 on 3␤3 on 4␤4 on 3␤5 on 5␤6 on 4␤7 on 6␤»
19:58 s_kilk joined #perl6
19:59 autarch so here it is with .hyper - https://gist.github.com/autarch/af2ac13e76ec0d487615 - and it doesn't seem to actually run the sub passed to .map - if I remove the .hyper() bit it does run it
20:00 Begi joined #perl6
20:00 s_kilk Would anyone here have any use for the `perl6.rocks` domain? I registered it (in a drunken frenzy) a few weeks ago, and would be willing to transfer it to the perl6 community, if something useful could be done with it
20:01 ZoffixW s_kilk, how much does it cost?
20:01 s_kilk eh, I'll just hand it over, no interest in keeping it.
20:01 lizmat s_kilk++
20:02 s_kilk as long as it get's used for something cool
20:02 s_kilk it could make for a great tutorial site
20:02 ZoffixW Anyone know why this line is giving me "Ambiguous call to 'AUTOGEN'; these signatures all match::(IRC::Client::Plugin::Debugger $: *%_):(IRC::Client::Plugin::Debugger $: *%_)"  https://github.com/zoffixznet/perl6-IRC-Client/blob/master/lib/IRC/Client.pm6#L33 The line above works fine
20:02 jnthn It'd be great if somebody made a Perl 6 geology library and put its site there :P
20:02 ZoffixW This is the only object in @!plugins and its .msg methods: https://github.com/zoffixznet/perl6-IRC-Client/blob/master/lib/IRC/Client/Plugin/Debugger.pm6#L6
20:02 ZoffixW jnthn++
20:03 autarch moritz_: your solution seems to do what I want
20:03 RabidGravy lizmat,  if you also revert the second (right) commit of the merge, fix the merge faults with "git checkout --ours <file>" then rebase to your last revision then you should have something you can work with
20:04 autarch except for not actually doing anything ...? I need to investigate further
20:04 RabidGravy skipping the merge errors of course in the rebase
20:04 lizmat RabidGravy: at this moment, my confidence level at fixing this is zero, so I'm leaving it to someone else to fix
20:05 lizmat I feel I would only make things worse
20:05 bartolin_ lizmat: do you have an opinion about integration/advent2014-day05.t (from roast)? AFAIU the test file fails (it's only run as stress test) because it uses the old Supply API. should we remove the test file or should it be updated to the new API?
20:05 lizmat pls update to new API
20:05 hankache ZoffixW: any luck with camelia on #perlfr?
20:06 bartolin_ oki doki (but 'll have to understand Supply and friends first :-)
20:06 jnthn autarch: I put hyper and race in partially while working out how we'd do them as part of the GLR, never quite finished them (though they'd have done fine for your case), and was silly enough to not write tests to make sure we didn't bust what did work. :(
20:06 ZoffixW hankache, try to find one of the people who have access to the server with her and ask them to see why the irc.perl.org version died. I don't have access to it, so I've no idea what happened
20:06 hankache Zoffiw
20:07 hankache ZoffixW: thanks mate.
20:07 jnthn I suspect it'll be something silly...
20:07 ZoffixW Damn, I've been hitting these annoying bugs that I can't reproduce on small test cases :/
20:07 hankache ZoffixW: who should I ask?
20:07 jnthn Embarassing I'm all like "I was stupid enough to write no tests" the evening before I teach a TDD class :P
20:07 psch m: role R { multi method f() { False }; multi method f(R) { say "from R" } }; class C does R { multi method f() { True }; multi method f(C $:) { say "from C" } }; C.new.f
20:07 camelia rakudo-moar 0ec5ad: OUTPUT«Ambiguous call to 'f'; these signatures all match:␤:(C $: *%_)␤:(C $: *%_)␤:(C $: *%_)␤  in block <unit> at /tmp/HfmWjKo25h:1␤␤»
20:07 psch ZoffixW: ^^^ that's your latest golfed, isn't it?
20:07 psch well, similar
20:08 ZoffixW hankache, nine and maybe moritz; but nine said they were busy ATM
20:08 psch the signature for C.f isn't quite comparable :S
20:08 hankache ZoffixW: ok thanks
20:08 * moritz_ investigates
20:09 ZoffixW moritz_, I've added two extra channels for the bot to join, asked the bot to pull and then restart, and it never came back
20:09 * psch doesn't really grok role/multi interactions particularly well...
20:09 Skarsnik role and mutli seem buggy x=
20:10 psch Skarsnik: i think it's mostly not completely clear how it should behave
20:10 psch Skarsnik: at least that's how i feel about it... :)
20:10 moritz_ Can't locate JSON.pm in @INC
20:11 jnthn It's clear enough once you remember that the design of roles is "works like you declared the thing in the class" :)
20:11 dalek rakudo/nom: 9a6b714 | lizmat++ | src/core/Thread.pm:
20:11 dalek rakudo/nom: Give Thread a better understandable .gist
20:11 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/9a6b714c47
20:11 jnthn Given that, you'd expect ambiguity :)
20:12 ZoffixW psch++ thanks. Commenting out the methods in my role fixed the issue
20:12 Skarsnik m: role R { method foo() { ... } }; class A does R { multi foo(Int) {say "Int"}; multi foo() {say "A"}};
20:12 camelia rakudo-moar 0ec5ad: OUTPUT«===SORRY!===␤Method 'foo' must be implemented by A because it is required by a role␤»
20:12 ZoffixW I think going with multies was a mistake
20:12 Skarsnik m: role R { method foo() { ... } }; class A does R { multi method foo(Int) {say "Int"}; multi method foo() {say "A"}};
20:12 camelia rakudo-moar 0ec5ad: OUTPUT«===SORRY!===␤Method 'foo' must be implemented by A because it is required by a role␤»
20:12 psch m: role R { method foo() { ... } }; class A does R { proto method foo(|) {*}; multi foo(Int) {say "Int"}; multi foo() {say "A"}};
20:12 camelia rakudo-moar 0ec5ad: ( no output )
20:13 Skarsnik so yeah, role and multi does not work x)
20:13 moritz_ hankache, ZoffixW: camelia should be back on irc.perl.org
20:13 psch jnthn: yeah, i guess everything else is just trying to be too clever i suppose
20:13 psch Skarsnik: it does, you just have to supply an explicit proto
20:13 hankache moritz_ ZoffixW thanks a lot
20:13 Skarsnik the proto sound like a bad workaround x)
20:13 psch Skarsnik: why workaround?
20:14 ZoffixW moritz_, it is, but running "m:" just says "<p6eval> rakudo-moar : OUTPUT«No such file or directory»"
20:14 jnthn Skarsnik: Just because you don't have a clue how it works doesn't mean it doesn't work :/
20:14 Skarsnik because why would I need another keyword?
20:14 ZoffixW moritz_, "rakudo-moar : OUTPUT«(timeout)Can't exec "./rakudo-m-inst/bin/perl6-m": No such file or directory at lib/EvalbotExecuter.pm line 194.␤cat: /home/camelia/rakudo-m-inst/revision: No such file or directory␤»"
20:14 moritz_ m: say 42
20:14 camelia rakudo-moar 0ec5ad: OUTPUT«42␤»
20:15 Skarsnik m: role R { multi method foo() { ... }; multi method foo(Str $a) {say $a}}; class A does R { multi method foo(Int) {say "Int"}; multi method foo() {say "A"}};
20:15 camelia rakudo-moar 0ec5ad: ( no output )
20:15 moritz_ ZoffixW: :(
20:15 hankache moritz_ it is not working there :(
20:15 autarch hmm, I'm starting to think I don't understand Perl 6 well enough to write the advent calendar article I'm supposed to write :(
20:15 ZoffixW autarch, do it! :)
20:15 autarch ZoffixW: uh, how does that help?
20:16 Skarsnik m: role R { multi method foo() { ... }; multi method foo(Str $a) {say $a}}; class A does R { multi method foo(Int) {say "Int"}; multi method foo() {say "A"}}; my $a =  A.new; $a.foo("Hello"); $a.foo();
20:16 camelia rakudo-moar 0ec5ad: OUTPUT«Hello␤Ambiguous call to 'foo'; these signatures all match:␤:(A $: *%_)␤:(A $: *%_)␤  in block <unit> at /tmp/jHxrNQi_gN:1␤␤»
20:16 hankache moritz_ say 123 will return rakudo-moar : OUTPUT«No such file or directory»
20:16 moritz_ hankache: yes
20:16 ZoffixW What's weird is *I* get this /msg from it: <p6eval> rakudo-moar : OUTPUT«(timeout)Can't exec "./rakudo-m-inst/bin/perl6-m": No such file or directory at lib/EvalbotExecuter.pm line 194.␤cat: /home/camelia/rakudo-m-inst/revision: No such file or directory␤#perlfr <hankache> rakudo-moar: say 123␤»
20:17 Skarsnik wait, there is nothing ambiquous here
20:17 ZoffixW Skarsnik, sure is foo() in the role and foo() in the class
20:17 psch Skarsnik: there is.  the stub from the role and the no-parameters candidate from the class have the same signature
20:18 moritz_ Skarsnik: I don't think stubbing a multi method works the way you seem to expect it to work
20:18 rurban joined #perl6
20:18 ChoHag If a recipient is a thing that receives, what's a thing that sends?
20:18 ZoffixW ChoHag, sender
20:19 Skarsnik err, what are you saying? the { ... } is just to tell the class to have a foo method defined, why it should be called in the role?
20:19 moritz_ Skarsnik: I think stubbing works only on the routine/proto level, not on the multi level
20:19 ZoffixW Skarsnik, roles add stuff. You can't have the same method in the role and in the class
20:20 moritz_ Skarsnik: because comparing signatures is Turing complete
20:20 moritz_ (in the general case)
20:20 ZoffixW Skarsnik, so it doesn't really make sense to stub. What is it stubbing?
20:20 moritz_ maybe we should compile-time error on stubbed multis
20:21 ZoffixW I think stubs work, but not with Roles
20:21 ZoffixW I changed mine to class and it works fine
20:21 psch stubbing a multi in a role is weird
20:21 Skarsnik I still don't get it. why without mutli stub does what it supposed to do? force the class to have the method
20:21 ZoffixW Does it?
20:21 Skarsnik yes
20:21 ZoffixW weird
20:22 ZoffixW m: role Foo { method x { ... } }; class Bar does Foo { method z { say "42" } }; Bar.new.z
20:22 camelia rakudo-moar 0ec5ad: OUTPUT«===SORRY!===␤Method 'x' must be implemented by Bar because it is required by a role␤»
20:22 Skarsnik so etheir the whole signature is not check (only the name) or it's really not clear how this work
20:22 psch Skarsnik: the latter, i think :)
20:22 ZoffixW m: role Foo { method x { ... } }; class Bar does Foo { method x { say "42" } }; Bar.new.x
20:22 camelia rakudo-moar 0ec5ad: OUTPUT«42␤»
20:23 ZoffixW m: role Foo { multi method x { ... } }; class Bar does Foo { method x { say "42" } }; Bar.new.x
20:23 camelia rakudo-moar 0ec5ad: OUTPUT«===SORRY!===␤Cannot have a multi candidate for 'x' when an only method is also in the package 'Bar'␤»
20:23 ZoffixW m: role Foo { multi method x { ... } }; class Bar does Foo { multi method x { say "42" } }; Bar.new.x
20:23 camelia rakudo-moar 0ec5ad: OUTPUT«Ambiguous call to 'x'; these signatures all match:␤:(Bar $: *%_)␤:(Bar $: *%_)␤  in block <unit> at /tmp/a_IvSPdhLc:1␤␤»
20:23 moritz_ ZoffixW, hankache: my bad, I activated camelia on the wrong server :-)
20:23 ZoffixW :D
20:24 stmuk m: say $*W.perl
20:24 camelia rakudo-moar 0ec5ad: OUTPUT«Failure.new(exception => X::Dynamic::NotFound.new(name => "\$*W"), backtrace => Backtrace.new)␤»
20:24 ZoffixW moritz_++ thanks. It works now
20:24 moritz_ stmuk: $*W is compile-time only
20:24 moritz_ m: BEGING { say $*W.^name }
20:24 camelia rakudo-moar 0ec5ad: OUTPUT«5===SORRY!5=== Error while compiling /tmp/OWg79VDN1L␤Undeclared name:␤    BEGING used at line 1␤␤»
20:24 moritz_ m: BEGIN { say $*W.^name }
20:24 camelia rakudo-moar 0ec5ad: OUTPUT«Perl6::World␤»
20:25 psch m: say "{ 236 / 2 } failing test files on r-j"
20:25 camelia rakudo-moar 0ec5ad: OUTPUT«118 failing test files on r-j␤»
20:25 stmuk ah
20:25 psch dividing by two is hard :P
20:25 stmuk m: BEGIN { say $*W.perl }
20:25 camelia rakudo-moar 0ec5ad: OUTPUT«5===SORRY!5=== Error while compiling /tmp/nYYY06nTWq␤An exception occurred while evaluating a BEGIN␤at /tmp/nYYY06nTWq:1␤Exception details:␤  5===SORRY!5=== Error while compiling ␤  Method 'perl' not found for invocant of class 'Perl6::Wo…»
20:26 stmuk m: BEGIN { say $*W.^methods }
20:26 camelia rakudo-moar 0ec5ad: OUTPUT«5===SORRY!5=== Error while compiling /tmp/YoaYyZfTvO␤An exception occurred while evaluating a BEGIN␤at /tmp/YoaYyZfTvO:1␤Exception details:␤  5===SORRY!5=== Error while compiling ␤  Method 'gist' not found for invocant of class 'NQPRoutin…»
20:26 stmuk W=World?
20:26 Skarsnik m: say tau / 2 eq pi;
20:26 camelia rakudo-moar 0ec5ad: OUTPUT«True␤»
20:26 geraud joined #perl6
20:26 ZoffixW m: say tau / 2 == pi;
20:26 camelia rakudo-moar 0ec5ad: OUTPUT«True␤»
20:26 ZoffixW Oh wait, the tau bikeshed ended? :D
20:26 ZoffixW But I still have some popcorn left over! :D
20:27 Skarsnik it's probably because tau must be pi * 2? x)
20:27 spider-mario joined #perl6
20:27 ZoffixW That's how it's defined, yes
20:27 ZoffixW m: say pi*2 == tau;
20:27 camelia rakudo-moar 0ec5ad: OUTPUT«True␤»
20:27 ZoffixW m: say (pi*2).nude
20:27 camelia rakudo-moar 0ec5ad: OUTPUT«Method 'nude' not found for invocant of class 'Num'␤  in block <unit> at /tmp/07dKswAe_Z:1␤␤»
20:27 ZoffixW -_-
20:29 ZoffixW m: role Foo { multi method x { ... } }; class Bar is Foo { multi method x { say "42" } }; Bar.new.x
20:29 camelia rakudo-moar 0ec5ad: OUTPUT«42␤»
20:29 ZoffixW weird, eh?
20:30 Juerd m: tau.Rat.nude.say
20:30 camelia rakudo-moar 0ec5ad: OUTPUT«(710 113)␤»
20:30 cxreg is this a known issue or a me problem?  while panda building DBIish I get Cannot find method 'find_symbol'
20:30 ZoffixW m: pi.Rat.nude.say
20:30 camelia rakudo-moar 0ec5ad: OUTPUT«(355 113)␤»
20:30 dalek rakudo-star-daily: 82f553e | coke++ | log/ (2 files):
20:30 dalek rakudo-star-daily: today (automated commit)
20:30 dalek rakudo-star-daily: review: https://github.com/coke/rakudo-star-daily/commit/82f553e2ab
20:30 dalek rakudo-star-daily: 57a91eb | coke++ | log/ (2 files):
20:30 dalek rakudo-star-daily: today (automated commit)
20:30 dalek rakudo-star-daily: review: https://github.com/coke/rakudo-star-daily/commit/57a91eba3e
20:30 dalek perl6-roast-data: c355b2f | coke++ | / (9 files):
20:30 dalek perl6-roast-data: today (automated commit)
20:30 dalek perl6-roast-data: review: https://github.com/coke/perl6-roast-data/commit/c355b2f581
20:30 ZoffixW cxreg, I saw that mentioned last night
20:30 * [Coke] just finds out about ribasushi's tilt.com campaign.
20:31 cxreg ZoffixW: maybe something that affects only new installs? o.o
20:31 ZoffixW *shrug*
20:31 stmuk there was an interesting audio podcast interview with ribasushi on FLOSS Weekly
20:32 Skarsnik cxreg, yep travis build failt with the same error
20:32 ZoffixW Hm, the whole story kinda made me depressed.
20:32 cxreg Skarsnik: ok thanks
20:32 hankache moritz_ thank you very much. it is working flawlessly
20:32 hankache moritz_++
20:35 mohae joined #perl6
20:37 JimmyZ joined #perl6
20:41 hankache m: say pi.Rat.nude
20:41 camelia rakudo-moar 9a6b71: OUTPUT«(355 113)␤»
20:41 hankache m: say 355/113
20:41 camelia rakudo-moar 9a6b71: OUTPUT«3.141593␤»
20:41 hankache m: say pi
20:41 camelia rakudo-moar 9a6b71: OUTPUT«3.14159265358979␤»
20:41 hankache isn't it weird? ^^
20:42 autarch m: for (1..10).rotor(5) -> $chunk { $chunk.values.map { .say } }
20:42 camelia rakudo-moar 9a6b71: OUTPUT«5===SORRY!5=== Error while compiling /tmp/NOKeuex4vL␤Two terms in a row␤at /tmp/NOKeuex4vL:1␤------> 3).rotor(5) -> $chunk { $chunk.values.map7⏏5 { .say } }␤    expecting any of:␤        infix stopper␤        statement end␤        s…»
20:42 autarch m: for (1..10).rotor(5) -> $chunk { $chunk.values.map: { .say } }
20:42 camelia rakudo-moar 9a6b71: ( no output )
20:42 autarch that seems like a bug
20:42 autarch m: for (1..10).rotor(5) -> $chunk { .say for $chunk.values }
20:42 camelia rakudo-moar 9a6b71: OUTPUT«1␤2␤3␤4␤5␤6␤7␤8␤9␤10␤»
20:42 hankache I would have expected that both return the same result
20:42 autarch cause if that works shouldn't the .map also work?
20:43 ZoffixW m: say (355/113).Rat
20:43 camelia rakudo-moar 9a6b71: OUTPUT«3.141593␤»
20:43 ZoffixW m: say (pi).Rat
20:43 camelia rakudo-moar 9a6b71: OUTPUT«3.141593␤»
20:43 Juerd hankache:
20:43 Juerd m: say sprintf "%.14f", pi.Rat
20:43 camelia rakudo-moar 9a6b71: OUTPUT«3.14159292035398␤»
20:43 Juerd hankache: The digits are there, but not in the stringification.
20:44 Juerd m: say sprintf "%.14f", pi
20:44 camelia rakudo-moar 9a6b71: OUTPUT«3.14159265358979␤»
20:44 ZoffixW m: say (355/113).WHAT
20:44 camelia rakudo-moar 9a6b71: OUTPUT«(Rat)␤»
20:44 ugexe sure, but you're being lazy
20:44 ZoffixW m: say (355/113).perl
20:44 camelia rakudo-moar 9a6b71: OUTPUT«<355/113>␤»
20:44 ugexe m: for (1..10).rotor(5) -> $chunk { eager $chunk.values.map: { .say } }
20:44 camelia rakudo-moar 9a6b71: OUTPUT«1␤2␤3␤4␤5␤6␤7␤8␤9␤10␤»
20:44 Juerd And yea, it's different... Don't know if it's a bug or a feature.
20:44 hankache m: say pi.Rat ~~ (355/113)
20:44 camelia rakudo-moar 9a6b71: OUTPUT«True␤»
20:45 hankache m: say pi.Rat == (355/113).Rat
20:45 camelia rakudo-moar 9a6b71: OUTPUT«True␤»
20:45 autarch ugexe: ah, I see
20:45 ZoffixW m: say (355/113).perl, (pi).perl
20:45 camelia rakudo-moar 9a6b71: OUTPUT«<355/113>3.14159265358979e0␤»
20:45 hankache I see
20:45 hankache thanks Juerd
20:49 timotimo m: say (355e0 / 113e0).perl
20:49 camelia rakudo-moar 9a6b71: OUTPUT«3.14159292035398e0␤»
20:50 ZoffixW hax
20:52 hankache but in https://github.com/rakudo/rakudo/blob/nom/src/core/Num.pm#L238
20:52 hankache my constant pi  = 3.14159_26535_89793_238e0;
20:52 ChoHag How can you find a common ancestor of two nodes in a tree structure?
20:52 ChoHag I know how I could do it, but there are bound to be more efficient algorithms.
20:53 hankache m: say pi.Rat.perl
20:53 camelia rakudo-moar 9a6b71: OUTPUT«<355/113>␤»
20:54 hankache m: say 355/113.perl
20:54 camelia rakudo-moar 9a6b71: OUTPUT«3.141593␤»
20:54 timotimo ChoHag: there's a trick of going up one from A, then one from B, then one from A again and from B again etc
20:54 timotimo so you'll ever only take 2x as long as the difference in length to the common ancestor is
20:54 ChoHag That's basically what I was going to do.
20:54 timotimo for everything else, you're going to have to have a bit of precomputed info to give you hints
20:54 ChoHag Until one of the lines reaches a node already reached on another.
20:55 timotimo aye
20:58 autarch jnthn: so are hyper and race just totally broken right now?
20:59 autarch from my ad hoc testing it seems like they are, but I can't really be sure
20:59 jnthn autarch: Looks like...I'll hopefully get a proper look at them in the next day or two
20:59 ZoffixW m: say now; sleep 2 for ^4 .hyper(batch => 1); say now;
20:59 camelia rakudo-moar 9a6b71: OUTPUT«Instant:1449435627.944545␤Instant:1449435627.957176␤»
20:59 ZoffixW :(
21:00 * jnthn should get some rest
21:00 timotimo good rest, jnthn!
21:00 timotimo and happy teaching :)
21:00 ZoffixW That's a good plan!
21:00 timotimo m: say "foobar".contains("ob")
21:00 camelia rakudo-moar 9a6b71: OUTPUT«True␤»
21:00 ZoffixW neat
21:02 jnthn Thanks, 'night o/
21:03 ZoffixW night
21:04 [Coke] 11 days or so until the original 2015.12 scheduled release date.
21:05 ZoffixW [Coke], is that the "Christmas" release?
21:05 dalek specs: 4c608a8 | skids++ | S17-concurrency.pod:
21:05 dalek specs: Sync design docs to Supply/Supplier split
21:05 dalek specs: review: https://github.com/perl6/specs/commit/4c608a8a28
21:05 [Coke] Trying to track down this abort trap on os x. ran perl6-valgrind-m, which itself died with:
21:05 [Coke] ./perl6-valgrind-m: line 11: 24053 Segmentation fault: 11
21:05 Skarsnik will be the 18
21:06 [Coke] was the 17th.
21:06 Skarsnik Yes 17, I can't count x)
21:06 [Coke] if time permits, I'll cut the release on the 25th.
21:07 timotimo [Coke]: that's probably the line that tries to exec perl6?
21:08 timotimo oh
21:09 timotimo fprintf can be interrupted in between characters?
21:10 nadim Good evening
21:10 ugexe m: my %x = :a(1), :b(2); my %z = :b(500), :c(600); %x .= append(%z); say %x.perl # cool that this works
21:10 camelia rakudo-moar 9a6b71: OUTPUT«{:a(1), :b($[2, 500]), :c(600)}␤»
21:11 timotimo hello nadim
21:11 nadim is everyone having a good day in P6 land?
21:11 nadim timotimo: hi :)
21:11 timotimo ugexe: troll people with :1a, :2b, :500b, :600c syntax!
21:11 * ZoffixW isn't having a good day
21:11 ZoffixW Well, maybe I am.
21:12 * ZoffixW chugs another beer
21:12 nadim Nothing a good night sleep can't fix I hope
21:12 nadim or beer
21:12 ZoffixW Just kinda annoyed that my 4 days off were wrecked by noise neighbours.
21:13 ZoffixW &noisy
21:13 timotimo m: $*OUT.print "hello"
21:13 camelia rakudo-moar 9a6b71: OUTPUT«5===SORRY!5=== Error while compiling /tmp/DCUyyqSQ3d␤Two terms in a row␤at /tmp/DCUyyqSQ3d:1␤------> 3$*OUT.print7⏏5 "hello"␤    expecting any of:␤        infix␤        infix stopper␤        statement end␤        statement modifie…»
21:13 ZoffixW m: $*OUT.print: "hello"
21:13 camelia rakudo-moar 9a6b71: OUTPUT«hello»
21:13 timotimo this TTIAR could try to figure out it has a method call before it and suggest $*OUT.print: "foo" instead
21:14 nadim ZoffixW: party with them!
21:14 ZoffixW nadim, they're a family of idiots with 3 fat children (and 4th on the way). I'm a semi-intelligent, semi-alcoholic loner... It just ain't gonna work :)
21:15 * timotimo watches a bunch of dots appear on his terminal
21:16 Skarsnik ZoffixW, I read 3 fat chicken x)
21:16 ZoffixW lol
21:16 cognominal eat them :)
21:16 ugexe have you tried ordering 50 pizzas to their door?
21:17 nadim ZoffixW: move to Sweden, the more north the better, nobosy will even talk to you ;)
21:17 ZoffixW nadim, that sounds so peaceful :)
21:17 TEttinger anonymous delivery of bulk high fructose corn syrup in convenient hamster-feeding-style tubes?
21:18 TEttinger more noise, then suddenly less
21:18 nadim ZoffixW: depends for how long ;)
21:19 nadim Well, I do have a little question, has someone decided about namespaces for modules or it is the same wild west as on CPAN?
21:19 Skarsnik same wild west
21:19 ZoffixW nadim, Wild West
21:19 psch well, only 16 of the 118 failing test files on r-j fail when ran with < make $file >... i suppose that's somewhat good
21:19 Skarsnik but yeah, should probably put some pointer like in the module writing guide? x)
21:19 ZoffixW actually wilder. CPAN used to have some sort of "module registration" in the past. We're starting from wildness from the start
21:19 * nadim brings out the old guns that make more smoke than harm from his chest
21:20 ZoffixW I really don't see much point in proper namespaces TBH
21:20 Skarsnik Net::IRC or IRC?
21:20 ZoffixW Skarsnik, just IRC... why is there Net:: ?
21:20 nadim the point id for people looking for modules, not for maniacs that need all in the right place
21:20 ZoffixW That's a good example actually... I had module names with 78 characters in them in P5
21:21 Skarsnik because that was the name of the IRC module on p5
21:21 ZoffixW nadim, but if I want IRC, I'll search for "IRC", not for "net"
21:21 RabidGravy there is tags in the META6 spec someday something can use it
21:21 ZoffixW And I won't be browsing the entire Net:: namespace in hopes I find something
21:21 nadim then you will find Net::IRC
21:21 ZoffixW RabidGravy, or that too
21:22 nadim stmuk: are you awake?
21:22 hankache why does the "Modules" link at the bottom of Perl6.org point to perl6.org/whatever?
21:22 Skarsnik I have a module in writing, I don't know how to name it x) I could use Discord since it's about the Discord App x)
21:23 nadim I am almost done with my first module, I need to give it a name soon, or I'll continue hacking in the miserable structure I have now
21:24 nadim Skarsnik: most often those went into App::Whatnot::YourStuff
21:24 RabidGravy need 32 modules still before christmas ;-) so get with the naming
21:24 Skarsnik lol
21:24 bjz joined #perl6
21:25 masak nine: by the way, 007 isn't currently broken or anything. it was an easy revert to get 007 back to passing.
21:25 masak nine: I'm currently trying to partially apply the commit in various ways to see if I can narrow down what causes things to fail.
21:25 Skarsnik I can't make it my mind for name/class name like the main class is Discord::App but the rest is Discord::Guild Discord::User... so how to name this x)
21:27 dalek perl6.org: ff30cac | (Zoffix Znet)++ | includes/footer:
21:27 dalek perl6.org: Link "Modules" in footer to eco site instead of /whatever (hankache++)
21:27 dalek perl6.org: review: https://github.com/perl6/perl6.org/commit/ff30cac6ab
21:27 ZoffixW Skarsnik, Discord::App => Discord.pm6 ?
21:28 nadim Data::Dump was nice as a to category but stmuk sat his module square on it, now we all have to make under modules that stop him to add anything :)
21:29 nadim there's a Data::Dump::Perl6, I am adding Data::Dump::Tree
21:29 ZoffixW .oO( Dump::And::Dumper )
21:29 nadim ZoffixW: yes, Bleah
21:30 Skarsnik There is a Data::Dump too? x)
21:30 [Coke] ask .timtoady if it's late enough to update our HEAD revision to v6.c
21:30 lizmat nadim: in Perl 6 namespace collissions are not an issue
21:30 [Coke] .ask timtoady if it's late enough to update our HEAD revision to v6.c
21:30 yoleaux [Coke]: I'll pass your message to timtoady.
21:30 nadim nice to hear
21:30 ZoffixW Despite the silliness, it's actually my most-used module and the only one I have bound to a keyboard shortcut :) https://metacpan.org/pod/Acme::Dump::And::Dumper
21:30 Skarsnik I should write my dumb module idea I had for perl5: Acme::WTF, that trow random WTF? OMG!! in front of die message
21:31 ZoffixW Skarsnik, do it :)
21:31 ZoffixW lizmat, I'm curious how ambiguities would be resolved. If I have "use Foo::Bar" in my code and there are Foo::Bar by two authors, which one wins?
21:31 nadim yeah! as if it wasn't enough with the half zillion new error message we, poor newbies, have to learn
21:31 lizmat if you have both installed, the use statement will fail at compile time
21:32 ZoffixW Ah, lizmat++ thanks
21:32 nadim that's not what I would call "not an issue"!
21:32 ZoffixW It what I'd call "break software X by installing a new module for software Y" :)
21:33 lizmat nadim: it will be a Perl6 best practice to be as specific as possible in your -use- statements
21:33 ZoffixW Time will tell I spose
21:33 lizmat nadim: because it will free you from upgrade worries
21:33 nadim I am sure it will be fine :) where's the documentation? ;)
21:34 hankache documentation who?
21:34 hankache ;)
21:35 ZoffixW Well, after 2 days of blood and sweat, I finally have an IRC bot that parses messages and respond to server's PING and thus says alive \o/
21:35 Skarsnik lol
21:35 hankache ZoffixW++
21:35 Skarsnik nice :)
21:35 timotimo PING is the hardest part
21:35 ZoffixW heh
21:36 ZoffixW Well, it was, kinda. PING responder is a Plugin. So making PING work, means any other plugin can work now too :)
21:37 * ZoffixW will be showing off Perl 6 at the Freenode's new year party, so that's what I'm making
21:37 ZoffixW a New Years bot
21:38 RabidGravy :)
21:39 timotimo the analysis tool that combines "log of lines hit" with a source file to generate an annotated html file of the original source ... is quite slow
21:39 Skarsnik wtf hurd, why you stop booting :(
21:40 timotimo to be fair, only about 1/8 of the lines would actually be interesting, so it has to do a lot of work skipping stuff
21:41 timotimo adn just as i say that, it's done!
21:41 ZoffixW :P
21:41 hankache good night #perl6
21:42 lizmat hankache: good night
21:42 RabidGravy toodlepip
21:42 dalek roast: 2324965 | usev6++ | integration/advent2014-day05.t:
21:42 dalek roast: Bring tests in line with new Supply API
21:42 dalek roast:
21:42 dalek roast: cmp. Rakudo commit a8231f14b2 and
21:42 dalek roast: https://6guts.wordpress.com/2015/12/05/getting-closer-to-christmas/
21:42 dalek roast: review: https://github.com/perl6/roast/commit/23249657cd
21:42 autarch so I'm thinking that maybe I should write an article about Perl 6 pod instead of supplies, is anyone else planning to write about that?
21:43 RabidGravy not me
21:43 Sgeo_ joined #perl6
21:43 autarch I actually understand POD well enough to write about it, I think ;)
21:43 ZoffixW autarch, that sounds like a good idea. P6 pod is still a mystery, at least to me :)
21:43 Skarsnik For me too x)
21:43 autarch I guess the only question is how much of it is still in flux at the moment
21:43 znpy joined #perl6
21:43 autarch there was some talk of tweaking how the compiler deals with it a few weeks back
21:43 * ZoffixW still waits for anyone to do anything about GitHub P6 pod: https://github.com/perl6/doc/issues/167
21:44 autarch but I _think_ it was more along the lines of "let's change a few things", not "let's change everything"
21:44 psch autarch: "the difference between what's proposed in S26 and what's tested in roast/S26-*" is what i'd guess is still in flux
21:45 psch well, plus potential tickets on RT...
21:45 autarch psch: I think there's a fair bit of stuff in S26 that does work but isn't tested
21:45 autarch and also some things that are very obviously bugs which I've reported
21:47 dalek rakudo/nom: 1b0ede7 | lizmat++ | src/core/Supply.pm:
21:47 dalek rakudo/nom: Fix indenting
21:47 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/1b0ede79d4
21:47 dalek rakudo/nom: a1dc336 | lizmat++ | src/core/Supply.pm:
21:47 dalek rakudo/nom: Make sure done is passed on from original Supplier
21:47 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/a1dc33694f
21:47 psch autarch: hm, right, coverage is probably less than it could (or should) be :/
21:47 timotimo ugh, the html isn't cool at all
21:48 timotimo ZoffixW: can i interest you in helping me do html stuff? :)
21:48 Skarsnik m: Core.say "ehllo";
21:48 camelia rakudo-moar 9a6b71: OUTPUT«5===SORRY!5=== Error while compiling /tmp/gT4r3BTaS4␤Two terms in a row␤at /tmp/gT4r3BTaS4:1␤------> 3Core.say7⏏5 "ehllo";␤    expecting any of:␤        infix␤        infix stopper␤        statement end␤        statement modifier…»
21:49 leont joined #perl6
21:49 RabidGravy m: Core.say: "ehllo";
21:49 camelia rakudo-moar 9a6b71: OUTPUT«5===SORRY!5=== Error while compiling /tmp/0qc394lwzB␤Undeclared name:␤    Core used at line 1. Did you mean 'Code'?␤␤»
21:49 timotimo i have a div with style="whitespace: pre-wrap" ... that's supposed to keep whitespace from the source around :\
21:50 Skarsnik m: IO.say "ehllo";
21:50 camelia rakudo-moar 9a6b71: OUTPUT«5===SORRY!5=== Error while compiling /tmp/51RQICT0DO␤Two terms in a row␤at /tmp/51RQICT0DO:1␤------> 3IO.say7⏏5 "ehllo";␤    expecting any of:␤        infix␤        infix stopper␤        statement end␤        statement modifier␤…»
21:50 Skarsnik m: IO.say("ehllo");
21:50 camelia rakudo-moar 9a6b71: OUTPUT«Cannot call say(IO: Str); none of these signatures match:␤    (Mu $: *%_)␤  in any  at gen/moar/m-Metamodel.nqp:1693␤  in block <unit> at /tmp/0zg9cj3TiQ:1␤␤»
21:51 Skarsnik m: Mu.say("ehllo");
21:51 camelia rakudo-moar a1dc33: OUTPUT«Cannot call say(Mu: Str); none of these signatures match:␤    (Mu $: *%_)␤  in block <unit> at /tmp/dodZEwjDef:1␤␤»
21:51 psch grml
21:51 psch so i was wondering just now why camelia isn't current on j:
21:51 psch and it's because i forgot bumping the NQP_REVISION once again /o\
21:52 psch well, assuming she would be up to date if it can build
21:52 psch which it can, and she's on a commit that's not even particularly old
21:52 psch soo, yeah, i'll bump that i guess
21:52 Skarsnik m: Execption.die("Hello");
21:52 camelia rakudo-moar a1dc33: OUTPUT«5===SORRY!5=== Error while compiling /tmp/Jw1yaupu7u␤Undeclared name:␤    Execption used at line 1. Did you mean 'Exception'?␤␤»
21:52 Skarsnik m: Exception.die("Hello");
21:52 camelia rakudo-moar a1dc33: OUTPUT«Too many positionals passed; expected 1 argument but got 2␤  in block <unit> at /tmp/fBvBLp2yaV:1␤␤»
21:53 ZoffixW timotimo, I have an X-amount of beers in my so..
21:53 * ZoffixW squints
21:53 dalek rakudo/nom: fdc6bd9 | peschwa++ | tools/build/NQP_REVISION:
21:53 dalek rakudo/nom: Bump NQP_REVISION for nqp-j lockfh fix.
21:53 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/fdc6bd958f
21:53 ZoffixW timotimo, right, supposed to.
21:53 Skarsnik *trie to figure how call the die/say routine from 'core'*
21:54 timotimo huh. the script wasn't terribly slow. i was just running it on the file that was the result before i sorted and uniq'd it!
21:54 psch m: sub say { put "nope" }; &CORE::say("yope")
21:54 camelia rakudo-moar a1dc33: OUTPUT«yope␤»
21:54 psch m: sub say($) { put "nope" }; &CORE::say("yope"); say
21:54 camelia rakudo-moar a1dc33: OUTPUT«5===SORRY!5===␤Argument to "say" seems to be malformed␤at /tmp/xXCH1TC6HS:1␤------> 3 { put "nope" }; &CORE::say("yope"); say7⏏5<EOL>␤Other potential difficulties:␤    Unsupported use of bare "say"; in Perl 6 please use .say if you mean…»
21:54 psch m: sub say($) { put "nope" }; &CORE::say("yope"); say "foo"
21:54 camelia rakudo-moar a1dc33: OUTPUT«yope␤nope␤»
21:54 psch Skarsnik: ^^^
21:54 timotimo which has 12925636 lines
21:54 Skarsnik Oh thx
21:54 ZoffixW huh? Somehow META.info highlighter in Atom knows which fields are valid and which ain't
21:55 Skarsnik lol nice
21:55 * ZoffixW suspects MadcapJack is being awesome on that one
21:55 ZoffixW timotimo, what was the html help?
21:56 timotimo i've got a <div> with whitespace: pre-wrap and a bunch of <span> in there to give me a bit of styling. but initial whitespace disappears :(
21:57 Skarsnik timotimo, you should push people to work on the qt profiler stuff x) (I would if I did not have already a lot of stuff to do :()
21:58 Ben_Goldberg joined #perl6
21:58 ZoffixW timotimo, use "pre" instead of "pre-wrap" ?
21:59 timotimo can try, but that didn't work before when i tried
21:59 timotimo i can upload that html thing
21:59 flussence pre-wrap should work there...
21:59 ZoffixW Doesn't work in my browser
22:00 ZoffixW Oh wait.. it works :S
22:00 ZoffixW wtf
22:00 ZoffixW timotimo, <style>*{white-space: pre-wrap}</style> works, to be more exact
22:01 ZoffixW timotimo, default value for it is "normal", not "inherit" so I'm guessing your spans aren't getting pre-wrapped
22:01 timotimo well, i set span to have that, too
22:01 ZoffixW 8shrug*
22:02 timotimo you'll has a .html file soon
22:02 timotimo it's only 3.6 MB, so it'll be up very soon ... not!
22:02 ZoffixW :S
22:02 timotimo http://t.h8.lv/core_setting_report.html
22:02 ZoffixW https://twitter.com/xbs/status/626781529054834688
22:03 timotimo huh
22:03 pecastro joined #perl6
22:03 timotimo "unknown property name: whitespace"
22:03 ZoffixW timotimo, it's white-space
22:03 timotimo oh?!
22:03 timotimo well...!
22:03 ZoffixW :D
22:04 ZoffixW That file froze my browser :(
22:04 snarkyboojum joined #perl6
22:04 timotimo only 35k lines, dood
22:05 timotimo try refreshing
22:05 timotimo it's a bit smaller now
22:05 ZoffixW nah
22:05 timotimo perhaps i want to put in javascript to generate the line nubers, so it doesn't have to be in the source file?
22:05 lizmat .tell arnsholt I've given up on fixing the merge/revert mess that killed %?RESOURCES
22:05 yoleaux lizmat: I'll pass your message to arnsholt.
22:05 lizmat .tell nine I've given up on fixing the merge/revert mess that killed %?RESOURCES
22:05 yoleaux lizmat: I'll pass your message to nine.
22:05 ZoffixW timotimo, I think doing so would make things worse
22:06 timotimo oh. perhaps.
22:06 ZoffixW One word: pagination
22:06 timotimo lizmat: http://t.h8.lv/core_setting_report.html - check it out! this is a coverage report of what the spec test suite hits in the core setting! it's probably also wrong in places and it has no idea about lines that spread over multiple lines!
22:06 flussence timotimo: if they're one line per span, I'm pretty sure you could make the numbers appear using pure css...
22:06 timotimo flussence: patches welcome :)
22:07 flussence already on it :)
22:07 autarch joined #perl6
22:07 lizmat timotimo: so red is not tested ?
22:07 timotimo https://gist.github.com/timo/47c79bb05d89ea5b19c5
22:07 ZoffixW timotimo, span:before {  counter-increment: num; content: counter(num) ": "; }
22:07 timotimo lizmat: that's how i'd interpret it. but it seems weird in some places already :)
22:07 ZoffixW (untested)
22:08 flussence Zoffix++ got there first :)
22:08 lizmat timotimo: well, if any line in a sub is covered, surely the line with sub is as well ??
22:09 timotimo like: how the fucking hell does trait_mod:<is> with $parent only have the X::Inheritance::Unsupported line covered?
22:09 timotimo lizmat: i use the line number annotations we have in the .moar file which only gets generated wherever there's code and only for the start of a BB .. it can still be improved quite a bit
22:09 flussence lazy evaluation?
22:09 timotimo but i have no good way to figure out which lines are "dead"
22:09 dalek specs: c76134b | PerlJam++ | S12-objects.pod:
22:09 dalek specs: minor word dup
22:09 dalek specs: review: https://github.com/perl6/specs/commit/c76134b9b1
22:10 timotimo but the } is "covered"
22:10 timotimo so maybe we just have an off-by-one.
22:10 lizmat timotimo: looks promising!
22:11 timotimo i can perhaps cause line numbers to be generated for the code that gets made for signature handling; that'd probably get most sub lines green
22:11 lizmat fwiw, comment lines don't have to be in this, right ?
22:11 timotimo yah, i *think* all lines are offset by a single line
22:12 timotimo flussence: so it actually works? what zoffix pasted?
22:12 cygx joined #perl6
22:12 cygx o/
22:12 yoleaux 02:38Z <Zoffix> cygx: would be nice to mention in https://github.com/cygx/p6-nqp-eval why one would want to EVAL :lang<nqp>; as opposed to regular EVAL.... at least for outsiders like me to make sense of the module :)
22:13 flussence timotimo: if it doesn't, you could be lazier and s/span/li/ :)
22:13 cygx someone should fix the Day 7 advent post before it goes live
22:13 Ben_Goldberg joined #perl6
22:13 cygx the code examples display &amp;quot; instead of '
22:13 cygx ShimmerFairy: ^^
22:13 timotimo pff. li.
22:14 Skarsnik Damn, there is no croak?
22:14 Ben_Goldberg joined #perl6
22:15 flussence Skarsnik: &die gives a backtrace in p6, no need for croak any more
22:15 Skarsnik well croak was nice to blame the calling code
22:15 Ben_Goldberg joined #perl6
22:15 timotimo flussence, ZoffixW, now i get a whole bunch of 1: and no newlines ...
22:15 flussence Skarsnik: «sub () is hidden-from-backtrace» does that now too
22:16 flussence timotimo: ow.
22:16 ZoffixW timotimo, ah, you need a counter-reset on the div for it to work. here: https://jsfiddle.net/tjazsn0e/
22:17 Skarsnik it's.... glorious
22:17 Skarsnik root@testperl6:~/piko/acme-wtf# perl6 -I lib -e 'use Acme::WTF; die "fuck it"'
22:17 Skarsnik WTF?! fuck it
22:17 Skarsnik in block <unit> at -e:1
22:17 Ben_Goldberg joined #perl6
22:17 ZoffixW heh
22:17 flussence ignore me and listen to zoffix, I've gotten kinda rusty at web stuff
22:17 flussence (I really need to fix that)
22:17 ZoffixW Using <ol> and a bunch of <li>s makes more sense to me than a <div> with a bunch of <span>s FWIW :)
22:18 timotimo ZoffixW: i can change it, of course
22:18 lolisa joined #perl6
22:18 timotimo and ... yeah ... very bad performance on that page
22:18 ZoffixW That should also cut down on the amount of markup :)
22:19 ZoffixW m: ('div' ~ 'span').chars - ('ol' ~ 'li').chars
22:19 camelia rakudo-moar fdc6bd: OUTPUT«WARNINGS:␤Useless use of "-" in expression ".chars - ('ol' ~ 'li').chars" in sink context (line 1)␤»
22:19 ZoffixW m: say ('div' ~ 'span').chars - ('ol' ~ 'li').chars
22:19 camelia rakudo-moar fdc6bd: OUTPUT«3␤»
22:19 timotimo wow.
22:19 flussence in the meantime, I've been trying to run `panda smoke`: a handful of modules deadlock on precomp after hitting some error or other during normal compilation, and when it gets to v5 panda itself just gets stuck in a busy loop.
22:20 ZoffixW Yeah, smoke smoked just 19 modules for me last time I tried and just sat there the entire night on some JSON module
22:20 timotimo ZoffixW: can you f5 on that page and show me why the whitespace gets lost again?
22:21 timotimo ZoffixW: JSON::Fast used to busy-loop some time ago because moarvm stopped throwing when eqat goes over the string length
22:22 flussence timotimo: s/whitespace/white-space/
22:22 timotimo damn
22:22 timotimo that got reverted?
22:22 cygx flussence: note that v5 is busted right now
22:22 timotimo thank you :)
22:22 cygx flussence: I've started to do something about that in the unrot branch
22:23 cygx it predates the merger of automatic precompilation, though
22:23 ZoffixW flussence++ # I looked at it and didn't even notice the "whitespace" issue :)
22:23 ZoffixW timotimo, you also have an opening <li> but a closing </span> :)
22:23 timotimo oops
22:23 Ben_Goldberg joined #perl6
22:23 AlexDaniel joined #perl6
22:24 ZoffixW timotimo, FWIW, you can omit </li> (it's optional), to save on some markup
22:24 timotimo newest version is up with the off-by-one work-arounded
22:24 timotimo ugh, that looks super shitty now
22:24 ZoffixW timotimo, and maybe change convered/uncovered to c/u for same reasons
22:24 timotimo ah, yeah
22:26 timotimo can you tell me how to make the list items fit snug again?
22:26 RabidGravy cygx, I think that nine's change to make Inline::Perl5 (and thus %?RESOURCE) work overlapped with amsholt's change which lizmat reverted thus gone boom
22:26 flussence I think removing the white-space: pre on <ol> should fix that
22:27 timotimo oh?
22:27 ZoffixW timotimo, are you able to generate a much smaller file? :) My browser locks up when I try to enable my web dev tools
22:27 timotimo ah, sorry
22:27 ZoffixW Or what flussence said :)
22:27 flussence as long as it's on <li>, it'll keep the indent
22:27 timotimo yeah, i can do that. gimme a sec.
22:27 timotimo looks better now, yeah
22:27 flussence .oO( the great thing about chromium's engine is the browser UI remains perfectly responsive even when nothing inside it is :D )
22:28 timotimo :)
22:28 cygx RabidGravy: not Inline::Perl5, v5
22:28 cygx not the same thing at all
22:29 RabidGravy ah okay, sorry only half reading
22:29 timotimo only 1.7 MB
22:30 timotimo OK, now how do i make the highlighting prettier?
22:30 Skarsnik use HightLight::Pretty?
22:30 timotimo i'm thinking it'd be nice to have a gradient to make it less intense to the left
22:30 timotimo also, how about some particle effects?
22:30 timotimo the mouse cursor should spew sparkly stars every time it moves between a red and a green line
22:30 Skarsnik xD
22:30 autarch seen moritz_
22:30 timotimo ideally, these "lines" would wobble when the mouse penetrates such a barrier
22:31 autarch c'mon, bot, y u no love me?
22:31 flussence .seen moritz_
22:31 yoleaux I saw moritz_ 20:24Z in #perl6: <moritz_> m: BEGIN { say $*W.^name }
22:31 autarch ah
22:31 timotimo also, when every line currently on the screen is green, all letters ought to dance a happy dance
22:31 cygx hm... - apparently, wordpress does not recognize HTML entities in [code] blocks...
22:31 autarch oh, I guess he's probably asleep
22:31 autarch .tell moritz_ I need access to the advent calendar blog to post my article at some point
22:31 yoleaux autarch: I'll pass your message to moritz_.
22:32 ZoffixW autarch, what's your username, I can give you it
22:32 timotimo oh, if you have code, someone in here had a tool (or rather: a how-to) to get prettified code into the shitty wordpress editor
22:32 autarch ZoffixW: autarch, preferably
22:32 autarch timotimo: yes, there will be code
22:33 timotimo who was it again?
22:33 ZoffixW autarch, "WordPress.com username does not exist or invalid email address."... You can either /msg me your email address and after I add you WP will ask you to register an account, or you can do that first and give me the username you chose :)
22:33 flussence timotimo: there's an unencoded «postfix:<i>» on line 30047 that messes up the output
22:34 timotimo ah, that's what it is.
22:34 autarch ZoffixW: oh, this is wordpress.com - I'm houseabsolute there - some rotten rotter took my preferred nick before I could
22:34 timotimo i have a .subst("<", "&lt;") in there
22:34 ZoffixW timotimo, you sure there was someone? The only thing I know of is this method: http://irclog.perlgeek.de/perl6/2015-12-02#i_11647545
22:34 timotimo oh, it needs to be :g
22:34 flussence needs a :g
22:34 timotimo that's the one
22:34 ZoffixW autarch, Invitation(s) sent.
22:34 autarch I thought you were just asking me what account name I wanted, not what I already had ;)
22:34 autarch ZoffixW++
22:34 ZoffixW .tell moritz_ never mind, I sent autarch an invite
22:34 yoleaux ZoffixW: I'll pass your message to moritz_.
22:35 timotimo the next changes for this thingie will be in moarvm
22:35 karim32 joined #perl6
22:36 timotimo getting more green lines
22:37 ming_ joined #perl6
22:38 karim32 when iterating over a key-value structure, how do I get access to the 1st and 2nd element in "map"? I know about "_$" which is the 1st element.
22:38 karim32 $_
22:39 krakan joined #perl6
22:40 autarch of course I'm greylisting wordpress.com :(
22:40 autarch but it'll get here eventually
22:41 timotimo karim32: are you iterating over a hash? if so, are you using .pairs or .kv or something like that?
22:42 timotimo m: my %h = :1a, :2b, :3c; %h.map({ say "$^a, $^b" })
22:42 camelia rakudo-moar fdc6bd: OUTPUT«a    1, c    3␤Too few positionals passed; expected 2 arguments but got 1␤  in block <unit> at /tmp/qzn9FcaITA:1␤␤»
22:42 timotimo ah, that gives you the Pair objects
22:42 timotimo m: my %h = :1a, :2b, :3c; %h.map({ say "$_.key yay $_.value" })
22:42 camelia rakudo-moar fdc6bd: OUTPUT«a    1.key yay a     1.value␤c       3.key yay c     3.value␤b       2.key yay b     2.value␤»
22:42 timotimo m: my %h = :1a, :2b, :3c; %h.map({ say "$_.key() yay $_.value()" })
22:42 camelia rakudo-moar fdc6bd: OUTPUT«a yay 1␤c yay 3␤b yay 2␤»
22:42 karim32 tnx
22:42 timotimo yw
22:43 cygx ok, I went ahead and fixed the Day 7 posting
22:43 cygx let's hope I didn't mess anything up
22:43 cygx a history of my changes can be found at https://gist.github.com/cygx/0ac6aa9922627cc2c2ea
22:44 skids m: my @a = <a b c>; @a.kv.map({ "$^a $^b".say }); @a.kv.map(-> $a, $b { "$a $b".say }); # 2 different ways to make your map closure 2-arity
22:44 camelia rakudo-moar fdc6bd: OUTPUT«0 a␤1 b␤2 c␤0 a␤1 b␤2 c␤»
22:44 timotimo http://t.h8.lv/nqpcore_coverage_report.html <- ZoffixW, much smaller file
22:45 cygx .tell ShimmerFairy I had to do some emergency surgery on your Day7 posting as something went wrong with HTML-encoding the code samples; cf https://gist.github.com/cygx/0ac6aa9922627cc2c2ea for what I did in case I messed up somewhere
22:45 yoleaux cygx: I'll pass your message to ShimmerFairy.
22:45 ZoffixW cool
22:46 AlexDaniel hmmm a post about unicode
22:46 AlexDaniel why does it use '' instead of ‘’? :)
22:47 AlexDaniel or <<>> instead of «»
22:48 dalek ecosystem: 9fedcd8 | (Sylvain Colinet)++ | META.list:
22:48 dalek ecosystem: A step toward 500 modules for X-MAS, https://github.com/Skarsnik/acme-wtf
22:48 dalek ecosystem: review: https://github.com/perl6/ecosystem/commit/9fedcd8fc8
22:48 Skarsnik oh
22:48 Skarsnik it was the real ecosystem, not my fork xD
22:48 masak .tell nine this may help a bit, too: https://gist.github.com/masak/32f236bca8f2857d82fc -- I spent some time building various combinations of parts of the commit that fails.
22:48 yoleaux masak: I'll pass your message to nine.
22:49 masak yoleaux: that's awfully kind of you. thanks.
22:49 cygx AlexDaniel: it does use « » in places
22:49 RabidGravy Skarsnik++ :)
22:49 cygx specifically, in the comparison of unicode and Texas variants
22:49 AlexDaniel cygx: ah right! Indeed!
22:50 ZoffixW heh
22:50 ZoffixW Skarsnik++
22:50 Skarsnik and forget to put Test::META in the depend ><
22:52 jdv79 ZoffixW: gh pod6 is likely not happening any time soon, right?
22:52 ugexe generally you would put authoring tests in /xt and not add modules used by those tests to your dependencies
22:53 dalek rakudo/nom: 51bc6c3 | lizmat++ | src/core/asyncops.pm:
22:53 dalek rakudo/nom: We lost Supply.await, it's .wait now
22:53 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/51bc6c375d
22:53 dalek rakudo/nom: 7ef08c8 | lizmat++ | src/core/Supply.pm:
22:53 dalek rakudo/nom: We need a preserving Supplier
22:53 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/7ef08c8e37
22:53 Skarsnik more people should use Test::META x)
22:53 ZoffixW jdv79, if only based on my not working on it and not being interested on working on it ¯\_(ツ)_/¯ But GitHub did tell me that if anyone wants to make their code detect P6 pod properly they're open to it :)
22:53 ugexe the end user shouldnt have to test the meta file
22:53 ugexe you as the author should
22:54 znpy joined #perl6
22:54 ZoffixW jdv79, I think Step 1 would be making GitHub simply not choke on P6 pod and render it as raw file with line numbers
22:56 jdv79 sounds easy enough.  get a newbie to do it:)
22:56 jdv79 detecting should be simple.  rendering it.  meh.
22:58 geraud Is there anyone with tuits on CompUnit::Repository::Installation whose grey cells I could borrow for a while?
22:58 nadim I get "seq has already been iterated ..." how do I reset the iterator on it?
22:59 lizmat geraud: I'm afraid nine is offline, and my grey cells are about to get very mushy
22:59 Skarsnik jdv79, probably need a pod6tohtml that is not in perl6 x)
22:59 jdv79 nadim: its one shot. not possible
22:59 jdv79 you have to prevent that before it happens
22:59 jdv79 try .cache ?
23:00 nadim what would .cache do, I can check but it's faster if you tell me
23:00 jdv79 Skarsnik: pod6 require the compiler
23:00 Skarsnik well that pretty infortunate x)
23:00 jdv79 hence my comment
23:00 jdv79 or the majority of the sentiment
23:01 jdv79 it'll be "a while"
23:01 karim32 is using %h<key> syntax for referring to a key in hash more recommendable than %h{"key"} ?
23:01 Skarsnik it's better for the eyes :)
23:02 nadim is there a way to grep out elements of a list in-place?
23:02 jdv79 karim32: this is perl, you know
23:02 timotimo nadim: @foo .= grep is the closest you'll get, i'm afraid
23:02 nadim eg: not do $e = $e.grep: none(Int)
23:02 Skarsnik but I think if you write %h<key with whitespace> you get a list of value ?
23:02 timotimo otherwise you'd have to go a-splicn'
23:02 timotimo Skarsnik: yes
23:02 geraud lizmat: thanks. Sorry to be pushy, but just before they liquify completely, if you had to guess what CompUnit::Repository::Installation.files($file) does, what would be your best case? I'm still trying to parse the body of the method, but I'm miserably failing. Any pointer would help me trying to investigate why I can't build p6doc's index.
23:03 nadim timotimo: grep is what got me in the "seq has already been iterated ..." to start with
23:04 timotimo oh?
23:04 timotimo will you paste a bit of code for us?
23:04 lizmat geraud: it attempts to find the given file name in the <files> section of any installed distribution
23:04 lizmat is what my guess is
23:04 geraud lizmat: s/best case/best bet/. liquifying too.
23:05 psch m: my $a = [1,2,3,4]; $a = [$a.grep(* %% 2)]; say $a
23:05 camelia rakudo-moar fdc6bd: OUTPUT«[2 4]␤»
23:05 psch nadim: grep isn't the problem, the $ sigil is
23:06 psch nadim: it basically says "i know if i have to treat the stuff i put in or get as a List manually"
23:06 psch s/get/get out/
23:06 nadim ok
23:06 psch m: my @a = 1,2,3,4; @a .= grep( * %% 2 ); say @a # no trickery here
23:06 camelia rakudo-moar fdc6bd: OUTPUT«[2 4]␤»
23:07 nadim and if I have $a, how do I tranform it? @()?
23:07 psch nadim: did you see my first eval in the last few minutes?
23:08 nadim I see [ around the lot]
23:08 jferrero 2
23:08 psch nadim: right, because i assumed you have an Array at the start.  if you don't (and don't want after) you can @() to get a List
23:09 psch m: my $a = [1,2,3,4]; $a = @($a.grep(* %% 2)); say $a.WHAT
23:09 camelia rakudo-moar fdc6bd: OUTPUT«(List)␤»
23:09 psch in this example maybe weird, 'cause we start with an Array and grep ourselves a List from that Array... vOv
23:09 psch i'm assuming consistency there might matter
23:11 nadim psch: thanks, even after a few days I still fin this a bit ... upsetting, I have no problems with a zillion references in reference but Lists, Sea, Hashes, Indexed Hashes, and whatnot make the whole thing unsigtly till it the patterns get burned in my brain
23:12 psch nadim: well, the easiest way around it is to be consistent with using the right sigil...
23:13 jdv79 [Coke]: first i'm hearing about ribasushi's thing as well.  idk how i feel about it though.  there's a lot to read...
23:14 lolisa joined #perl6
23:15 geraud lizmat : thank you very much. Now, am I correct to assume that if :$name isn't provided, the method will blow up?
23:15 geraud m: use nqp; my $name; say nqp::sha1($name);
23:15 camelia rakudo-moar 7ef08c: OUTPUT«Cannot unbox a type object␤  in block <unit> at /tmp/GDjiv8F3TA:1␤␤»
23:15 geraud like that?
23:15 nadim psch: absolutely, I'll refactor the whole thing tomorrow and see if I can wrap my head around that
23:15 lizmat geraud: looks like
23:16 geraud okay, now I'm going somewhere.
23:16 nadim psch: absolutely, I'll refactor the whole thing tomorrow and see if I can wrap my head around that
23:18 dalek ecosystem: deb7bea | (Zoffix Znet)++ | META.list:
23:18 dalek ecosystem: Add IRC::Client to eco
23:18 dalek ecosystem:
23:18 dalek ecosystem: See https://github.com/zoffixznet/perl6-IRC-Client
23:18 dalek ecosystem: review: https://github.com/perl6/ecosystem/commit/deb7bea0b4
23:18 psch nadim: good luck :)
23:19 jdv79 plugins?  do people still use that term?  feels dated.
23:20 AlexDaniel jdv79: what's the new term?
23:20 jdv79 extension, addon, idk...
23:20 jdv79 it just feels like i would avoid it.  /me is just rambling...
23:20 jdv79 module 
23:20 Skarsnik Zoffix, you forget to put a countdown for x-mas 500 modules!
23:21 ZoffixW Plugins is dated?
23:21 * ZoffixW laughs
23:21 jdv79 are we going to get a rush of bs dists just o hit 500?
23:21 ZoffixW I don't care even if we do.
23:21 ZoffixW But I do plan of releasing another one shortly
23:21 RabidGravy but it would be cool
23:21 ZoffixW 2 more actually
23:22 ZoffixW Google::Time and IRC::Client::Plugin::HNY
23:22 Skarsnik I have 2 other planned x)
23:22 ZoffixW And maybe IRC::Client::Plugin::BotLink
23:22 ZoffixW (though I don't yet know how to make that one work in more than 1 channel)
23:22 lucasb joined #perl6
23:23 RabidGravy 27 modules needed now :)
23:23 AlexDaniel ZoffixW: hmm what's the difference between IRC::Client and Net::IRC::Bot?
23:24 AlexDaniel (and why are these in different namespaces?)
23:24 Skarsnik it has plugins? x)
23:24 AlexDaniel Net::IRC::Bot has plugins too
23:25 jdv79 I'm tempted to add some dup named dists just to what breaks
23:25 ZoffixW AlexDaniel, I looked at it and your comment kinda put me off using it for my New Years bot: https://github.com/TiMBuS/Net--IRC/issues/15#issuecomment-154736548
23:25 AlexDaniel well!… :)
23:25 RabidGravy they work differently, the authors have different ideas about the interface, stuff
23:25 ZoffixW AlexDaniel, and as I've recently mentioned above, I see no reason for IRC stuff to be in Net:: namespace.
23:25 ZoffixW Just more characters to type
23:26 RabidGravy it's too early to get thinged up about "namespaces" unless someone does something stupid at the top level
23:26 ZoffixW AlexDaniel, and I think a more real reason for IRC::Client is... I don't know Perl 6. I want to learn Perl 6. And IRC stuff seems like a good pathway to acquire experience, so hence my doing-it-from-scratch approach.
23:27 RabidGravy which is good
23:27 ZoffixW That's how I learned P5. And I think I can apply what I hated about POE::Component::IRC to my design of the core IRC stuff
23:28 * ZoffixW & # commuting
23:28 AlexDaniel ZoffixW: hmm 「interval()」 thing kinda makes sense, I think. But is there any way to send stuff from another thread?
23:28 jdv79 well, i am seriously considering renaming and adding my URI module.  might be too disruptive though.  probably try that locally first.
23:28 AlexDaniel just in time!
23:28 jdv79 would have to finish it first though:(
23:34 AlexDaniel .tell ZoffixW basically I care about two things: 1) Can I do async stuff? and 2) If one of the plugins receives a message and interprets it in some way, is there any way for it to tell other plugins to ignore this message? Because when making a bot you can throw in a bunch of stuff, but you probably don't want your bot to answer twice for some message if both plugins trigger on it. That being said, sometimes you want it…
23:34 yoleaux AlexDaniel: I'll pass your message to ZoffixW.
23:34 masak 'night, #perl6
23:34 jdv79 Even if someone throws up a dumb top level ns its much less an issue with auth
23:34 AlexDaniel .tell ZoffixW implement these and I will be a happy man
23:34 yoleaux AlexDaniel: I'll pass your message to ZoffixW.
23:34 dalek rakudo/nom: f24d2e0 | lizmat++ | src/core/Promise.pm:
23:34 dalek rakudo/nom: Not sure it's wise to do junctions inside locks
23:34 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/f24d2e0f1f
23:38 timotimo lizmat: the optimizer should really have turned that into the same code you manually wrote
23:38 * timotimo heads to sleep
23:38 timotimo gnite everyone!
23:38 lizmat good night, timotimo
23:39 zengargoyle hrm... if «use Module:auth<github:zengargoyle>;» is to be a thing, with a decent module-to-repo mapping... modules could be automagically found and installed on demand.
23:40 jdv79 timotimo: later
23:40 lizmat zengargoyle: yes, that's the idea
23:40 lizmat it's a pluggable design  (to use an old meme)
23:40 MadcapJake joined #perl6
23:41 AlexDaniel .tell ZoffixW maybe there has to be some sort of big dispatch thing with priorities and stuff, I don't know actually. But basically the reason I said that Net::IRC::Bot needs some reworking was because my plugins were conflicting and I was unable to find any non-ugly solution to this. One simple example: you want your bot to reply to “MyBot: !commands” message and at the same time you might want it to reply to any other message that was
23:41 AlexDaniel not handled, e.g. “MyBot: hi bot” should answer with “Please don't talk to me!”
23:41 yoleaux AlexDaniel: I'll pass your message to ZoffixW.
23:41 AlexDaniel dammit
23:42 AlexDaniel .tell ZoffixW not handled, e.g. “MyBot: hi bot” should answer with “Please don't talk to me!”. That's just something to consider, maybe it will give you some ideas for better implementation.
23:42 yoleaux AlexDaniel: I'll pass your message to ZoffixW.
23:43 jdv79 wonder if you could just model that with MMD and the like
23:44 AlexDaniel .oO( maybe it would have been better if I wrote an email )
23:45 AlexDaniel hmm why are we using .oO
23:45 p6_nb joined #perl6
23:45 AlexDaniel ????( maybe because this does not render that well )
23:46 AlexDaniel .u ????????
23:46 yoleaux No characters found
23:47 AlexDaniel .u ????
23:47 yoleaux No characters found
23:47 AlexDaniel yoleaux: you are old, aren't you?
23:47 AlexDaniel .u ????
23:47 yoleaux No characters found
23:48 ugexe `no precompilation;` is not doing anything for me... the commit earlier today made it seem like it should work?
23:51 lizmat ugexe: perhaps we lost that in the merge mess :-(
23:53 p6_nb hi there. will there be windows binaries for 2015.11 rakudo? thanks in advance ...
23:54 lizmat p6_nb: I assume you mean for Rakudo Star ?
23:54 ugexe lizmat: the code is still there so its probably deeper than that
23:54 p6_nb lizmat: correct
23:55 lizmat all core devs are pretty busy or vast asleep...   so I'm not sure
23:56 ugexe `RAKUDO_MODULE_DEBUG=1 perl6 -e 'use Test;'` maybe Test isnt the best example, but it does the same for all modules in -Ilib when testing against them
23:56 lizmat in fact, I'm going to migrate from group 1 to group 2 myself now
23:56 lizmat so good night, #perl6!
23:56 ugexe `RAKUDO_MODULE_DEBUG=1 perl6 -e 'no precompilation; use Test;'`  rather
23:59 snarkyboojum joined #perl6

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

Perl 6 | Reference Documentation | Rakudo