Perl 6 - the future is here, just unevenly distributed

IRC log for #perl6-dev, 2017-04-28

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

All times shown according to UTC.

Time Nick Message
00:47 astj joined #perl6-dev
01:03 Zoffix "* ugexe uses sublime 3"
01:03 Zoffix ugexe: does it work fine with Perl 6?
01:03 Zoffix Last I tried sublime 2, the highlighting was totally broken
01:04 Zoffix samcv: "but i didn't want to mess up zoffix's automated thingy"... I think my automated thingy is pretty unmessable, so go ahead and do whatever you want :)
01:06 Zoffix samcv: the code for it is in the repo BTW: https://github.com/perl6/ecosystem/blob/master/tools/meta.p6
01:25 ugexe I use the ModernPerl highlighter and yeah its still broken, but not for anything i ever reach for so it hasnt bothered me yet
01:26 * Zoffix will probably reach the broken parts often considering I occasionally reach those with Atom's highlighter too
01:50 ilbot3 joined #perl6-dev
01:50 Topic for #perl6-dev is now Perl 6 language and compiler development 2.0 | Logs at http://irclog.perlgeek.de/perl6-dev/today | For toolchain/installation stuff see #perl6-toolchain | For MoarVM see #moarvm
03:43 MasterDuke_ another question about bind_one_param, can i tell if it's being called for a sub vs method?
06:01 [Tux] This is Rakudo version 2017.04.3-71-gaa23a91fb built on MoarVM version 2017.04-44-gf0db8822
06:01 [Tux] csv-ip5xs        3.101
06:01 [Tux] test            13.365
06:01 [Tux] test-t           5.121 - 5.425
06:01 [Tux] csv-parser      14.323
06:24 go|dfish joined #perl6-dev
06:58 jsimonet joined #perl6-dev
07:22 astj joined #perl6-dev
07:50 TimToady joined #perl6-dev
08:01 [TuxCM] joined #perl6-dev
09:45 nine timotimo: I'm probably biased, but to me the "Distro packages" link makes it look like nxadm's scripts are the only way to get at distro packages, when there are up to date packages for at least Debian and openSUSE.
09:46 Geth ¦ rakudo/nom: 8928fb0fe1 | (Elizabeth Mattijsen)++ | src/core/set_operators.pm
09:46 Geth ¦ rakudo/nom: Fix incorrect comment
09:46 Geth ¦ rakudo/nom: review: https://github.com/rakudo/rakudo/commit/8928fb0fe1
09:55 timotimo nine: good point, i threw it out
09:56 Zoffix buggable: speed 10
09:56 buggable Zoffix, ▄▃▄▃▁▁▂▃▃▇ data for 2017-04-24–2017-04-28; range: 4.996s–5.425s; 5% slower
09:56 Zoffix buggable: speed 30
09:56 buggable Zoffix, ▂▁▃▃▃▃▃▃▄▃▃█▄▆▄▄▄▄▆▅▄▃▄▄▁▁▂▃▃▇ data for 2017-04-15–2017-04-28; range: 4.994s–5.479s; 8% slower
09:56 * Zoffix wonders what's going on with test-t bench :/
09:56 Zoffix buggable: speed 50
09:56 buggable Zoffix, ▂▂▇▁▇▃▇▁▂▁▁▂▄▄▂▄▂▃█▅▂▂▄▃▄▄▃▃▄▃▃█▄▆▅▅▅▄▆▅▄▃▅▄▂▂▃▄▄▇ data for 2017-04-07–2017-04-28; range: 4.921s–5.479s; 9% slower
09:56 Zoffix buggable: speed 199
09:56 buggable Zoffix, Refusing to do more than 100 last entries
09:56 Zoffix buggable: speed 100
09:56 buggable Zoffix, ▁▁█▂▂▃▁▁▁▁▁▁▁▁▁▁▁▁▁▂▁▁▁▂▂▁▁▁▁▁▁▅▂▁▁▁▁▁▁▁▂▁▃▁▂▁▁▁▁▁▁▁▂▁▂▂▂▁▁▁▁▁▂▂▁▂▁▂▃▂▂▁▂▂▂▂▂▂▂▂▂▃▂▂▂▂▂▂▂▂▂▂▂▂▁▁▂▂▂▂ data for 2017-03-14–2017-04-28; range: 4.829s–7.664s; 10% slower
09:57 Zoffix buggable: speed 80
09:57 buggable Zoffix, ▂▂▂▂▂▁▁▂▂▁▁█▂▁▁▁▁▁▁▁▂▁▄▁▂▂▁▁▁▁▂▂▃▁▃▂▃▁▂▁▁▂▂▂▂▂▂▂▃▃▂▂▂▂▂▂▂▂▂▂▂▄▂▃▃▃▃▂▃▃▂▂▃▂▂▂▂▂▂▃ data for 2017-03-22–2017-04-28; range: 4.829s–6.637s; 9% slower
09:59 Zoffix Maybe the bugfixes....
10:25 Zoffix .ask MasterDuke_ do you still have your improved messages for "Invocant requires instance" exceptions? Can you start REPL and then exit it via CTRL+D. What method call triggers the "expected instance of IO::Handle" error?
10:25 yoleaux Zoffix: I'll pass your message to MasterDuke_.
10:34 astj joined #perl6-dev
10:34 Zoffix grrr
10:34 Zoffix Wasted 40 minutes on a stupid error
10:34 Zoffix Still didn't track it down
10:34 Zoffix And .backtrace.Str is empty apparently
10:35 Zoffix And --ll-exception does nothing
10:38 lizmat :-(
10:40 Zoffix gah, found it!
10:40 Zoffix The get() call
10:40 Zoffix .tell MasterDuke_ nevermind; located the culprit
10:40 yoleaux Zoffix: I'll pass your message to MasterDuke_.
11:07 Geth ¦ rakudo/nom: 44893e6a56 | (Elizabeth Mattijsen)++ | src/core/set_operators.pm
11:07 Geth ¦ rakudo/nom: Make (+) a multi
11:07 Geth ¦ rakudo/nom:
11:07 Geth ¦ rakudo/nom: Start of optimization work on (+)
11:07 Geth ¦ rakudo/nom: review: https://github.com/rakudo/rakudo/commit/44893e6a56
11:07 Geth ¦ rakudo/nom: 7c53183516 | (Elizabeth Mattijsen)++ | src/core/Rakudo/Internals.pm
11:07 Geth ¦ rakudo/nom: Add R:I.ADD-SET-TO-BAG worker method
11:07 Geth ¦ rakudo/nom:
11:07 Geth ¦ rakudo/nom: To be used for Setty (+) Setty in various places.
11:08 Geth ¦ rakudo/nom: review: https://github.com/rakudo/rakudo/commit/7c53183516
11:09 Zoffix .ask AlexDaniel how to bisect without RESTRICTED mode? I need to bisect     $ = run($*EXECUTABLE, "-e", "get", :in).in.close
11:09 yoleaux Zoffix: I'll pass your message to AlexDaniel.
11:10 Zoffix Looking at code, this bug has been there for like 2 years :| wonder how it went unnoticed for so long
11:11 Zoffix .ask AlexDaniel and this one too:    $ = run($*EXECUTABLE, :in).in.close
11:11 yoleaux Zoffix: I'll pass your message to AlexDaniel.
11:12 timotimo Zoffix: i'm working on a hack to let you do that :)
11:13 Zoffix Ah, I was looking at the wrong thing. The bug is 2 months old.
11:13 Zoffix Or (now - Mar 7) old
11:15 timotimo are you in the whateverable channel, zoffix?
11:15 Zoffix Then another mistery is: how has no one (not even tests?) notice REPL complaining about IO::Handle instance when exiting :/
11:15 Zoffix timotimo: nope
11:16 Zoffix Ah, OK. Tests at least I see why: they use regex match, not full output check
11:16 timotimo please come over for a little bit
11:19 Zoffix .tell AlexDaniel Never mind; timotimo++ sorted me out
11:19 yoleaux Zoffix: I'll pass your message to AlexDaniel.
11:20 timotimo i've shut it down again, but iirc you also have access to the server it runs on?
11:20 Zoffix timotimo: yeah. Is it a separate bot? trisectable?
11:20 timotimo Bisectable-but-not-restricted.p6
11:20 Zoffix Cool. Thanks
11:21 timotimo YW
11:27 Geth ¦ rakudo/nom: 4b8fd4a4f9 | (Zoffix Znet)++ | src/core/IO/ArgFiles.pm
11:27 Geth ¦ rakudo/nom: Fix crash on ^D to $*IN when reading with IO::ArgFiles
11:27 Geth ¦ rakudo/nom:
11:27 Geth ¦ rakudo/nom: IO::Handle.close wants a :D but in some conditions we set
11:27 Geth ¦ rakudo/nom: $!io to a type object so that call fails.
11:27 Geth ¦ rakudo/nom:
11:27 Geth ¦ rakudo/nom: Fix by checking $!io is True.
11:27 Geth ¦ rakudo/nom:
11:27 Geth ¦ rakudo/nom: Fixes whine about IO::Handle incocants in Fallback REPL exit.
11:27 Geth ¦ rakudo/nom: review: https://github.com/rakudo/rakudo/commit/4b8fd4a4f9
11:29 Geth ¦ rakudo/nom: 1456849675 | (Elizabeth Mattijsen)++ | src/core/set_operators.pm
11:29 Geth ¦ rakudo/nom: Make Setty (+) Setty about 45x faster
11:29 Geth ¦ rakudo/nom:
11:29 Geth ¦ rakudo/nom: - with a 100 element Set with itself
11:29 Geth ¦ rakudo/nom: - give Setty (^) Setty its own candidate written using nqp ops
11:29 Geth ¦ rakudo/nom: review: https://github.com/rakudo/rakudo/commit/1456849675
11:30 lizmat argh, copypasto in last line  :-(
11:30 timotimo lizmat^^
11:30 lizmat timotimo??
11:31 timotimo Zoffix~~
11:31 lizmat sometimes I wish we could create a commit to fix a commit message
11:34 timotimo well, you can forcepush :)
11:34 timotimo we should make something like gmail's "unsend" feature
11:34 timotimo i.e. it'll pretend you have already sent
11:34 timotimo but it only actually sends a minute later
11:35 timotimo so you get the sensation of "oh shit! i just sent something wrong!" with the pleasure of "phew, i could fix it before things went to hell"
12:12 jnthn lizmat: Maybe try to get used to doing "git show" before "git push" :)
12:22 Geth ¦ rakudo/nom: ccedd6b1e3 | (Elizabeth Mattijsen)++ | src/core/Rakudo/Internals.pm
12:22 Geth ¦ rakudo/nom: Add R:I.ADD-MIX-TO-MIX worker method
12:22 Geth ¦ rakudo/nom:
12:22 Geth ¦ rakudo/nom: To be used for Mixy (+) Mixy in various places.
12:22 Geth ¦ rakudo/nom: review: https://github.com/rakudo/rakudo/commit/ccedd6b1e3
12:22 Geth ¦ rakudo/nom: 92df7d5c9a | (Elizabeth Mattijsen)++ | src/core/set_operators.pm
12:22 Geth ¦ rakudo/nom: Make Mixy (+) Mixy about 45x faster
12:22 Geth ¦ rakudo/nom:
12:23 Geth ¦ rakudo/nom: - with a 100 element Mix with itself
12:23 Geth ¦ rakudo/nom: - give Mixy (+) Mixy its own candidate written using nqp ops
12:23 Geth ¦ rakudo/nom: review: https://github.com/rakudo/rakudo/commit/92df7d5c9a
12:26 Zoffix TIL about git show :)
12:35 Zoffix In fact, the only difference is that I'm wearing pants and my cat isn't staring at me from her cat tree... Though my door locks, so I can rectify at least one of those :P
12:38 nine No, please don't look the cat in!
12:38 Zoffix heh
12:48 Geth ¦ rakudo/nom: 9e9449e3e8 | (Zoffix Znet)++ | t/02-rakudo/repl.t
12:48 Geth ¦ rakudo/nom: Test for extraneous output in a REPL session
12:48 Geth ¦ rakudo/nom: review: https://github.com/rakudo/rakudo/commit/9e9449e3e8
12:48 timotimo that phone looks positively ancient :D
12:49 Zoffix (I know that test file is currently disabled; gonna try to remember to fix it up and enable it on the weekend)
12:50 Zoffix Yeah it is :)
12:51 timotimo i'm just trying out plasma, and it's giving me a very wtf thing where i can use alt-1/2/3/4/5/6/7/9/0 to switch to weechat windows
12:51 timotimo but alt-8 does nothing at all
12:51 timotimo alt-8 would get me to this channel... this is a very important channel :|
12:57 Geth ¦ roast: 81170f3a63 | (Zoffix Znet)++ | S16-filehandles/argfiles.t
12:57 Geth ¦ roast: Test ^D with get(IO::ArgFiles) does not crash
12:57 Geth ¦ roast:
12:57 Geth ¦ roast: Rakudo fix: https://github.com/rakudo/rakudo/commit/4b8fd4a4f9
12:57 Geth ¦ roast: review: https://github.com/perl6/roast/commit/81170f3a63
13:01 Tux__ joined #perl6-dev
13:02 Geth ¦ rakudo/nom: 3dc08553d0 | (Elizabeth Mattijsen)++ | src/core/Rakudo/Internals.pm
13:02 Geth ¦ rakudo/nom: Add R:I.ADD-BAG-TO-BAG worker method
13:02 Geth ¦ rakudo/nom:
13:02 Geth ¦ rakudo/nom: To be used for Baggy (+) Baggy in various places.
13:02 Geth ¦ rakudo/nom: review: https://github.com/rakudo/rakudo/commit/3dc08553d0
13:05 AlexDaniel joined #perl6-dev
13:05 Geth ¦ rakudo/nom: ab5cd11b3f | (Elizabeth Mattijsen)++ | src/core/set_operators.pm
13:05 Geth ¦ rakudo/nom: Make Baggy (+) Baggy about 50x faster
13:05 Geth ¦ rakudo/nom:
13:05 Geth ¦ rakudo/nom: - with a 100 element Bag with itself
13:05 Geth ¦ rakudo/nom: - give Baggy (+) Baggy its own candidate written using nqp ops
13:05 Geth ¦ rakudo/nom: review: https://github.com/rakudo/rakudo/commit/ab5cd11b3f
13:10 * [Coke] yawns.
13:13 * lizmat looks at an interesting set of molars
13:17 MasterDuke_ Zoffix: fwiw, i get `Method 'close' must be called on an object instance of type 'IO::Handle', not a 'IO::Handle' type object.  Did you forget a '.new'?`
13:18 yoleaux 10:25Z <Zoffix> MasterDuke_: do you still have your improved messages for "Invocant requires instance" exceptions? Can you start REPL and then exit it via CTRL+D. What method call triggers the "expected instance of IO::Handle" error?
13:18 yoleaux 10:40Z <Zoffix> MasterDuke_: nevermind; located the culprit
13:18 Zoffix MasterDuke_: thanks. Indeed it was the close :)
13:20 MasterDuke_ going to PR this soon, but it does break some tests in t/spec/S32-exceptions/misc.t and t/spec/S06-signature/types.t that are looking for specific words in a specific sequence
13:21 MasterDuke_ it might be possible to add the info i did without breaking the tests, but i reworded the message to something i think is a little better
13:24 MasterDuke_ but i wouldn't say the reworded message is nobel-literature-prize worthy, so don't mind changing if people don't like what i've done
13:27 [Coke] any exception code that's looking for a specific message and not a type should be changable in 6.c-errata
13:27 Geth ¦ rakudo/nom: 1b0e41f972 | (Zoffix Znet)++ | 2 files
13:27 Geth ¦ rakudo/nom: Fix REPL crash when $*HOME is not set
13:27 Geth ¦ rakudo/nom:
13:27 Geth ¦ rakudo/nom: The .history-file that Linenoise/Readline use uses $*HOME, but it
13:27 Geth ¦ rakudo/nom: can be unset and defaulted to Nil.
13:27 Geth ¦ rakudo/nom:
13:27 Geth ¦ rakudo/nom: Fix by falling back to using $*TMPDIR in those cases.
13:27 Geth ¦ rakudo/nom:
13:27 Geth ¦ rakudo/nom: Addresses RT#130456: https://rt.perl.org/Ticket/Display.html?id=130456
13:27 synopsebot6 Link:  https://rt.perl.org/rt3/Public/Bug/Display.html?id=130456
13:27 Geth ¦ rakudo/nom: review: https://github.com/rakudo/rakudo/commit/1b0e41f972
13:47 lizmat m: my %h = a => "b"; dd %h.Bag   # a bit of a WAT to me
13:47 camelia rakudo-moar 1b0e41: OUTPUT: «Type check failed in assignment; expected Int but got Str ("b")␤  in block <unit> at <tmp> line 1␤␤»
13:47 lizmat m: my %h = a => 42; dd %h.Bag   # a bit of a WAT to me
13:47 camelia rakudo-moar 1b0e41: OUTPUT: «("a"=>42).Bag␤»
13:51 jnthn Hm, how so?
13:52 jnthn Possibly the error in the first case could be improved
13:52 lizmat jnthn: I sorta expected Set semantics when coercing to a Bag
13:53 lizmat so ignoring the value, as it does with the other set operators, set to 1
13:54 jnthn m: my %b is BagHash; %b<a> = 42; dd %b
13:54 camelia rakudo-moar 1b0e41: OUTPUT: «("a"=>42).BagHash␤»
13:55 jnthn That's why I'm not surprised by (and would expect) the current behavior, fwiw
13:55 jnthn Can always say %h.keys.Bag to get the other thing
14:16 lizmat yeah, it was just a bit of a WAT to me
14:22 Geth ¦ rakudo/nom: a85b654d5a | (Elizabeth Mattijsen)++ | src/core/set_operators.pm
14:22 Geth ¦ rakudo/nom: Make Map (+) Map about 2.5x faster
14:22 Geth ¦ rakudo/nom:
14:22 Geth ¦ rakudo/nom: - with a 26 element Hash with itself
14:22 Geth ¦ rakudo/nom: review: https://github.com/rakudo/rakudo/commit/a85b654d5a
14:33 b2gills Zoffix: I noticed the REPL complaining about IO::Handle instance, it has apparently never bothered me enough to remember to report it
14:36 Zoffix heh
14:52 Geth ¦ rakudo/nom: 514124e3a9 | (Elizabeth Mattijsen)++ | src/core/Rakudo/Internals.pm
14:52 Geth ¦ rakudo/nom: Add R:I.ADD-ITERATOR-TO-BAG worker method
14:52 Geth ¦ rakudo/nom:
14:52 Geth ¦ rakudo/nom: To be used for Iterable (+) Iterable in various places.
14:52 Geth ¦ rakudo/nom: review: https://github.com/rakudo/rakudo/commit/514124e3a9
14:52 Geth ¦ rakudo/nom: 6de089334c | (Elizabeth Mattijsen)++ | src/core/set_operators.pm
14:52 Geth ¦ rakudo/nom: Make Iterable (+) Iterable about 18x faster
14:52 Geth ¦ rakudo/nom:
14:52 Geth ¦ rakudo/nom: - with a 100 element Array with itself
14:52 Geth ¦ rakudo/nom: - give Iterable (+) Iterable its own candidate written using nqp ops
14:52 Geth ¦ rakudo/nom: review: https://github.com/rakudo/rakudo/commit/6de089334c
14:52 lizmat this concludes the (+) optimizations for now
14:52 Geth ¦ rakudo: MasterDuke17++ created pull request #1073: Add method name and received type to type vs instance error
14:52 Geth ¦ rakudo: review: https://github.com/rakudo/rakudo/pull/1073
15:07 jnthn lizmat: Nice set of speedups on those :)
15:08 lizmat yeah, there's room for more improvement, especially for immutables, but this will do for now  :-)
15:27 ugexe m: say v1.1 ~~ v1.*.2; # expected?
15:27 camelia rakudo-moar 6de089: OUTPUT: «True␤»
15:27 ugexe not sure what to expect when the Whatever is not the last item
15:28 MasterDuke_ re my PR and tests for messages, i think there are a couple options:
15:28 MasterDuke_ 1) change the texts and/or order of words the current tests check for
15:28 MasterDuke_ 2) change the current tests to just check that they throw and add some message tests in rakudo's t/05-messages/01-errors.t
15:28 MasterDuke_ 3) try to convert to typed Exceptions and change the current tests to check for those and add some message tests in rakudo's t/05-messages/01-errors.t
15:31 ugexe seems like currently a Whatever automatically adds a `+` to the end, so 1.*.2 -> 1.0.2+ which ACCEPTS v1.1
15:33 MasterDuke_ these are the failing tests: https://github.com/perl6/roast/blob/master/S06-signature/types.t#L40-L48 and https://github.com/perl6/roast/blob/master/S32-exceptions/misc.t#L795-L798
15:39 Geth ¦ rakudo/nom: ba3cf4e5b4 | (Timo Paulssen)++ | lib/Test.pm6
15:39 Geth ¦ rakudo/nom: "like" shall not crash the script when a non-Str is passed
15:39 Geth ¦ rakudo/nom:
15:39 Geth ¦ rakudo/nom: for example, when you were like `@things[2]` and there weren't enough items.
15:39 Geth ¦ rakudo/nom: also, the "hack to deal with failures" was never going to work, as
15:39 Geth ¦ rakudo/nom: Failure can't get passed to a Str parameter
15:39 Geth ¦ rakudo/nom: review: https://github.com/rakudo/rakudo/commit/ba3cf4e5b4
15:50 Geth ¦ rakudo/nom: 9cb26c0927 | (Elizabeth Mattijsen)++ | 11 files
15:50 Geth ¦ rakudo/nom: Remove unnecessary saving of nqp::iterator values
15:50 Geth ¦ rakudo/nom:
15:50 Geth ¦ rakudo/nom: You can use the iterator value itself after an nqp::shift.
15:50 Geth ¦ rakudo/nom: review: https://github.com/rakudo/rakudo/commit/9cb26c0927
16:00 geekosaur joined #perl6-dev
16:04 geekosaur joined #perl6-dev
16:09 * Zoffix votes options 3
16:10 Zoffix m: try Str.contains: 42; say $!.^name
16:10 camelia rakudo-moar ba3cf4: OUTPUT: «X::Multi::NoMatch␤»
16:10 Zoffix m: try IO::Handle.close; say $!.^name
16:10 camelia rakudo-moar ba3cf4: OUTPUT: «X::AdHoc␤»
16:10 Zoffix yeah, adhocs are ewwy
16:20 [TuxCM] joined #perl6-dev
16:56 geekosaur joined #perl6-dev
16:56 Zoffix m: ((1, 2).Seq, (3, 4).Seq).sort({$^b[0] <=> $^a[0]}).say
16:56 camelia rakudo-moar 9cb26c: OUTPUT: «((3 4) (1 2))␤»
16:56 Zoffix m: ((1, 2).Seq, (3, 4).Seq).sort({$^b[0] <=> $^a[0]}).perl.say
16:56 camelia rakudo-moar 9cb26c: OUTPUT: «(Seq.new-consumed(), Seq.new-consumed()).Seq␤»
16:56 * Zoffix doesn't get how it's unconsumed in one case but is consumed in another
16:58 Zoffix m: ((1, 2).Seq, (3, 4).Seq).sort({$^b[0] <=> $^a[0]}).cache.perl.say
16:58 camelia rakudo-moar 9cb26c: OUTPUT: «(Seq.new-consumed(), Seq.new-consumed())␤»
17:06 Zoffix m: use nqp; my $s := ((1, 2).Seq, (3, 4).Seq).sort({$^b[0] <=> $^a[0]})[0]; dd nqp::getattr($s, Seq, '$!iter').DEFINITE
17:06 camelia rakudo-moar 9cb26c: OUTPUT: «Bool::False␤»
17:07 Zoffix c'
17:08 Zoffix c'mon, bug... I'm gonna find you. No point in hiding!
17:11 * Zoffix tries a thing
17:20 Zoffix Ohh yes
17:21 Zoffix A juicy 1-year old bugglet.
17:21 Zoffix ZofBot: yummy, yummy!
17:21 ZofBot Zoffix, more like, what are those 383 about?
17:21 Zoffix ZofBot: that's my stash for the rainy day! Stay out of it!
17:21 ZofBot Zoffix, ) The default "BUILD" semantics are inherited from "Mu", so you need to write initialization routines only if you wish to modify the default behavior
17:22 Zoffix ZOFFLAP: t/spec/S11-modules/require.t
17:23 Zoffix I mean
17:23 Zoffix ZOFFLOP: t/spec/S11-modules/require.t
17:23 Zoffix ZOFFLOP: t/spec/S11-modules/nested.t
17:23 Zoffix Also:
17:24 Zoffix ZOFFLOP: t/spec/S32-io/indir.t  # reported yesterday; still to see what's up with it
17:34 Geth ¦ rakudo/nom: 54f50956ad | (Zoffix Znet)++ | src/core/Seq.pm
17:34 Geth ¦ rakudo/nom: Fix Seq.perl for cached Seqs
17:34 Geth ¦ rakudo/nom:
17:34 Geth ¦ rakudo/nom: The conditional checking whether Seq is consumed is phrased
17:34 Geth ¦ rakudo/nom: incorrectly and erroneously declares as consumed Seqs that no
17:34 Geth ¦ rakudo/nom: longer have $!iter, but do have a cache in $!list.
17:34 Geth ¦ rakudo/nom:
17:34 Geth ¦ rakudo/nom: Fixes RT#131222: https://rt.perl.org/Ticket/Display.html?id=131222
17:34 synopsebot6 Link:  https://rt.perl.org/rt3/Public/Bug/Display.html?id=131222
17:34 Geth ¦ rakudo/nom: review: https://github.com/rakudo/rakudo/commit/54f50956ad
17:35 japhb Zoffix: Idea for the 'buggable: speed' sparkline: 1. Calc mean and standard deviation  2. Replace every entry that is more than e.g. 2 deviations from the mean with an arrow such as ↑/↓ (U+2191 and U+2193).  3. Recalculate the displayed range to only include the values that are <= 2 deviations from the mean, and scale the unicode bars appropriately.  # This should keep outliers from flattening all the other values, while still highlighting them in a useful
17:36 Geth ¦ roast: 7d4092d940 | (Zoffix Znet)++ | S32-list/seq.t
17:36 Geth ¦ roast: Test Seq.perl works on cached Seqs
17:36 Geth ¦ roast:
17:36 Geth ¦ roast: RT#131222: https://rt.perl.org/Ticket/Display.html?id=131222
17:36 Geth ¦ roast: Rakudo fix: https://github.com/rakudo/rakudo/commit/54f50956ad
17:36 synopsebot6 Link:  https://rt.perl.org/rt3/Public/Bug/Display.html?id=131222
17:36 Geth ¦ roast: review: https://github.com/perl6/roast/commit/7d4092d940
17:36 Zoffix japhb: awesome! Can't wait to merge the PR :P
17:36 Zoffix buggable: speed
17:36 buggable Zoffix, ▂▂▇▁▇▃▇▁▂▁▁▂▄▄▂▄▂▃█▅▂▂▄▃▄▄▃▃▄▃▃█▄▆▅▅▅▄▆▅▄▃▅▄▂▂▃▄▄▇ data for 2017-04-07–2017-04-28; range: 4.921s–5.479s; 9% slower
17:37 Zoffix +/-2SD is like ~97% of data innit? Will it really help much?
17:37 japhb Zoffix: Happy to.  Buggable doesn't appear to be in whateverable ... where is it?
17:38 Zoffix buggable: source
17:38 buggable Zoffix, See: https://github.com/zoffixznet/perl6-buggable
17:38 Zoffix japhb: specifically this: https://github.com/zoffixznet/perl6-buggable/blob/master/lib/Buggable/Plugin/Speed.pm6
17:38 japhb Zoffix: Yes, if the data was normally distributed.  But it's not.  We're just (ab)using the calculation to find outliers.
17:38 Zoffix japhb: you can probably just run that module by itself on command line and feed it Strs to methods
17:39 Zoffix japhb: ah right!
17:39 japhb Zoffix: Ah, good thinking
17:43 * Zoffix &
17:46 timotimo that is not where i expected that bug to be there
17:47 AlexDaniel joined #perl6-dev
18:06 lizmat m: class A { ... }; method A::foo() { "foo" }; class A { }; dd A.foo   # bug or case of DIHWIDT ?
18:06 camelia rakudo-moar 54f509: OUTPUT: «Potential difficulties:␤    Useless declaration of a has-scoped method in mainline (did you mean 'my method A::foo'?)␤    at <tmp>:1␤    ------> 3class A { ... }; method7⏏5 A::foo() { "foo" }; class A { }; dd A.f␤No such method 'foo' for in…»
18:06 lizmat m: class A { ... }; my method A::foo() { "foo" }; class A { }; dd A.foo   # no warning
18:06 camelia rakudo-moar 54f509: OUTPUT: «No such method 'foo' for invocant of type 'A'␤  in block <unit> at <tmp> line 1␤␤»
18:06 lizmat m: class A { ... }; my method A::foo() { "foo" }; class A { }; dd A.foo   # no warning
18:06 camelia rakudo-moar 54f509: OUTPUT: «No such method 'foo' for invocant of type 'A'␤  in block <unit> at <tmp> line 1␤␤»
18:07 lizmat m: class A { ... }; our method A::foo() { "foo" }; class A { }; dd A.foo   # our doesn't help either
18:07 camelia rakudo-moar 54f509: OUTPUT: «No such method 'foo' for invocant of type 'A'␤  in block <unit> at <tmp> line 1␤␤»
18:54 * Zoffix thinks it'd be weird if you could augment a class just by declaring a method elsewhere...
18:55 Zoffix There is a ticket that also references a discussion on this topic vis-a-vis doing this sort of stuff but looks like for a package var/sub; not a class's method: https://rt.perl.org/Ticket/Display.html?id=130378#ticket-history
18:59 * geekosaur votes for DIHWIDT; if someone is trying to emulate perl 5 behavior, that's because perl 5 "OO" was a hack using package scoped subs as methods
19:00 geekosaur and yes, it'd be weird and bad if defining a package-scope sub did an "augment", especially without a MONKEY
19:05 jnthn Indeed. In Perl 6, method dispatch doesn't look at the contents of packages or lexpads, only in the meta-object
19:06 jnthn my blah A::foo means the A is lexically visible
19:06 jnthn The foo will be our-scoped within A because there's nothing else it could be :)
19:08 lizmat jnthn: note this was a method
19:08 jnthn That's irrelevant.
19:08 lizmat anyways, DIHWIDT it is  :-)
19:08 lizmat maybe it shouldn't be silent, though  :-)
19:08 jnthn Once you stick a my or our on the thing, it's just a Method code object that's getting put into the lexpad or package
19:09 jnthn Which is OK if you wanted to do it, but isn't a way to get something into the method dispatch table that the .foo calling syntax will care about.
19:10 jnthn I'd count it as "unusual to want to do, but an unusual thing to do by accident" :)
19:10 jnthn Well, I guess depending where you're coming from :)
19:10 Geth ¦ rakudo/nom: 39ede87d1c | (Elizabeth Mattijsen)++ | 2 files
19:10 Geth ¦ rakudo/nom: Move %*ENV initialization logic to R:I
19:10 Geth ¦ rakudo/nom: review: https://github.com/rakudo/rakudo/commit/39ede87d1c
19:15 geekosaur again, it makes sense as a p5-ism
19:16 Geth ¦ rakudo/nom: d3e8c82dc2 | (Elizabeth Mattijsen)++ | src/core/Env.pm
19:16 Geth ¦ rakudo/nom: Implement %?ENV for the core setting
19:16 Geth ¦ rakudo/nom:
19:16 Geth ¦ rakudo/nom: This may need some more thought.  I thought this was specced, but
19:16 Geth ¦ rakudo/nom: apparently it isn't.  Anyways, this will probably need to be done to
19:16 Geth ¦ rakudo/nom: any package being precomped.  Hence the move of the initialization
19:16 Geth ¦ rakudo/nom: logic to R:I.
19:16 Geth ¦ rakudo/nom:
19:16 Geth ¦ rakudo/nom: Please revert if this is deemed a bad idea.
19:16 Geth ¦ rakudo/nom: review: https://github.com/rakudo/rakudo/commit/d3e8c82dc2
19:16 timotimo oh, so this gives you the env at precompilation time?
19:16 lizmat well, currently at core setting build time
19:26 timotimo oh, "for the core setting"
19:26 timotimo i didn't read that
19:30 lizmat timotimo: yeah, we would need to stick it in the package of a precomped module before writing to disk  :-)
19:32 timotimo fortunately we can easily serialize hashes now
19:32 lizmat yes, exactly  :-)
19:42 Geth ¦ star: 5a5c84d432 | (Steve Mynott)++ | tools/star/Makefile
19:42 Geth ¦ star: bump moar to  2017.04-53-g66c6dda to fix old GCC systems like Centos 6 and OpenBSD
19:42 Geth ¦ star: review: https://github.com/rakudo/star/commit/5a5c84d432
19:45 stmuk_ http://pl6anet.org/drop/rakudo-star-2017.04-RC1.tar.gz
19:55 MasterDuke_ anybody have a suggestion for what typed Exception(s) to use for my PR?
19:56 timotimo X::No
19:58 MasterDuke_ heh. i'll do the easy part of adding them, but am hoping to shift the blame for naming them
19:58 timotimo good idea
19:59 geekosaur joined #perl6-dev
20:03 Zoffix X::NotInstance
20:03 Zoffix X::NeedInstance
20:06 Zoffix or I guess X::Parameter::NotInstance
20:07 Zoffix we have ::InvalidType, so maybe ::InvalidDefinetness or something more pronounceable
20:09 lizmat do we have a quick way of resetting an nqp::hash (aka deleting all the keys) ?
20:09 Zoffix m: class { has Str:D $.foo }.new
20:09 camelia rakudo-moar d3e8c8: OUTPUT: «5===SORRY!5=== Error while compiling <tmp>␤Variable definition of type Str:D requires an initializer␤at <tmp>:1␤------> 3class { has Str:D $.foo 7⏏5}.new␤»
20:18 MasterDuke_ ::InvalidConcreteness ?
20:19 Zoffix Do we use concreteness as term?
20:19 MasterDuke_ nqp::isconcrete is in the if there
20:20 MasterDuke_ "concrete" is in the rakudo source some
20:21 timotimo "instantiatedness" is not better :)
20:22 MasterDuke_ also, aside from typed exceptions, what about my modifications to the language in the message? any comments/suggestions?
20:43 gfldex joined #perl6-dev
20:47 Geth ¦ rakudo/nom: 48ce87011f | (Elizabeth Mattijsen)++ | src/core/set_operators.pm
20:47 Geth ¦ rakudo/nom: Make (.) a multi
20:47 Geth ¦ rakudo/nom:
20:47 Geth ¦ rakudo/nom: Start of optimization work on (.)
20:47 Geth ¦ rakudo/nom: review: https://github.com/rakudo/rakudo/commit/48ce87011f
20:47 Geth ¦ rakudo/nom: afd24a881d | (Elizabeth Mattijsen)++ | src/core/Rakudo/Internals.pm
20:47 Geth ¦ rakudo/nom: Add R:I.MULTIPLY-SET-TO-BAG worker method
20:47 Geth ¦ rakudo/nom:
20:47 Geth ¦ rakudo/nom: To be used for Setty (.) Setty in various places.
20:47 Geth ¦ rakudo/nom: review: https://github.com/rakudo/rakudo/commit/afd24a881d
20:47 Geth ¦ rakudo/nom: 1562da070d | (Elizabeth Mattijsen)++ | src/core/set_operators.pm
20:47 Geth ¦ rakudo/nom: Make Setty (.) Setty about 35x faster
20:47 Geth ¦ rakudo/nom:
20:47 Geth ¦ rakudo/nom: - with a 100 element Set with itself
20:47 Geth ¦ rakudo/nom: - give Setty (.) Setty its own candidate written using nqp ops
20:47 Geth ¦ rakudo/nom: review: https://github.com/rakudo/rakudo/commit/1562da070d
20:51 gfldex left #perl6-dev
21:01 Zoffix m: (try require JSON::Fast <&to-json>) === Nil and &to-json = sub { Rakudo::Internals::JSON.to-json($^a); }; dd to-json 42
21:01 camelia rakudo-moar 1562da: OUTPUT: «"42"␤»
21:02 * Zoffix wishes Rakudo::Interanls.*json were unavailable to users so people would not abusedly use it :\
21:03 [Coke] (in general, when adding exceptions, use more generic exception types and add the deets in the message)
21:07 MasterDuke_ [Coke]: there's a continuum though, since what i'm replacing is in fact the most generic exception with all the details in the message
21:13 [Coke] Sure, of course.
21:13 [Coke] unfortunately, the list of exceptions was grown organically, I suspect we'll have to be more rigorous in .d, and .e
21:16 MasterDuke_ yep. i'm currently working on X::InvalidConcreteness, but am still open to suggestions
21:16 Zoffix Is it just for params tho?
21:16 Zoffix We have a bunch of X::Param::* exceptions
21:16 MasterDuke_ and invocant
21:16 Zoffix invocant is a param
21:18 Zoffix I'm eating the weirdest ice-cream: chocolate, in a jello-like banana flavoured coating :S
21:18 MasterDuke_ sure, technically, but do most people think of it as one?
21:18 * Zoffix does
21:18 MasterDuke_ or are you suggesting X::Param::InvalidConcreteness?
21:18 Zoffix Yeah
21:18 Zoffix X::Param::SomethingOrOther
21:18 MasterDuke_ that's an easy change
21:19 Zoffix Should Seq.Capture .cache the stuff?
21:20 * Zoffix leans towards "no" and tries it out
21:31 Zoffix ugh
21:31 Zoffix Note to self: CTRL+V into GitHub editor when an image in your copy-paste buffer automatically uploads it :S
21:32 timotimo yes, indeed :|
21:32 geekosaur joined #perl6-dev
21:32 timotimo wonder if it gets deleted when you throw out the reference from the text box
21:32 Zoffix Sounds nifty.... Unless you find it out by accident and your screenshot contains data you rather not share with the world :/
21:33 timotimo yeah
21:33 timotimo a userscript could be made
21:37 Geth ¦ roast: 15806c4d46 | (Zoffix Znet)++ | S32-list/seq.t
21:37 Geth ¦ roast: Remove trailing whitespace
21:37 Geth ¦ roast: review: https://github.com/perl6/roast/commit/15806c4d46
21:42 * Zoffix now notices the taking-forever fudger TimToady mentioned before
21:44 japhb Zoffix: Finally popped enough $work off my stack to send you a Buggable PR
21:45 timotimo what, autounfudge?
21:46 Zoffix timotimo: no, the fudger that runs when you run `make stresstest`
21:46 timotimo oh
21:46 Zoffix takes like... 7-10 s
21:46 timotimo i'm not sure i know about that
21:46 Zoffix Used to be faster
21:49 Zoffix ZOFVM: Files=1242, Tests=133834, 124 wallclock secs (24.72 usr  3.45 sys + 2592.86 cusr 144.62 csys = 2765.65 CPU)
21:51 Geth ¦ rakudo/nom: 98e137b1fe | (Zoffix Znet)++ | src/core/Seq.pm
21:51 Geth ¦ rakudo/nom: Implement Seq.Capture
21:51 Geth ¦ rakudo/nom:
21:51 Geth ¦ rakudo/nom: So users could unpack Seqs into stuff.
21:51 Geth ¦ rakudo/nom:
21:51 Geth ¦ rakudo/nom: Fixes issue mentioned in comments in RT#131222:
21:51 Geth ¦ rakudo/nom: https://rt.perl.org/Ticket/Display.html?id=131222#txn-1458022
21:51 synopsebot6 Link:  https://rt.perl.org/rt3/Public/Bug/Display.html?id=131222
21:51 Geth ¦ rakudo/nom: review: https://github.com/rakudo/rakudo/commit/98e137b1fe
21:52 Geth ¦ roast: b218a1ac01 | (Zoffix Znet)++ | S32-list/seq.t
21:52 Geth ¦ roast: Test Seq.Capture
21:52 Geth ¦ roast:
21:52 Geth ¦ roast: Rakudo fix: https://github.com/rakudo/rakudo/commit/98e137b1fe
21:52 Geth ¦ roast: review: https://github.com/perl6/roast/commit/b218a1ac01
22:02 lizmat good night, #perl6-dev!
22:04 samcv night lizmat
22:04 MasterDuke_ o/
22:04 japhb Night, lizmat!
22:04 samcv also guys. should `author` be an allowed key in META6.json. it's not in the spec
22:04 samcv `authors` is which is a list. but many commonly use `author` instead. should we change the spec or bring modules into compliance with the spec
22:04 Zoffix night
22:05 Zoffix samcv: IMO yes
22:05 samcv which one
22:05 Zoffix oh
22:05 samcv ask an OR question and get yes as the response :P
22:05 * Zoffix thinks more and withdraws the yes
22:06 jnthn I had and maybe still have modules with "author" instead of "authors"
22:06 samcv imo i think we shouldn't have redundant fields
22:06 samcv you have many jnthn :)
22:06 jnthn And tbh I really can't be bothered with fixing that. :P
22:06 Zoffix samcv: I'm gonna go with "Having aut
22:06 ugexe author is required for backcompat
22:06 Zoffix gah
22:06 samcv is it?
22:07 Zoffix samcv: I'm gonna go with "having `authors` and bring to back compat"
22:07 Zoffix ugexe: is this stuff even tested? I thought META wasn't tested at all
22:07 samcv with older rakudo?
22:07 samcv most modules only have "authors"
22:07 ugexe its not, but we still made sure we didn't break any existing modules that are installed when we did the s22/distribution PRs
22:08 jnthn What is used to determine the auth?
22:08 ugexe the old Distribution defined `auth` as $!auth // $!author // $!authority
22:08 samcv ok. but the question is. should 'author' be in the spec? or be not specced
22:08 samcv and the people be told to use 'authors' instead
22:08 samcv that's the question. i'm not saying to remove support for it from anything that allows it to exist
22:08 samcv that's a different issue from what the standard should be imo
22:09 ugexe right
22:09 Zoffix samcv: my reasoning is: `author` is nice, but a string value goes with it, not an array. So then we just add more confusion: which value is right with which key. And if we just alias the keys and accept weird stuff like `"authors": "Zoffix" / "author" : ["Zoffix"]` then all the tools need to be taught to handle all those combinations, so natural outcome is to just have `authors` that takes an array
22:09 samcv yeah
22:09 samcv that's much easier
22:10 ugexe i use 'owner' in my stuff... originally i considered auth to be `$owner + $content_storage` (which aren't specced in s22 but mentioend)
22:10 ugexe but really auth should just be its own thing, so no real need for owner/author i suppose
22:10 samcv owner is kind of vague. own what? copyright? the repo? idk.
22:10 * Zoffix still isn't sure what ends up being the `auth`
22:10 samcv but 'creator' would be ok for me instead of 'author'
22:10 samcv errr i mean
22:10 ugexe you owned the urn
22:10 jnthn I'd presumed the author I was filling out in META6.json was the auth :)
22:10 samcv creator instead of owner
22:11 ugexe owner:service
22:11 Zoffix jnthn: but what about multiple authors?
22:11 ugexe ugexe:github
22:11 Zoffix Like 20-40 authors. Some Perl 5 modules have that many listed
22:11 Zoffix Fun to make that an `auth` :P
22:12 jnthn Right, which is why there's probably two separate things needed here
22:12 samcv heh
22:12 Zoffix Yeah, agreed
22:12 jnthn authors which is just a list of people who contributed for...whatever purpose :)
22:12 samcv auth = authorization right?
22:12 ugexe authority
22:12 jnthn samcv: It's deliberately ambiguous between author and authority
22:12 Zoffix { "authors" : [ "Zoffix Znet", "NeuralAnomaly" ], "auth": "github:perl6" }
22:12 lizmat agree, "auth" is immutable for a distribution, "authors" isn't
22:12 samcv yeah that
22:12 lizmat really sleep&
22:12 samcv authority and authorization are the same uh. thingy
22:13 samcv authority authorizes etc.
22:13 ugexe authorization does not take place
22:13 ugexe it could i guess
22:13 ugexe but thats something for the recommendation managers / content storages to handle
22:13 samcv well in the future..
22:13 samcv yeah
22:13 samcv check the auth is the same as where it got it from
22:14 ugexe no
22:14 samcv no?
22:14 ugexe auth has no relation to where it comes from
22:14 ugexe coincidently it almost always is, but thats not its purpose
22:14 samcv so it's not meant to have any verification?
22:15 ugexe no, a recommendation manager / content storage could build in verification for uploads though
22:15 samcv yes
22:15 samcv for sure
22:16 ugexe but if i have Foo::Bar:ver<1>:auth<XXX> and upload that to the ecosystem, cpan, and SomeOtherService it should retain its identity across them
22:16 samcv i agree
22:22 ugexe fwiw I don't think authors even got saved pre 2017.07 or so (before s22 PR)
22:22 ugexe (when being installed)
22:23 ugexe er 2016.07
22:23 Geth ¦ rakudo/nom: 5e74017d60 | (Zoffix Znet)++ | src/core/QuantHash.pm
22:23 Geth ¦ rakudo/nom: Implement QuantHash.Capture
22:23 Geth ¦ rakudo/nom:
22:23 Geth ¦ rakudo/nom: So users could unpack all the QuantHashes into stuff
22:23 Geth ¦ rakudo/nom: review: https://github.com/rakudo/rakudo/commit/5e74017d60
22:24 Geth ¦ roast: da28f4dc6f | (Zoffix Znet)++ | S02-types/keyhash.t
22:24 Geth ¦ roast: Test QuantHash.Capture
22:24 Geth ¦ roast:
22:24 Geth ¦ roast: Rakudo impl: https://github.com/rakudo/rakudo/commit/5e74017d60
22:24 Geth ¦ roast: review: https://github.com/perl6/roast/commit/da28f4dc6f
22:25 Zoffix 2015.07 maybe?
22:25 Zoffix I don't recall any S22 PRs, but I do remember there being S22 badge on ecosystem site for complying with latest S22 spec when I came to Perl 6
22:31 ugexe that was complying with panda spec
22:32 ugexe https://github.com/rakudo/rakudo/pull/729
22:37 Zoffix Ah. cool
22:56 buggable_ joined #perl6-dev
22:56 buggable joined #perl6-dev
22:57 Zoffix buggable: speed
22:57 buggable Zoffix, ▂▂█▁▇▄▇▁▃▁▁▂▄▄▂▄▂▃↑▆▃▂▄▄▄▄▄▄▅▄▄↑▅▇▅▅▅▅▇▆▅▄▅▅▂▂▃▄▄█ data for 2017-04-07–2017-04-28; range: 4.921s–5.479s; 9% slower
22:57 Zoffix neat
22:57 Zoffix buggable: speed 80
22:57 buggable Zoffix, ▃▃▂▄▄▂▂▃▃▂▂↑▄▂▁▁▁▂▂▂▅▁↑▂▄▃▂▁▂▂▃▃▇▂▇▄▇▂▃▂▂▃▅▅▃▄▃▄█▆▃▃▄▄▄▄▄▄▅▄▄█▅▇▅▅▅▅▆▆▅▄▅▅▃▃▄▄▄▇ data for 2017-03-22–2017-04-28; range: 4.829s–6.637s; 9% slower
22:57 Zoffix Zoffix, ▂▂▂▂▂▁▁▂▂▁▁█▂▁▁▁▁▁▁▁▂▁▄▁▂▂▁▁▁▁▂▂▃▁▃▂▃▁▂▁▁▂▂▂▂▂▂▂▃▃▂▂▂▂▂▂▂▂▂▂▂▄▂▃▃▃▃▂▃▃▂▂▃▂▂▂▂▂▂▃ data for 2017-03-22–2017-04-28; range: 4.829s–6.637s; 9% slower
22:58 Zoffix japhb++ nice one
22:58 japhb Zoffix: Thought you might like that.  :-)
23:11 timotimo like what? what did i miss? :(
23:12 japhb timotimo: Note the difference between the last buggable that Zoffix requested, and the old output from the same query he pasted just below.
23:13 timotimo oh, it has little arrows now?
23:13 japhb timotimo: The new code handles outliers better, so one large value doesn't cause the rest of the range to get all compressed.
23:13 timotimo cool!
23:13 japhb The arrows indicate outlying values in the arrow direction.  :-)
23:15 timotimo fant4stic
23:24 geekosaur joined #perl6-dev
23:31 MasterDuke_ this has been a very broken-up coding session, how bad is this code? https://gist.github.com/MasterDuke17/ff7043a44b5fa6921b87136ca0d7cbbe
23:35 timotimo oh, you have nothing for the case where a parameter might be anonymous
23:36 MasterDuke_ think it should be handled in the exception?
23:36 timotimo do you think we can get the index of the parameter?
23:36 timotimo so it could either be a string with the name or an int with the index?
23:37 timotimo and based on the type it'd say "anonymous parameter number $foo" or "parameter '$param'"
23:37 timotimo not sure if it'd help a lot
23:37 timotimo also, anything about subsignatures?
23:37 MasterDuke_ what about them?
23:37 timotimo maybe it'd be a good idea to split param vs invocant
23:37 timotimo well, it could point out that it's not the parameter of the routine directly but from a subsignature
23:38 timotimo i think i'll go to bed now
23:38 timotimo have a good one!
23:38 MasterDuke_ split them more than this? `my $beginning  = $!param-is-invocant  ?? 'Invocant of method' !! "Parameter '$!param' of routine";`
23:39 timotimo yeah
23:39 timotimo have others weigh in on this before accepting my suggestion please :)
23:39 MasterDuke_ heh, sure. later...

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