Perl 6 - the future is here, just unevenly distributed

IRC log for #perl6-dev, 2016-09-27

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

All times shown according to UTC.

Time Nick Message
01:37 FROGGS_ joined #perl6-dev
01:49 ilbot3 joined #perl6-dev
01:49 Topic for #perl6-dev is now Perl 6 language and compiler development 2.0 | Logs at http://irclog.perlgeek.de/perl6-dev/today
02:45 cog__ joined #perl6-dev
03:49 timotimo joined #perl6-dev
04:02 timotimo joined #perl6-dev
04:30 AlexDaniel *ables are going to be down for a bit more than a day
05:51 dalek roast: a18c569 | usev6++ | S0 (2 files):
05:51 dalek roast: Fudge newly added tests for JVM
05:51 dalek roast: review: https://github.com/perl6/roast/commit/a18c569ab0
06:23 cog__ joined #perl6-dev
07:04 [Tux] This is Rakudo version 2016.09-68-g447d592 built on MoarVM version 2016.09-1-gdebb859
07:04 [Tux] csv-ip5xs        9.159
07:04 [Tux] test            15.604
07:04 [Tux] test-t           7.675
07:04 [Tux] csv-parser      17.334
07:11 nine_ [Tux]: I don't get this. Inline::Perl5 becomes faster and faster but it doesn't show at all in your benchmarks :/
07:12 nine_ [Tux]: csv-ip5xs used to do 700K native calls. That's now down to ~ 100K. It cannot take the same time for 1/7 of the work.
07:13 nine_ This is what I do: for i in $(seq 1 10000); do echo 'hello,","," ",world,"!"'; done > /tmp/hello.csv
07:13 nine_ time perl6 -I/home/nine/Inline-Perl5/lib csv-ip5xs.pl < /tmp/hello.csv
07:16 [Tux] I'll have a look later. must run now
07:16 nine_ ok, thanks!
07:20 psch hrm, t/04-nativecall/16-rt125408.t /o\
07:21 nine_ Btw. compiling moar without optimization and with debug info, it takes 7.491s here while an optimized moar runs it in 4.267s
07:28 lizmat Files=1142, Tests=53134, 227 wallclock secs (12.91 usr  3.79 sys + 1393.44 cusr 131.57 csys = 1541.71 CPU)
07:36 psch okay, how does a C struct without any fields actually work?
07:36 psch i mean, in C
07:36 psch *does* it actually work or is moar cheating in some horrible way?
07:40 psch http://stackoverflow.com/questions/755305/ says empty structs aren't valid C
07:40 psch well, aren't valid C99 at least
07:42 psch buut gcc doesn't care, even with -std=c99
07:43 psch well, it does with -pedantic-errors at least
07:48 nine_ Is the struct actually empty there or does it contain a function pointer? Haven't dealt with structs in NativeCall at all, so I really got no idea.
07:48 psch nine_: i honestly have no idea.  the test declares a class with repr('CStruct') which has a method
07:48 arnsholt Oh, in that case, I think NativeCall will allocate 1 byte
07:49 arnsholt Because malloc(0) is undefined behaviour
07:49 psch arnsholt++ right, i see that in CStruct.c;  "MVMint32 info_alloc       = num_attrs == 0 ? 1 : num_attrs;"
07:50 psch thing is, i can't malloc in java
07:50 psch so do i just stuff a byte in just because and... what?
07:50 Zoffix__ joined #perl6-dev
07:50 arnsholt Oh, not sure what you should do on NativeCall/JVM
07:50 psch hm, it at least shouldn't leak if we don't add a Perl 6 accessor i suppose
07:51 psch "leak" as in "get exposed to the user"
07:51 arnsholt Maybe just create an instance with a secret byte member
07:51 arnsholt Or maybe no members at all. Does JNA complain if there are no data members?
07:52 psch yeah, it dies with an IllegalArgumentException in Structure.deriveLayout
07:52 arnsholt Yeah, in that case just stuff in a byte
07:56 arnsholt Or maybe we actually should throw an exception on those structs too, as they don't actually make any sense in C
07:57 psch well, yeah, that's what i'm thinking
07:57 psch i mean, the jvm case probably shouldn't leak a JNA exception
07:57 arnsholt Yeah, definitely
07:57 psch but from what i can see C99 says empty structs aren't okay
07:58 psch granted, gcc only complains with -pedantic-errors, so idk how that usually looks in practice
07:58 arnsholt That RT#125408 test is super-weird too
07:58 synopsebot6 Link:  https://rt.perl.org/rt3//Public/Bug/Display.html?id=125408
07:58 psch honestly, i didn't even understand the ticket
07:58 arnsholt I mean, why is there a struct class there at all
07:58 RabidGravy joined #perl6-dev
07:59 arnsholt Yeah, from the commit they referenced that fixed it, it wasn't a NativeCall problem really
07:59 arnsholt It just happened to show up there
07:59 Ven` joined #perl6-dev
07:59 psch the tickets progress just seems weird to me
07:59 psch i mean, it starts with a CArray
08:00 psch and somehow the test references a CStruct
08:00 psch and i don't get how it came to that
08:00 arnsholt Me neither
08:00 arnsholt Do you happen to know if Jonathan Stowe is on IRC?
08:00 psch that's RabidGravy iirc?
08:01 RabidGravy it is
08:01 arnsholt Ah, excellent
08:01 arnsholt Do you remember why there's a CStruct class in that test file? (t/04-nativecall/16-rt125408.t)
08:01 RabidGravy or it was the last time I checked
08:01 arnsholt Good enough for me! =D
08:02 RabidGravy let me look, I can't even remember the test
08:02 arnsholt Sure, no rush
08:06 RabidGravy right, I think it's because that was exactly the circumstance that the bug was triggered in the code I found it, I may not have checked whether it did it without
08:06 psch well, the issue is that an empty struct isn't really valid C in the first place
08:07 psch so, in moar we work around that by explicitly malloc-ing a 1byte struct without any fields
08:07 psch (which, honestly, sounds kind of terribly hacky too)
08:07 arnsholt Yeah
08:08 arnsholt ISTR the patch being because otherwise it segfaults (or something similar)
08:08 arnsholt But you're entirely right, it should cause an exception, no accept it
08:13 RabidGravy Oh I see
08:15 RabidGravy the CStruct having no members is not part of the bug
08:16 arnsholt Yeah, can't see how it participates
08:16 arnsholt Just having it as a sub should work fine
08:19 RabidGravy Or just losing the 'CStruct' to be honest
08:22 RabidGravy the bug, if I remember correctly, that the optimiser was being over-zealous in that circumstances
08:23 psch right, the ticket looks like that
08:23 psch i mean, the title especially :)
08:25 psch one upside is we get a new test, that currently moar fails and jvm (kinda-sorta) passes :P
08:35 psch right, so i'll toss the "is repr" bit from rt125408.t, dieInternal on jvm when we have a size 0 struct, and add a test for that
08:40 arnsholt +1
08:40 arnsholt It should be a pretty straightforward patch on Moar as well
08:41 arnsholt Where we currently allocate one byte, you can MVM_exception_throw_adhoc(tc, "Zero-byte struct!")
08:45 psch well, we kind want a handler for a typed exception don't we
08:45 psch and i know how to do that on jvm, but really not on moar... :)
08:46 psch +of
08:47 RabidGravy yeah, it's almost certainly a mistake to have a CStruct with no data members
08:47 RabidGravy there is of course CPointer for the case of "opague pointer"
08:48 arnsholt Yup
08:48 arnsholt psch: I have no idea how to do that on *either* platform =)
08:49 psch right, so i might still open a PR for moar that throws the adhoc
08:50 psch i'm *so* over that whole PR process though since i got my commit bit for perl6/nqp and rakudo/rakudo :P
08:58 psch hm, actually the Exception probably should be NativeCall specific
08:58 psch which makes installing a handler a bit more iffy
08:58 psch as in, i'm not sure how we do that only if we *might* have that specific exception...
09:01 psch so, yeah, adhoc on both platforms it is vOv
09:03 nine_ psch: I'm not sure that one can throw typed exceptions on moar. All I've ever seen was adhoc
09:06 psch nine_: well, MVM_exception_throwobj exists
09:06 jnthn There is a way to do it
09:06 psch nine_: that's quite a bit different from how i think we do it on jvm, though.  there we invoke a rakudo-level closure that throws the exception
09:07 jnthn grep for method_not_found_error in the MoarVM source
09:07 jnthn psch: same on Moar :)
09:07 psch jnthn: oh, okay :)
09:07 jnthn 'cus the VM doesn't know about Perl 6's exception classes or how to construct them
09:08 psch right, MVM_exception_throwobj seems to be mostly involved with rethrow
09:08 jnthn Yeah, and the obj in question must be an MVMException REPR, so it's still not what you want
09:08 psch ah, okay
09:08 nine_ Ah, so it's possible but much more work than just an adhoc exception. No wonder it's used so sparingly :)
09:09 psch jnthn: so installing the handler for a NC-specific exception that should be thrown from the backend is via getcurhllsym('P6EX') in NC, right?
09:09 nine_ Ironically it seems like method_not_found_error throws an adhoc exception most of the time...
09:10 jnthn nine_: Hm, curious...
09:10 nine_ It's nqp::die("Method '$name' not found for invocant of class '$type'"); except if $name eq 'STORE'
09:10 psch (plus bindkey and the sub and all...)
09:10 jnthn psch: You also have to make a registration in BOOTSTRAP.nqp where we do the hll configure call
09:11 nine_ https://github.com/rakudo/rakudo/blob/nom/src/Perl6/Metamodel/BOOTSTRAP.nqp#L3206
09:12 psch jnthn: oh, like for lexical_handler_not_found_error?
09:18 jnthn yes
09:19 jnthn nine_: heh, wow. There's some LHF...
09:31 cog__ joined #perl6-dev
09:36 psch hm, do core modules install Exception into X::?
09:37 psch or -- in this case --  NativeCall::X::..?
09:39 nine_ jnthn: especially, since X::Method::NotFound is already set up for being generated that way :) Will try
09:58 DrForr joined #perl6-dev
10:01 Zoffix .tell AlexDaniel Nope. I was sleeping. RE: '<AlexDaniel> were you doing anything weird with committable/bisectable? :)'
10:01 raydiak joined #perl6-dev
10:02 yoleaux2 joined #perl6-dev
10:02 Zoffix .tell AlexDaniel Nope. I was sleeping. RE: '<AlexDaniel> were you doing anything weird with committable/bisectable? :)'
10:02 yoleaux2 Zoffix: I'll pass your message to AlexDaniel.
10:04 buggable joined #perl6-dev
10:04 huggable joined #perl6-dev
10:05 NeuralAnomaly joined #perl6-dev
10:50 nine_ jnthn: I added proper typing but fail to come up with a case that actually demonstrates throwing an adhoc there
10:51 nine_ jnthn: oh boy! It's because of this piece of beauty: https://github.com/rakudo/rakudo/blob/nom/src/core/Exception.pm#L280
11:01 nine_ First I worried that throwing a typed exception will slow things down (as this particular code seems to be hit by some .? or try prefixes for example). But if we can get rid of the regex that way, it can only become faster :)
11:18 dalek rakudo/nom: 222d16b | niner++ | src/ (2 files):
11:18 dalek rakudo/nom: Actually throw a typed "method not found" exception from the VM
11:18 dalek rakudo/nom:
11:18 dalek rakudo/nom: We used to throw an AdHoc exception and parse the message to upgrade it
11:18 dalek rakudo/nom: to a typed exception. The need for that is not obvious and the spectest
11:18 dalek rakudo/nom: passes just fine if we throw the proper exception type in the first
11:18 dalek rakudo/nom: place.
11:18 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/222d16b0b9
11:19 nine_ psch: now that I've pushed, I wonder if this ^^^ has any negative side effects on JVM?
11:19 DrForr nine - https://opensource.com/life/16/9/perl-6-features - You'll notice I pimped Inline:: :)
11:19 DrForr (it's also the most popular on the site at the moment, I'm amazed.)
11:20 psch nine_: i'm not sure at a glance.  you'd have to check in the Binder (or, well, build and run :))
11:21 psch nine_: ah, actually we throw that from Ops apparently
11:21 nine_ DrForr: indeed I have noticed :) Boosts motivation :)
11:22 psch nine_: so, yeah, with the removal of the regex we're probably leaking VMException on r-j
11:22 psch or rather AdHoc'ing it again
11:28 DrForr Well, you *did* say you wanted more exposure :) And I want it so we can talk more about sidegrade paths :)
11:28 nine_ Is there any reason to have the method_not_found_error moar-only in BOOTSTRAP?
11:29 nine_ Looks to me like it could be used just as well for JVM
11:30 jnthn nine_: The thing to handle it just isn't implemented on JVM yet, is all
11:30 yoleaux2 25 Sep 2016 17:26Z <FROGGS> jnthn: that patch to not set ->process again looks totally valid
11:30 jnthn FROGGS++ # thanks!
11:43 bartolin psch: maybe you could take a look at RT #122732 on occasion? I tried something with regard to the error 'control operator crossed continuation barrier' on JVM
11:43 synopsebot6 Link:  https://rt.perl.org/rt3//Public/Bug/Display.html?id=122732
11:56 psch bartolin: did you run nqp 'make test' with your changes?
11:56 psch bartolin: 'cause if that also passes i'd say just PR your changes in the ticket and we'll run with it until something breaks, honestly
12:00 bartolin psch: I *think*, I've done that as well. I'll check later today and make a PR.
12:00 bartolin thanks for looking!
12:51 cog__ joined #perl6-dev
13:18 * hackedNODE pokes dalek
13:18 hackedNODE thing's ded
13:19 dalek roast: 2e1428a | (Zoffix Znet)++ | S32-num/complex.t:
13:19 dalek roast: [coverage] Cover all nudity in Complex.pm
13:19 dalek roast: review: https://github.com/perl6/roast/commit/2e1428a074
13:21 DrForr Patience, young padawan.
13:21 hackedNODE :D
13:59 timotimo hackedNODE: did you see my message about the timing of parse-coverage-report?
14:01 hackedNODE timotimo: yeah. Not bad. I'm also gonna try grepping annottaions before running the script and removing the check in the script entirely too
14:04 FROGGS joined #perl6-dev
14:05 timotimo yeah, that'll be another noticable boost, i'd expect
14:26 hackedNODE .oO( Why did LemonMan close all those PRs ... )
14:31 hackedNODE [ for records, if we need to dig them out: nqp/#304, and rakudo #870 #866 #865 and #864 ]
14:40 pmurias joined #perl6-dev
14:47 timotimo .o( to get to the other side! )
14:50 FROGGS joined #perl6-dev
14:58 hackedNODE m: \('a', 'Z', :ii, :global).say
14:58 camelia rakudo-moar 222d16: OUTPUT«\("a", "Z", :global, :ii)␤»
14:58 hackedNODE m: \('a', 'Z', :ii, :global).Str.say
14:58 camelia rakudo-moar 222d16: OUTPUT«a Z global   True ii True␤»
14:58 hackedNODE .Str looks like crap :/
15:00 timotimo pairs put a tab between key and value, iirc
15:01 hackedNODE ahh
15:01 timotimo m: say (:foo).Str.perl
15:01 camelia rakudo-moar 222d16: OUTPUT«"foo\tTrue"␤»
15:06 hackedNODE oh boy... in my tests that Cool.subst-mutate works same as Str.subst-mutate: "Looks like you failed 31 tests of 60"
15:06 hackedNODE How many of them are real bugs? Taking all bets! :)
15:06 timotimo at least three
15:13 hackedNODE m: say ($ = "").subst-mutate('', '').^name.perl
15:13 camelia rakudo-moar 222d16: OUTPUT«"Match"␤»
15:13 hackedNODE m: say ($ = "").subst-mutate('', '', :g).^name.perl
15:13 camelia rakudo-moar 222d16: OUTPUT«"List"␤»
15:13 AlexDaniel joined #perl6-dev
15:13 hackedNODE Well, a lot of those are simply my tripping up on that ^, I think :)
15:13 hackedNODE AlexDaniel: no, didn't do nothing with *ables
15:14 AlexDaniel hackedNODE: yeah, I think we figured it out
15:14 yoleaux2 10:02Z <Zoffix> AlexDaniel: Nope. I was sleeping. RE: '<AlexDaniel> were you doing anything weird with committable/bisectable? :)'
15:17 AlexDaniel hackedNODE: basically, whateverables committed mass seppuku right in front of my eyes, so I was trying to figure out what happened exactly
15:18 AlexDaniel hackedNODE: the issue seems to be with the build script (instead of removing temp folders it decided to remove everything in the current folder, DOH)
15:18 timotimo wow, oops
15:18 hackedNODE wow
15:19 AlexDaniel I am not sure yet, but it feels like it is not my error
15:20 AlexDaniel this script is building stuff in parallel, so I am seeing various weird errors from rakudo
15:20 Ven` joined #perl6-dev
15:20 AlexDaniel it got much better since proc :out → :in issue was fixed (no segfaults anymore), but something is still wrong
15:21 AlexDaniel what I did not expect though is that it may possibly cause THAT
15:21 AlexDaniel but yeah, I managed to reproduce it yesterday, so we will see
15:23 * [Coke] can't build r-j atm.
15:23 [Coke] java.lang.RuntimeException: Missing or wrong version of dependency 'gen/jvm/stage2/QRegex.nqp'
15:23 [Coke] (just did a make clean...)
15:23 [Coke] me tries a git clean -xdf, it's been a while.
15:24 timotimo [Coke]: did you also re-build nqp?
15:24 timotimo perhaps running Configure.pl again is necessary, too? who knows ... :)
15:25 nine I've also found rm blib/Perl6/* helpful
15:26 [Coke] timotimo: yes, rebuilt nqp using configure.pl
15:27 timotimo oh, OK
15:31 [Coke] Note: src/vm/jvm/runtime/org/perl6/rakudo/RakudoJavaInterop.java uses unchecked or unsafe operations.
15:37 hackedNODE m: /<[bb\x[308]]>/
15:37 camelia rakudo-moar 222d16: OUTPUT«Potential difficulties:␤    Repeated character (b) unexpectedly found in character class␤    at <tmp>:1␤    ------> /<[bb\x[308⏏]]>/␤»
15:37 hackedNODE m: /<[b\x[308]ab]>/
15:37 camelia rakudo-moar 222d16: OUTPUT«Potential difficulties:␤    Repeated character (b) unexpectedly found in character class␤    at <tmp>:1␤    ------> /<[b\x[308⏏]ab]>/␤»
15:37 hackedNODE m: /<[b]+[b\x[308]]>/
15:37 camelia rakudo-moar 222d16: ( no output )
15:38 hackedNODE timotimo: you've lost the bet :) All the bugs were in my test suite
15:38 timotimo oh! snap.
15:38 timotimo well, i'm glad :)
15:39 dalek roast: 1a00e5e | (Zoffix Znet)++ | S05-substitution/subst.t:
15:39 dalek roast: [coverage] Cover Cool.subst-mutate
15:39 dalek roast: review: https://github.com/perl6/roast/commit/1a00e5e88c
15:41 FROGGS joined #perl6-dev
15:49 hackedNODE Aha. I forgot to cover the :x adverb and it looks like there are two bugs in it.
15:50 hackedNODE m: my $s = "1234567"; dd $s.subst-mutate(/\d/, '', :5x).Str; dd $s
15:50 camelia rakudo-moar 222d16: OUTPUT«"1"␤Str $s = "67"␤»
15:50 hackedNODE should be a list of 1, 2, 3, 4, 5 match objects
15:51 hackedNODE m: dd "1234567".subst: /\d/, '', :x{5;}
15:51 camelia rakudo-moar 222d16: OUTPUT«"1234567"␤»
15:52 hackedNODE either a doc bug (that claims :x can take a Callable like all the other :nth) or an LTA error
15:52 * hackedNODE & lunch
16:02 hackedNODE m: dd "1234567".subst: /\d/, '', :x{say 'your mother'; 5;}
16:02 camelia rakudo-moar 222d16: OUTPUT«"1234567"␤»
16:03 hackedNODE m: dd "1234567".subst: /\d/, '', :th(1|3|4)
16:03 camelia rakudo-moar 222d16: OUTPUT«This type cannot unbox to a native integer: P6opaque, Junction␤  in block <unit> at <tmp> line 1␤␤»
16:10 * [Coke] 's r-j is working, forgot how slow this is. :)
16:11 [Coke] (running a stresstest)
16:11 cog__ joined #perl6-dev
16:13 raiph joined #perl6-dev
16:17 timotimo oof, yeah
16:17 timotimo do the stresstests use the eval server?
16:22 hackedNODE m: say "foo".match: /\w/,  :x{5}
16:22 camelia rakudo-moar 222d16: OUTPUT«in Str.match, got invalid value of type Block for :x, must be Int or Range␤  in block <unit> at <tmp> line 1␤␤Actually thrown at:␤  in block <unit> at <tmp> line 1␤␤»
16:22 hackedNODE m: say "foo".subst: /\w/, '', :x{5}
16:22 camelia rakudo-moar 222d16: OUTPUT«foo␤»
16:22 hackedNODE I don't get it. .subst just passes the options to .match; how come no throwage happens? https://github.com/rakudo/rakudo/blob/222d16b/src/core/Str.pm#L603
16:23 hackedNODE Same for other args seems
16:23 hackedNODE m: say "foo".subst: /\w/, '', :nth(1.5)
16:23 camelia rakudo-moar 222d16: OUTPUT«foo␤»
16:25 hackedNODE m: say "foo".match: /\w/, :nth(1.5)
16:25 camelia rakudo-moar 222d16: OUTPUT«False␤»
16:25 hackedNODE well, maybe not that one, but the $x .... wtf
16:29 raiph m: https://gist.github.com/raiph/d2160ce895d8d0b87a0888192e742774
16:29 camelia rakudo-moar 222d16: OUTPUT«Numeric $var = 42 (Int)␤»
16:30 raiph m: my Numeric $var = 42; dd $var
16:30 camelia rakudo-moar 222d16: OUTPUT«Int $var = 42␤»
16:30 hackedNODE Ahhh
16:31 raiph ^^ Do #perl6-dev folk agree that the above gist version is an improvement for `dd`?
16:31 hackedNODE You get a bunch of Failures in @matches that's why
16:33 hackedNODE m: my Numeric @var = ^10; dd @var
16:33 camelia rakudo-moar 222d16: OUTPUT«Array[Numeric] @var = Array[Numeric].new(0, 1, 2, 3, 4, 5, 6, 7, 8, 9)␤»
16:33 hackedNODE m: https://gist.github.com/zoffixznet/7ae7a2551609c67bd9dd8764319078c6
16:34 perlpilot_ joined #perl6-dev
16:35 hackedNODE m: "
16:35 hackedNODE SourceBaby: help
16:36 hackedNODE .oO( Robotocide )
16:36 huggable joined #perl6-dev
16:36 NeuralAnomaly joined #perl6-dev
16:37 buggable joined #perl6-dev
16:37 dalek joined #perl6-dev
16:37 hackedNODE m: say "test"
16:37 camelia rakudo-moar 222d16: OUTPUT«Numeric @var = Array[Numeric].new(0, 1, 2, 3, 4, 5, 6, 7, 8, 9) (Array[Numeric])␤»
16:37 SourceBaby hackedNODE, Use s: trigger with args to give to sourcery sub. e.g. s: Int, 'base'. See http://modules.perl6.org/dist/CoreHackers::Sourcery
16:37 hackedNODE m: my Numeric $x = 41; my Numeric $y = 42; my Numeric $z = 43; my Numeric $w = 44; dd [ $x, $y, $z, $w ];
16:37 jsimonet1 joined #perl6-dev
16:37 [Tux] joined #perl6-dev
16:38 hackedNODE m: https://gist.github.com/zoffixznet/82e9c75b2230c351c8857611f03590d9
16:38 Zoffix__ joined #perl6-dev
16:38 Zoffix__ joined #perl6-dev
16:38 gfldex joined #perl6-dev
16:39 dogbert17 joined #perl6-dev
16:39 raiph joined #perl6-dev
16:39 Woodi joined #perl6-dev
16:39 btyler joined #perl6-dev
16:41 hackedNODE m: https://gist.github.com/zoffixznet/7ab24d3b87a73e302800c0888f48bd5e
16:41 hackedNODE bah. turbulence.
16:42 hackedNODE OLD: Hash % = {:bar($[41, 42, 43, 44]), :foo($[41, 42, 43, 44])}
16:42 hackedNODE NEW: Mu % = {:bar($[41, 42, 43, 44]), :foo($[41, 42, 43, 44])} (Hash)
16:42 camelia rakudo-moar 222d16: OUTPUT«===SORRY!=== Error while compiling <tmp>␤Unable to parse expression in double quotes; couldn't find final '"' ␤at <tmp>:1␤------> "⏏<EOL>␤    expecting any of:␤        double quotes␤        term␤»
16:43 camelia rakudo-moar 222d16: OUTPUT«test␤»
16:44 dogbert2 joined #perl6-dev
16:44 hackedNODE raiph: overall yeah. Though I find that ^ to be a de-provement
16:45 hackedNODE [the fact that (Hash) bit is all the way at the end, making go "wat"]
16:46 hackedNODE m: https://gist.github.com/zoffixznet/9b02fb4fef88137a5523afc910aa7b96
16:47 camelia rakudo-moar 222d16: OUTPUT«[41, 42, 43, 44]␤»
16:47 camelia rakudo-moar 222d16: OUTPUT«Nil[41, 42, 43, 44] (Array)␤»
16:47 camelia rakudo-moar 222d16: OUTPUT«OLD: Hash % = {:bar($[41, 42, 43, 44]), :foo($[41, 42, 43, 44])}␤NEW: Mu % = {:bar($[41, 42, 43, 44]), :foo($[41, 42, 43, 44])} (Hash)␤»
16:47 buggable_ joined #perl6-dev
16:47 d4l3k_ joined #perl6-dev
16:47 NeuralAnomaly_ joined #perl6-dev
16:47 buggable_ joined #perl6-dev
16:47 [TuxCM] joined #perl6-dev
16:47 stmuk_ joined #perl6-dev
16:48 Zoffix___ joined #perl6-dev
16:48 |Tux| joined #perl6-dev
16:48 timotimo joined #perl6-dev
16:50 TimToady joined #perl6-dev
16:51 FROGGS joined #perl6-dev
16:51 pmurias joined #perl6-dev
16:52 camelia rakudo-moar 222d16: OUTPUT«OLD: Hash[Any,Any] %hash = (my Any %{Any} = :bar($[41, 42, 43, 44]), :foo($[41, 42, 43, 44]))␤NEW: Any %hash = (my Any %{Any} = :bar($[41, 42, 43, 44]), :foo($[41, 42, 43, 44])) (Hash[Any,Any])␤»
16:54 btyler joined #perl6-dev
16:54 sivoais joined #perl6-dev
16:55 gfldex joined #perl6-dev
17:01 raiph hackedNODE: Thx for look/help/guidance
17:02 RabidGravy joined #perl6-dev
17:04 hackedNODE m: sub stuff { fail }; my @matches = stuff; !@matches || (@matches == 1 && !@matches[0]) and say "well, there's your problem!"
17:04 camelia rakudo-moar 222d16: OUTPUT«well, there's your problem!␤»
17:05 hackedNODE ^ reason for .subst fail. gonna fix it tonight
17:09 Zoffix__ joined #perl6-dev
17:11 synopsebot6 joined #perl6-dev
17:11 huggable_ joined #perl6-dev
17:11 Undercover joined #perl6-dev
17:11 d4l3k_ joined #perl6-dev
17:11 Tux__ joined #perl6-dev
17:12 jsimonet1 joined #perl6-dev
17:12 stmuk_ joined #perl6-dev
17:12 zengargo1le joined #perl6-dev
17:13 hackedNODE m: sub wone { fail }; sub two { my $v = wone; $v }; two; say "wat"
17:13 hackedNODE m: sub wone { fail }; sub two { my $v = wone; return $v }; two; say "wat"
17:13 hackedNODE This isn't on purpose, is it? Explicit return messes up the sinking of a Failure
17:14 camelia rakudo-moar 222d16: OUTPUT«Failed␤  in sub wone at <tmp> line 1␤  in sub two at <tmp> line 1␤  in block <unit> at <tmp> line 1␤␤Actually thrown at:␤  in block <unit> at <tmp> line 1␤␤»
17:14 camelia rakudo-moar 222d16: OUTPUT«wat␤»
17:19 awwaiid joined #perl6-dev
17:21 hackedNODE RTed: https://rt.perl.org/Ticket/Display.html?id=129373
17:21 hackedNODE Though I can imagine a reason why this may be done on purpose...
17:21 huggable joined #perl6-dev
17:21 NeuralAnomaly joined #perl6-dev
17:21 Undercover joined #perl6-dev
17:21 d4l3k_ joined #perl6-dev
17:21 NeuralAnomaly joined #perl6-dev
17:21 zengargoyle joined #perl6-dev
17:22 Woodi_ joined #perl6-dev
17:24 sivoais joined #perl6-dev
17:24 RabidGravy joined #perl6-dev
17:24 btyler joined #perl6-dev
17:26 dogbert17 joined #perl6-dev
17:26 pmurias joined #perl6-dev
17:26 psch hrm
17:27 psch i get the closure in P6EX at runtime, but a 'is repr' decl doesn't get :/
17:28 psch uh, what's the phaser after 'use' but before the mainline?  CHECK?
17:28 camelia joined #perl6-dev
17:29 psch ...why does that NPE
17:32 psch oooh, i'm getting the wrong hllConfig in CStruct.java
17:32 pmurias_ joined #perl6-dev
17:32 SourceBaby joined #perl6-dev
17:32 huggable joined #perl6-dev
17:32 dalek joined #perl6-dev
17:33 jsimonet1 joined #perl6-dev
17:34 btyler joined #perl6-dev
17:34 psch hm, that's a bit iffy, actually
17:36 camelia joined #perl6-dev
17:44 zostay joined #perl6-dev
18:09 [Coke] psch: running stresstest getting a ton of very slow "no subtests run" failures.
18:09 [Coke] (on r-j) expected?
18:10 d4l3k_ joined #perl6-dev
18:10 jsimonet1 joined #perl6-dev
18:10 huggable joined #perl6-dev
18:10 sivoais joined #perl6-dev
18:14 zostay joined #perl6-dev
18:32 b2gills joined #perl6-dev
18:41 dalek rakudo/nom: 6ef4cdf | (Zoffix Znet)++ | src/core/Str.pm:
18:41 dalek rakudo/nom: Throw on wrong arguments to .subst/.subst-mutate
18:41 dalek rakudo/nom:
18:41 dalek rakudo/nom: Fixes RT#129374: https://rt.perl.org/Ticket/Display.html?id=129374
18:41 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/6ef4cdf543
18:41 synopsebot6 Link:  https://rt.perl.org/rt3//Public/Bug/Display.html?id=129374
18:41 bartolin [Coke]: during my daily spectest runs I didn't see such failures lately (https://github.com/usev6/perl6-roast-data)
18:41 bartolin [Coke]: tests are run with 'perl t/spec/test_summary rakudo.jvm' -- but that includes stress tests
18:41 psch [Coke]: i have no idea about stresstest, actually
18:42 dalek roast: 925cf4b | (Zoffix Znet)++ | S05-substitution/subst.t:
18:42 dalek roast: Wrong args to .subst/.subst-mutate throw
18:42 dalek roast:
18:42 dalek roast: RT#129374: https://rt.perl.org/Ticket/Display.html?id=129374
18:42 dalek roast: review: https://github.com/perl6/roast/commit/925cf4bd8b
18:42 synopsebot6 Link:  https://rt.perl.org/rt3//Public/Bug/Display.html?id=129374
18:42 psch [Coke]: i assume stresstest as such doesn't lend itself to --verbose or something?
18:42 psch [Coke]: in any case, notice of the affected files might be useful
18:43 psch [Coke]: but we mostly are just lacking quite a few features on r-j in the first place, and maybe stresstest isn't fudged sufficiently (which it might not even want to be)
18:44 nine Why is nativecast not a multi? Its body is: if $target-type ~~ Signature { ... } else { ... }
18:46 psch well, it is over 1.5 years old...
18:46 dogbert17 m: say '.seen hackedNODE'
18:46 camelia rakudo-moar 222d16: OUTPUT«.seen hackedNODE␤»
18:46 dogbert17 hackedNODE: you around?
18:46 psch oh, wait, the body is only half a year old
18:46 psch anyway, yeah, it might as well be a multi, nine++
18:46 hackedNODE .seen hackedNODE
18:47 dogbert17 :-) where in roast should I put the duckmaptest?
18:49 dogbert17 it's not entirely obvious for a noob like me
18:50 hackedNODE Well, it appears neither duckmap nor deepmap are tested at all
18:50 hackedNODE There's a couple of tests in hyper.t that just test they're nodal
18:50 dogbert17 should I put it there?
18:51 hackedNODE naah
18:51 hackedNODE dogbert17: create a file S32-list/duckmap.t
18:51 hackedNODE And put them in there
18:52 hackedNODE dogbert17: and when you're done and it's merged. Submit a PR to Rakudo to list that file here: https://github.com/rakudo/rakudo/blob/nom/t/spectest.data#L974
18:52 dogbert17 ok, will do
18:54 * hackedNODE opens https://github.com/perl6/roast/issues/161
18:55 hackedNODE I guess that can be tagged with Hacktoberfest if I add explanations for how to do stuff
18:57 dalek rakudo/nom: faaa516 | niner++ | lib/NativeCall.pm6:
18:57 dalek rakudo/nom: Turn nativecast into a multi
18:57 dalek rakudo/nom:
18:57 dalek rakudo/nom: Just cashing in on the advantages of multies.
18:57 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/faaa51601a
18:58 nine Unfortunately I cannot say if it's actually fast as a multi. May be but may just be noise.
18:59 nine Btw. is there a way to cast a CArray[Pointer] to just Pointer without nativecast?
19:08 * psch wouldn't know
19:08 psch i'm out for today too o/
19:25 Zoffix___ joined #perl6-dev
19:26 ggoebel joined #perl6-dev
19:26 d4l3k_ joined #perl6-dev
19:26 SourceBaby joined #perl6-dev
19:26 huggable joined #perl6-dev
19:27 jsimonet1 joined #perl6-dev
19:31 cognominal joined #perl6-dev
19:34 Ulti joined #perl6-dev
19:35 huggable joined #perl6-dev
19:35 Woodi_ joined #perl6-dev
19:36 dalek joined #perl6-dev
19:36 synopsebot6 joined #perl6-dev
19:36 SourceBaby joined #perl6-dev
19:36 raydiak joined #perl6-dev
19:37 lizmat joined #perl6-dev
19:37 jsimonet1 joined #perl6-dev
19:37 zostay joined #perl6-dev
19:38 pochi joined #perl6-dev
19:38 |Tux| joined #perl6-dev
19:38 camelia joined #perl6-dev
19:42 dogbert17 if I want to run a single .t file, is it ok to run it as ./perl6 testfile.t ?
19:42 lizmat_ joined #perl6-dev
19:42 timotimo sometimes needs to -Ilib
19:43 timotimo in rakudo you can "make t/spec/S42-foo/blah.t
19:43 timotimo " and it'll run the harness for you
19:43 * hackedNODE has 6p aliased to prove -e './perl6' -vlr
19:44 dogbert17 will it pick up stuff like       #?rakudo todo "RT #129363 duckmap doesn't preserve structure types"
19:44 hackedNODE dogbert17: `make` will, but not perl6 or prove alone
19:44 dogbert17 ok, lemme try
19:44 huggable joined #perl6-dev
19:44 synopsebot6 joined #perl6-dev
19:44 d4l3k_ joined #perl6-dev
19:44 synopsebot6 Link:  https://rt.perl.org/rt3//Public/Bug/Display.html?id=129363
19:45 [Coke] (rakudo) also: prove -v -e t/fudgeandrun s42-foo/blah.t (or t/spec/s42-foo/blah.t)
19:45 [TuxCM] joined #perl6-dev
19:45 [Coke] that fudges, and lets you run multiple files in the same harness.
19:45 nine_ joined #perl6-dev
19:46 jsimonet2 joined #perl6-dev
19:46 dogbert17 I tried              make ../roast/S32-list/duckmap.t
19:46 dogbert17 and got       make: Nothing to be done for `../roast/S32-list/duckmap.t'.
19:48 ggoebel joined #perl6-dev
19:50 Woodi joined #perl6-dev
19:51 dogbert17 got it working
19:52 nine csv-ip5xs is now down to ~ 4.098s here and does 8 native calls per iteration (which does 3 method calls).
19:52 nine Startup overhead is now > 20 % of the runtime.
19:52 dogbert17 hackedNODE: does this look ok or is it bollocks? https://gist.github.com/dogbert17/4aeeed6a2bdfc0a5efa481a25a16f32b
19:53 lizmat nine: can confirm it's faster on my machine as well: down to 4.2s down from 5.2s
19:53 nine \o/
19:54 lizmat I guess [TuxCM] didn't get the latest Inline::Perl5 automatically ?
19:55 nine lizmat: that's the only explanation I can come up with. I looked through the IRC log and his numbers stayed within the margin of error despite all my optimisations.
19:55 [TuxCM] $ panda update
19:55 [Coke] nine++
19:55 lizmat [TuxCM]: that just updates its internal tables, that doesn't get the latest version (I don't think)
19:55 nine what lizmat said
19:56 lizmat fwiw, I just run "panda install Inline::Perl5" again
19:56 [TuxCM] so, what command *should* I issue instead?
19:56 nine again what lizmat said :)
19:56 nine You can check easily with: perl6 -e 'say $*REPO.need(CompUnit::DependencySpecification.new(:short-name<Inline::Perl5>)).version'
19:56 [TuxCM] running
19:56 * [TuxCM] laughs at *easily*
19:56 [TuxCM] perl -MV=Inline::Perl5
19:57 [TuxCM] is what I use in perl5. Now *that* is easy
19:57 nine Can't locate V.pm in @INC?
19:57 lizmat nine: it's not core, lives on CPAN
19:57 [TuxCM] $ cpan V
19:58 [TuxCM] <hint>note the easy absence of the keyword "install" :)</hint>
19:58 nine I don't see why it'd be impossible to push the above line into a Perl 6 module, too. That would be a fair comparison. Otherwise it's perl -E 'say $Inline::Perl5::VERSION'
19:58 ggoebel joined #perl6-dev
19:59 nine Don't get me started on that :) I've trained my fingers for cpan module, then broke them for cpanp install module then broke them again for cpan module
20:00 [TuxCM] so, nine, what timing do you *expect*? :)
20:00 nine Well between 4 and 5s would be reasonable
20:00 [TuxCM] This is Rakudo version 2016.09-68-g447d592 built on MoarVM version 2016.09-1-gdebb859
20:00 [TuxCM] csv-ip5xs        4.513
20:00 [TuxCM] test            16.076
20:00 [TuxCM] test-t           6.991
20:00 [TuxCM] csv-parser      17.441
20:01 nine Yeah!
20:01 nine .oO(YOU HAVE TAKEN THE LEAD!)
20:02 * [TuxCM] hopes lizmat accepts the challenge/temptation :]
20:02 [TuxCM] I added the install command to the alias
20:02 timotimo oh wow
20:03 [TuxCM] as a side-note: I *did* expect panda update to do this for me!
20:03 nine [TuxCM]: I wonder why, though. panda --help ought to be quite clear: update         Updates the local copy of the module database.
20:04 [TuxCM] then add $ panda upgrade, like yum
20:04 [TuxCM] and ipkg and opkg and dpkg
20:15 AlexDaniel joined #perl6-dev
20:22 dalek joined #perl6-dev
20:23 huggable joined #perl6-dev
20:24 Zoffix__ joined #perl6-dev
20:24 camelia joined #perl6-dev
20:24 jsimonet2 joined #perl6-dev
20:27 [Coke] crap. so many failures on r-j stresstest that my iterm buffer ran out.
20:28 [Coke] https://gist.github.com/coke/26178a2effc78bb61816519c98195219
20:28 nine joined #perl6-dev
20:28 [Coke] ISTR someone has been keeping the fudging up to date here, wondering if any of these are OS X specific.
20:29 bartolin joined #perl6-dev
20:29 [Coke] wonder how long prove -v -e t/fudgeandrun has been broken.
20:30 Zoffix___ joined #perl6-dev
20:31 ZoffixMobile joined #perl6-dev
20:31 ZoffixMobile dogbert17, I responded in #perl6 (by mostake) :)
20:32 dogbert17 ZoffixMobile: thx, will check
20:32 d4l3k_ joined #perl6-dev
20:32 Woodi_ joined #perl6-dev
20:34 jsimonet2 joined #perl6-dev
20:35 nine And down to 3.873s :)
20:35 lizmat should I reinstall Inline::Perl5 now ?
20:35 lizmat ah, I guess...
20:36 nine I upped the version to 0.15 so a plain install should do
20:36 [Coke] is there a known issue trying to todo subtests where only one subtest fails?
20:38 ZoffixMobile [Coke] no, unless you are talking about the fudger that doesn't fudge subtests
20:38 lizmat nine: only seeing an improvement within noise values  :-(
20:39 [Coke] ... yes, trying to fudge-todo a subtest block.
20:39 nine We now do 1/10 of the native calls (7 instead of 70) in csv-ip5xs. This benchmark has been a gold mine
20:39 lizmat and it *is* v0.15
20:39 AlexDaniel joined #perl6-dev
20:40 nine lizmat: it's only a ~ 5 % improvement. That's hard to measure. I usually do lots of runs and take the lowest value.
20:40 dogbert17 ZoffixMobile: I have changed to is-deply for both tests, gist updated
20:40 dogbert17 *is-deeply
20:46 huggable joined #perl6-dev
20:46 dalek joined #perl6-dev
20:46 [TuxCM] joined #perl6-dev
20:46 synopsebot6 joined #perl6-dev
20:47 camelia joined #perl6-dev
20:47 nine Why are native subs set up on first use and not when the native trait is applied?
20:48 jnthn Because you can't persist the resolved C function pointer, perhaps?
20:48 [Coke] Might make sense if it's expensive.
20:48 ZoffixMobile [Coke] won'rlt work. wrap it in curlies, put #?DOES 1 before it and the fudge above it
20:49 ZoffixMobile joined #perl6-dev
20:49 [Coke] 128579 was rejected... but it has tests in roast.
20:50 [Coke] S12-introspection/meta-class.t
20:50 [Coke] zoffix, the RT has your name on it. (RT #128579)
20:50 synopsebot6 Link:  https://rt.perl.org/rt3//Public/Bug/Display.html?id=128579
20:50 b2gills joined #perl6-dev
20:51 [Coke] tests intentionally kept, yes?
20:54 bartolin [Coke]: are you going to fudge the failing tests you've seen with your stresstest run on rakudo-j?
20:54 Zoffix___ On the ticket I see "Tests to check .ver and .auth are NOT present on packages: https://github.com/perl6/roast/commit/06b24bb45bbcf4a75fcab3f50e80c06610cc09f8"
20:54 nine jnthn: well your self from 2011 only left us this: "Add first cut of version 2 of Zavolaj. Doesn't do any pointer/array stuff just yet; that's coming soon."
20:55 nine And wow am I glad, that we don't have PIR anymore
20:55 jnthn Yes, I think version 2 made it portable to other backends.
20:55 jnthn Or that was a goal at least
20:56 jnthn Though I might not have been talking about that yet ;)
20:56 jnthn I suspect some setup work can be done at compile time
20:56 jnthn But the resolution of the C symbol still needs to happen at runtime
20:57 nine I guess the self!setup unless $!setup; is not that expensive anyway
20:57 jnthn Turning the signature into the descriptor surely can happen though
20:57 jnthn Well yeah, was gonna say...how costly is it :)
20:57 tadzik joined #perl6-dev
20:58 bartolin [Coke]: fwiw S12-introspection/meta-class.t passed this morning on r-j (447d592693)
20:58 jnthn afk for now; will be back tomorrow with tuits
20:58 nine $r.signature.arity could be cached in a property
20:58 jnthn With look I'll get us closer to having Unicode 9 :)
20:59 bartolin [Coke]: didn't look closer but I suspect 222d16b0b9 made that test fail on JVM
21:04 bartolin [Coke]: also, I remember I had to use a higher Xmx for perl6-eval-server. before I set -Xmx4000m I had similiar problems like your gist showed, occasionally (after a while all the remaining test files failed)
21:05 arnsholt nine: Short answer on why natives are set up on first use is "because that's how jnthn++ implemented it" =)
21:05 arnsholt But what jnthn said is basically it. Addresses to functions aren't stable, so can't rely on compile-time and run-time having the same addresses
21:14 [Coke] bartolin++ - I figured tha tmight fall out of more testing.
21:14 [Coke] bartolin: I'm running on 222d16b, yes.
21:15 bartolin there was a short discussion of that commit between nine++ and psch++ earlier today
21:15 Zoffix m: is-deeply duckmap(-> Int $x { $x ~~ Int ?? $x !! Any }, [1, [2,3], 4]), [1, [2,3], 4]
21:15 camelia rakudo-moar faaa51: OUTPUT«===SORRY!=== Error while compiling <tmp>␤Undeclared routine:␤    is-deeply used at line 1␤␤»
21:15 Zoffix m: use Test; is-deeply duckmap(-> Int $x { $x ~~ Int ?? $x !! Any }, [1, [2,3], 4]), [1, [2,3], 4]
21:15 camelia rakudo-moar faaa51: OUTPUT«not ok 1 - ␤␤# Failed test at <tmp> line 1␤# expected: $[1, [2, 3], 4]␤#      got: $(1, (2, 3), 4)␤»
21:15 [Coke] Zoffix: yes, I see that as well, but couldn't read intent - I'll assume the tests are intentional and fudge them for the JVM
21:16 Zoffix dogbert17, ^ I think it's best to write the second test as above ^ as it shows what the difference is exactly
21:16 [Coke] I will reopen the RT and mark it JVM only.
21:16 dogbert17 Zoffix: will fix
21:17 Zoffix ¯\_(ツ)_/¯ I figured the test description was good: https://github.com/perl6/roast/blob/master/S12-introspection/meta-class.t#L48
21:17 Zoffix Maybe it should be rewritten to go first (on all subtests)
21:18 dalek roast: 0ddea52 | coke++ | S12-introspection/meta-class.t:
21:18 dalek roast: fudge RT #128579 for the JVM
21:18 dalek roast: review: https://github.com/perl6/roast/commit/0ddea52aef
21:18 synopsebot6 Link:  https://rt.perl.org/rt3//Public/Bug/Display.html?id=128579
21:18 bartolin [Coke]: but as I said before, those tests only started to fail today. wouldn't it be better to fix the breakage (maybe 222d16b0b9 can be made 'moar only')
21:18 bartolin oops, too late :-)
21:19 Zoffix bartolin, 222d16b0b9 on which repo?
21:19 bartolin rakudo
21:19 Zoffix oh, sorry. Used wrong URL the first time :)
21:19 [Coke] bartolin: if I could fix the breakage, sure.
21:20 bartolin http://irclog.perlgeek.de/perl6-dev/2016-09-27#i_13289748
21:20 Zoffix j: my package P:ver<1.2.3>:auth<me> {}; P.^ver; CATCH { default { .^name.say } }
21:20 camelia rakudo-jvm cd19db: OUTPUT«X::Method::NotFound␤»
21:20 Zoffix j: my package P:ver<1.2.3>:auth<me> {}; P.^auth; CATCH { default { .^name.say } }
21:20 camelia rakudo-jvm cd19db: OUTPUT«X::Method::NotFound␤»
21:20 [Coke] Zoffix: that's from Sat Jul 16 05:15:27 2016
21:21 Zoffix ah
21:21 bartolin one part of commit 222d16b0b9 changed code that was within a '#?if moar' block -- but the other part affected JVM as well
21:22 dogbert17 Zoffix: I have updated the PR
21:22 dalek roast: ce3050e | dogbert17++ | S32-list/duckmap.t:
21:22 dalek roast: Tests added for duckmap (#162)
21:22 dalek roast:
21:22 dalek roast: * Tests added for duckmap
21:22 dalek roast:
21:22 dalek roast: * Changed second test to the better. Zoffix++
21:22 dalek roast: review: https://github.com/perl6/roast/commit/ce3050ee61
21:23 dalek roast: 5dfd859 | (Zoffix Znet)++ | S32-list/duckmap.t:
21:23 dalek roast: Add test description
21:23 dalek roast: review: https://github.com/perl6/roast/commit/5dfd859fa5
21:23 bartolin so, maybe the removed elsif block should be reintroduced within '#?if !moar' markers?
21:24 Zoffix dogbert17, to clarify, I meant the second test to test the structure and not just a .WHAT. It's fine to use variables in tests :)
21:25 dalek roast: 7e25c94 | coke++ | S14-roles/composition.t:
21:25 dalek roast: fudge RT #64766 for rakudo.jvm
21:25 dalek roast: review: https://github.com/perl6/roast/commit/7e25c94171
21:25 synopsebot6 Link:  https://rt.perl.org/rt3//Public/Bug/Display.html?id=64766
21:26 dogbert17 Zoffix: ok :-)
21:26 Zoffix dogbert17, don't forget to now add that file in Rakudo's test list
21:26 dogbert17 on it
21:31 dalek roast: 7a20048 | coke++ | S14-traits/routines.t:
21:31 dalek roast: Fudge RT #129375 for rakudo.jvm
21:31 dalek roast: review: https://github.com/perl6/roast/commit/7a20048943
21:31 synopsebot6 Link:  https://rt.perl.org/rt3//Public/Bug/Display.html?id=129375
21:35 bartolin https://gist.github.com/usev6/8d8f77399587404afb6b555134ac479f
21:36 bartolin ^^ S14-traits/routines.t S12-introspection/meta-class.t and S14-roles/composition.t are passing (again) with that 'half-revert' of 222d16b0
21:37 [Coke] bartolin++!
21:38 dogbert17 Zoffix: earlier you mentioned https://github.com/rakudo/rakud​o/blob/nom/t, do you mean the file t/spectest.data in the rakudo repo?
21:38 [Coke] yes, new test files go there.
21:39 [Coke] (in the list)
21:39 dogbert17 ok, thx [Coke]
21:39 Zoffix dogbert17, [14:52:38] <hackedNODE> dogbert17: and when you're done and it's merged. Submit a PR to Rakudo to list that file here: https://github.com/rakudo/rakudo/blob/nom/t/spectest.data#L974
21:39 Zoffix Maybe there's IRC client issues, but the URL I see has spectest.data#L974 at end of it
21:39 bartolin it's already too late for me ... g'night
21:40 Zoffix night
21:41 * lizmat also calls it a day
21:41 dogbert17 it did, it was this 'blob/nom' part which was confusing, it doesn't exist in my cloned repo is all
21:41 geekosaur blob is a github-ism
21:42 dogbert17 aha
21:42 geekosaur the git path starts at nom
21:42 dogbert17 geekosaur++
21:43 geekosaur well. <owner>/<repo>/blob/<branch>/...
21:45 Zoffix for files; for dirs it's /tree/ IIRC
21:46 arnsholt Yeah, I think it's tree for directories. And IIRC blob and tree are used when discussing git's internals as well
21:46 arnsholt A file is simply a blob of bytes, and a directory is a tree of stuff, either blobs or other trees
21:47 geekosaur ...but the main reason it needs to do that is to leave namespace for things like the permissions page
21:47 arnsholt True dat
21:49 dalek rakudo/nom: a341416 | (Jan-Olof Hendig)++ | t/spectest.data:
21:49 dalek rakudo/nom: Add S32-list/duckmap.t test file
21:49 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/a341416d6b
21:49 dalek rakudo/nom: fc3160c | (Zoffix Znet)++ | t/spectest.data:
21:49 dalek rakudo/nom: Merge pull request #887 from dogbert17/nom
21:49 dalek rakudo/nom:
21:49 dalek rakudo/nom: Add S32-list/duckmap.t test file
21:49 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/fc3160c7e5
21:50 Zoffix dogbert17++ adding tests
21:52 dogbert17 :-)
22:23 MasterDuke how do i use the --git-depth=<n> option of rakudo's Configure.pl?
22:24 MasterDuke i thought it would just do a shallow clone of nqp (and moarvm?), assuming i also have --gen-moar
22:42 gfldex m: sub f( |c where { c.defined } ) {}; f 42
22:42 camelia rakudo-moar fc3160: OUTPUT«===SORRY!=== Error while compiling <tmp>␤Variable '&c' is not declared␤at <tmp>:1␤------> sub f( |c where { ⏏c.defined } ) {}; f 42␤»
22:42 gfldex is this a bug?
22:43 ZoffixMobile joined #perl6-dev
22:47 geekosaur I think it's reasonable that c is not yet defined at that point. it is passed to the block as a parameter at runtime, though
22:50 cognominal joined #perl6-dev
23:01 gfldex m: sub f( |c where { c } ) {}; f 42
23:01 camelia rakudo-moar fc3160: OUTPUT«===SORRY!=== Error while compiling <tmp>␤Variable '&c' is not declared␤at <tmp>:1␤------> sub f( |c where { ⏏c } ) {}; f 42␤»
23:01 gfldex the definedness is not the problem
23:01 gfldex m: sub f( *@a where { @a } ) {}; f 42
23:01 camelia rakudo-moar fc3160: ( no output )
23:05 geekosaur sorry, I do not mean .defined defined, I mean exists in symbol table defined
23:05 geekosaur you're still constructing the variable at the time the where clause is parsed
23:05 gfldex why does the @a example work then?
23:07 geekosaur hm. I'd argue it shouldn't. but it looks like normal sigils are put into the symbol table early, but | sigil is handled specially and not put there until later
23:07 geekosaur (which is why it's looking for &c)
23:19 zengargoyle joined #perl6-dev

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