Perl 6 - the future is here, just unevenly distributed

IRC log for #perl6, 2012-11-01

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 dayangkun joined #perl6
00:02 stocks_ joined #perl6
00:34 sudokode joined #perl6
00:57 anuby joined #perl6
01:00 hypolin joined #perl6
01:01 dayangkun joined #perl6
01:05 rjbs > my $m = sub ($x) { ... }
01:05 rjbs > Sub.HOW.methods($m)
01:05 rjbs Method 'gist' not found for invocant of class 'Sub'
01:05 rjbs What did I need to do instead?
01:17 plobsing joined #perl6
01:31 HarryS joined #perl6
01:38 fgomez joined #perl6
01:58 jaldhar_ joined #perl6
01:58 havenn joined #perl6
02:05 [Coke] what are you trying to do?
02:05 [Coke] find out what methods you can call on $m ?
02:05 geekosaur $m.^methods fails the same way for me, fwiw.  I think it's tripping over getting a name from a method?
02:31 HarryS joined #perl6
02:37 havenn Any thoughts on this? Wrong? Incomprehensible?: https://gist.github.com/3991238
02:37 dayangkun joined #perl6
02:40 havenn Oops, wrong channel - sorry!
02:41 rking havenn: I was really puzzled. ☺
02:47 sudokode joined #perl6
02:51 bloonix joined #perl6
02:51 avar joined #perl6
02:51 avar joined #perl6
02:52 orafu joined #perl6
02:58 rjbs [Coke]: Yes.
03:03 moritz r: (sub ($x) { }).^methods
03:03 p6eval rakudo 34febe:  ( no output )
03:03 moritz r: say (sub ($x) { }).^methods
03:03 p6eval rakudo 34febe: OUTPUT«No such method 'gist' for invocant of type 'Sub'␤  in method gist at src/gen/CORE.setting:4875␤  in sub say at src/gen/CORE.setting:7304␤  in block  at /tmp/DgavXwbshh:1␤␤»
03:03 moritz r: say (sub ($x) { }).can('gist')
03:03 p6eval rakudo 34febe: OUTPUT«gist␤»
03:04 moritz probably a parrot Sub that is the problem
03:04 geekosaur some of the error sI was getting suggested, yes, that
03:04 geekosaur that I was getting a non-p6 Sub in there
03:05 moritz r: say (sub ($x) { }).^methods.join(' ')
03:05 p6eval rakudo 34febe: OUTPUT«No such method 'Stringy' for invocant of type 'Sub'␤  in method join at src/gen/CORE.setting:1223␤  in block  at /tmp/mZpuHq8BzN:1␤␤»
03:05 moritz r: say (sub ($x) { }).^methods.map(*.name).join(' ')
03:05 p6eval rakudo 34febe: OUTPUT«Unmarshallable foreign language value passed for parameter '$x0'␤  in block  at /tmp/njlb8bMQua:1␤␤»
03:05 geekosaur ^^ thgat was one of the things I kept getting
03:06 japhb r: Sub.^methods.keys.say
03:06 p6eval rakudo 34febe: OUTPUT«0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41␤»
03:06 japhb Well, at least we know there are 42 of them.  :-)
03:08 gootle joined #perl6
03:15 orafu joined #perl6
03:17 stocks joined #perl6
03:28 gugod joined #perl6
03:30 benabik joined #perl6
03:31 HarryS joined #perl6
03:51 rjbs japhb: hehe
03:51 rjbs n: say (sub ($x) { }).^methods.join(' ')
03:51 p6eval niecza v22-15-gc600005: OUTPUT«Potential difficulties:â�¤  $x is declared but not used at /tmp/mWq0zzYWLJ line 1:â�¤------> [32msay (sub ([33mâ��[31m$x) { }).^methods.join(' ')[0mâ�¤â�¤Unhandled exception: Unable to resolve method methods in type ClassHOWâ�¤  at /tmp/mWq0zzYWLJ line 1 (mainline…
04:01 jaldhar_ joined #perl6
04:13 diakopter sweet; error I've never seen before
04:13 diakopter r: Sub.^methods.values>>.name.say
04:13 p6eval rakudo 34febe: OUTPUT«Unmarshallable foreign language value passed for parameter 'obj'␤  in method dispatch:<hyper> at src/gen/CORE.setting:984␤  in block  at /tmp/WiIs0F72N5:1␤␤»
04:14 diakopter phenny: tell masak wat. I'm confused, so LTA, imho  r: Sub.^methods.values>>.name.say
04:14 phenny diakopter: I'll pass that on when masak is around.
04:15 diakopter phenny: tell masak I don't know. just.. I don't know.
04:15 phenny diakopter: I'll pass that on when masak is around.
04:16 * diakopter googled the error and found several other occurrences
04:18 azawawi joined #perl6
04:18 azawawi hi
04:23 diakopter hi
04:30 woosley joined #perl6
04:42 CharellKing joined #perl6
04:49 dayangkun joined #perl6
05:01 kurahaupo joined #perl6
05:02 hypolin joined #perl6
05:09 Guest0863 joined #perl6
05:39 kurahaupo joined #perl6
05:39 fgomez joined #perl6
05:47 Pleiades` joined #perl6
05:50 SamuraiJack joined #perl6
05:53 birdwindupbird joined #perl6
05:57 erkan joined #perl6
05:57 erkan joined #perl6
06:23 kurahaupo joined #perl6
06:38 stocks joined #perl6
07:19 diakopter jnthn: short backlog is
07:21 nwc10 jnthn: yes, that change in nqp now means that I can build origin/Q without running out of swap.
07:29 colomon joined #perl6
07:30 diakopter r: say Sub.^attributes>>.name.say
07:30 p6eval rakudo 34febe: OUTPUT«$!dispatchees $!dispatcher_cache $!dispatcher $!md_thunk $!rw $!inline_info $!yada $!package $!onlystar $!state_vars $!phasers $!do $!signature␤True␤»
07:33 diakopter r: say Str.^attributes[0].WHAT
07:33 p6eval rakudo 34febe: OUTPUT«No such method 'gist' for invocant of type 'BOOTSTRAPATTR'␤  in sub say at src/gen/CORE.setting:7304␤  in block  at /tmp/hxCCshKllG:1␤␤»
07:33 flightrecorder joined #perl6
07:37 wk joined #perl6
07:41 colomon joined #perl6
07:56 moritz \o
07:56 sorear o/
08:12 brrt joined #perl6
08:37 jnthn nwc10: Ah, good.
08:37 jnthn nwc10: Without it, it would try to swallow over 5GB :)
09:22 nwc10 that would be less than awesome.
09:30 jnthn It apparently was for those without 16GB of RAM around to hide what was going on, yes. ;-)
09:31 am0c_ joined #perl6
09:34 domidumont joined #perl6
09:42 GlitchMr joined #perl6
09:54 domidumont joined #perl6
10:11 spider-mario joined #perl6
10:21 gfldex joined #perl6
10:24 cognominal joined #perl6
10:26 flightrecorder joined #perl6
10:29 FROGGS joined #perl6
10:47 leont joined #perl6
10:59 cognominal joined #perl6
11:10 flightrecorder joined #perl6
11:12 nyuszika7h joined #perl6
11:24 MayDaniel joined #perl6
11:25 rindolf joined #perl6
11:28 PacoAir joined #perl6
11:29 Timbus joined #perl6
11:30 mr007x joined #perl6
11:46 cognominal joined #perl6
11:56 cognominal joined #perl6
12:01 spider-mario joined #perl6
12:04 sivoais joined #perl6
12:09 brrt joined #perl6
12:16 am0c joined #perl6
12:26 grondilu joined #perl6
12:27 SamuraiJack_ joined #perl6
12:27 grondilu guys, check out problem 19 of the project Euler:  http://projecteuler.net/problem=19     I've found a very, very quick solution :)
12:29 Lola_91 joined #perl6
12:31 Lola_91 heloo
12:31 grondilu hello
12:32 shachaf for y in `seq 1901 2000`; do for m in `seq 1 12`; do cal $y -m $m | head -n 3 | tail -n 1; done; done | grep -c '^ 1' # this totally counts, right?
12:32 grondilu shachaf: wrong channel
12:32 am0c joined #perl6
12:33 jnthn o/ Lola_91
12:33 Lola_91 jnthn: finally someone I know :(
12:34 jnthn ;)
12:34 Lola_91 :D
12:34 jnthn Hope you're doing fine?
12:34 Lola_91 kinda :P i am working on a new newsletter with varius news and such ^__^
12:35 grondilu shachaf: oh you were talking about problem 19, my bad.
12:35 jnthn :)
12:36 Lola_91 jnthn: i need your help in something, i have an email list named unsub.txt, and a list called Haifa.txt I need to remove all those in unsub.txt from Haifa.txt. Is there some one liner I can save to do it in perl?
12:37 rindolf shachaf: hi.
12:37 SamuraiJack joined #perl6
12:38 grondilu shachaf: neat idea.  I rewrote it though:
12:38 grondilu for y in {1901..2000}; do for m in {1..12}; do cal $y -m $m |grep '^ 1'; done; done | wc -l
12:39 jnthn cat haifa.txt | perl6 -ne ".say if $_ ne BEGIN { any(lines('unsub.txt'.IO)) }" # or so :)
12:39 rindolf grondilu: {1901..2000} is Bash-specific I think.
12:39 rindolf jnthn: haifa.txt ?
12:39 grondilu rindolf: it is indeed.
12:40 shachaf hi rindolf
12:40 rindolf shachaf: what's up?
12:40 jnthn rindolf: Answering a question like 6 lines back :)
12:40 grondilu r: say 100 * 12 div 7;  #  this was my solution :)
12:40 p6eval rakudo 34febe: OUTPUT«171␤»
12:40 rindolf jnthn: ah.
12:41 Lola_91 jnthn: perl6 wiz :P someday I will free myself and become a developer 8|
12:42 jnthn :)
12:42 jnthn ooh, there will be a Saint Perl this year :)
12:42 Lola_91 jnthn: i can not afford a plane ticket -_-
12:43 jnthn Lola_91: Aww. Yeah, not sure if I'll go, it was just announced though :)
12:43 * jnthn is still a Perl conf addict :)
12:44 jnthn Would need to get visa to go to this one though :/
12:44 Lola_91 jnthn: hmmmm.. i think i would look like a stranger there :s i barely remember any perl now :(
12:46 jnthn Languages. They slip away without use... Both human and computer ones.
12:47 jnthn Tend to come back fairly quick as well, though :)
12:47 * jnthn figures he'd best have some lunch...
12:47 snearch joined #perl6
12:47 grondilu does open('file').lines return a lazy list?
12:48 jnthn Pretty sure lines is lazy
12:48 jnthn grondilu: Yes, it does gather/take
12:49 masak g'day, #perl6
12:49 phenny masak: 04:14Z <diakopter> tell masak wat. I'm confused, so LTA, imho  r: Sub.^methods.values>>.name.say
12:49 phenny masak: 04:15Z <diakopter> tell masak I don't know. just.. I don't know.
12:50 masak seems I should backlog :)
12:50 masak r: Sub.^methods.values>>.name.say
12:50 p6eval rakudo 34febe: OUTPUT«Unmarshallable foreign language value passed for parameter 'obj'␤  in method dispatch:<hyper> at src/gen/CORE.setting:984␤  in block  at /tmp/WRBqqrZSrB:1␤␤»
12:50 jnthn Just people rediscovering unresolved RT issues... :)
12:50 masak :)
12:50 jnthn .oO( There's no new bugs under the sun... )
12:50 arnsholt Heh. Taking the train from Copenhagen to Malmö takes only slightly longer than the train from Oslo to Oslo airport =D
12:51 * [Coke] gets a package from Hong Kong from sender "Lion"
12:52 jnthn arnsholt: And costs, like, 3-4 times less!
12:52 arnsholt I don't wanna talk about it >.<
12:53 * shachaf is falling asleep.
12:53 arnsholt I can get the University to cover most of my travelling costs these days though, which is nice =)
12:54 [Coke] except for the part where I have to do work when I get there, having work cover travel expenses is nice,ja.
12:57 arnsholt Troo, troo
12:57 arnsholt In my case it's mostly conferences and stuff, so it's slightly different from my normal work
13:04 Psyche^ joined #perl6
13:05 rindolf shachaf: why are you sleepy?
13:05 shachaf Because it's ~06:00.
13:08 tokuhiro_ joined #perl6
13:12 [Coke] aha! now we know which 24th of the world you live in! muahahaha.
13:15 * [Coke] sees Gábor just admitted to knowing tcl! muahaha.
13:16 Pleiades` joined #perl6
13:22 plobsing joined #perl6
13:33 arlinius joined #perl6
13:34 sudokode joined #perl6
13:49 bowtie joined #perl6
13:56 sizz joined #perl6
14:01 stopbit joined #perl6
14:05 gdey joined #perl6
14:10 flightrecorder joined #perl6
14:13 am0c_ joined #perl6
14:22 FROGGS joined #perl6
14:28 kiyan joined #perl6
14:45 am0c_ joined #perl6
15:07 thou joined #perl6
15:09 mucker joined #perl6
15:18 japhb You're doing a lot of evil laughing this morning, [Coke] ... now we know you're really a supervillain!
15:23 [Coke] mua..... ha... ha?
15:23 [Coke] nothing to see here.
15:23 brrt [Coke]: ever figured out the nqp bug thing?
15:26 * japhb imagines [Coke] in a MegaMind style outfit ... but what would his minion be like?
15:26 dalek nqp/Qcompat: 4a1f1e2 | jnthn++ | src/ (2 files):
15:26 dalek nqp/Qcompat: Bring regex nibbler closer to STD.
15:26 dalek nqp/Qcompat:
15:26 dalek nqp/Qcompat: Means we'll be able to support user-picked stoppers in Rakudo. Should
15:26 dalek nqp/Qcompat: also deal with some over-eager backtracking bugs leading to bad errors.
15:26 dalek nqp/Qcompat: No NQP test regressions with this, but may well bust non-Q Rakudo, so
15:26 dalek nqp/Qcompat: in a branch for now.
15:26 dalek nqp/Qcompat: review: https://github.com/perl6/nqp/commit/4a1f1e2259
15:28 sisar joined #perl6
15:29 am0c_ joined #perl6
15:29 dalek rakudo/Q: 51666f9 | jnthn++ | src/Perl6/ (2 files):
15:29 dalek rakudo/Q: Parse single quotes as we do doubles in regexes.
15:29 dalek rakudo/Q:
15:29 dalek rakudo/Q: Should make sure we parse them as Perl 6 would.
15:29 dalek rakudo/Q: review: https://github.com/rakudo/rakudo/commit/51666f9871
15:29 dalek rakudo/Q: 21eb9c7 | jnthn++ | src/Perl6/Grammar.pm:
15:29 dalek rakudo/Q: Generalize nibbler actions handling.
15:29 dalek rakudo/Q:
15:29 dalek rakudo/Q: This will mean we can nibble regexes also.
15:29 dalek rakudo/Q: review: https://github.com/rakudo/rakudo/commit/21eb9c71f7
15:29 dalek rakudo/Q: afa0a2b | jnthn++ | src/Perl6/ (2 files):
15:29 dalek rakudo/Q: Switch /.../ over to using nibble.
15:29 dalek rakudo/Q:
15:29 dalek rakudo/Q: Just one test regression, which is because < a aaa > in regexes is not
15:29 dalek rakudo/Q: updated for new quote handling yet.
15:29 dalek rakudo/Q: review: https://github.com/rakudo/rakudo/commit/afa0a2ba9f
15:33 benabik joined #perl6
15:35 [Coke] brrt: no I just reported it and then stuck with a working version.
15:37 brrt its probably something of a parrot bug
15:37 brrt but i'm having trouble finding where
15:38 jnthn brrt: https://github.com/parrot/parrot/blob​/master/src/pmc/callcontext.pmc#L985
15:38 jnthn brrt: I suspect C NULLs are escaping from there
15:39 brrt that would make sense
15:40 * brrt should figure out the shortest one-liner that triggers it
15:45 brrt nqp: ~nqp::ctx()
15:45 p6eval nqp:  ( no output )
15:45 brrt nqp: say ~nqp::ctx()
15:45 p6eval nqp:  ( no output )
15:46 jnthn brrt: I think it was filed in an NQP ticket
15:46 brrt nqp: say ~ nqp::callerctx(nqp::ctx))
15:46 p6eval nqp: OUTPUT«Confused at line 2, near "say ~ nqp:"␤current instr.: 'panic' pc 13089 (src/stage2/gen/NQPHLL.pir:4619) (src/stage2/gen/NQPHLL.pm:324)␤»
15:46 brrt oh, yes, masak++ has posted it
15:46 cognominal joined #perl6
15:47 xinming joined #perl6
15:47 jnthn nqp: my $x := nqp::ctx(); while $x { $x := nqp::ctxcaller($x) }
15:47 p6eval nqp: OUTPUT«get_bool() not implemented in class 'CallContext'␤current instr.: '' pc 59 ((file unknown):48) (/tmp/8oL_CszLJz:1)␤»
15:47 jnthn nqp: my $x := nqp::ctx(); while nqp::defined($x) { $x := nqp::ctxcaller($x) }
15:47 p6eval nqp:  ( no output )
15:47 jnthn hm, well, something like that :)
15:47 brrt try stringification
15:47 jnthn nqp: my $x := nqp::ctx(); while nqp::defined($x) { $x := nqp::ctxcaller($x); ~$x }
15:47 p6eval nqp: OUTPUT«(signal SEGV)»
15:47 jnthn nqp: my $x := nqp::ctx(); while nqp::defined($x) { $x := nqp::ctxcaller($x); say(pir::typeof__SP($x)); }
15:48 p6eval nqp: OUTPUT«(signal SEGV)CallContext␤CallContext␤CallConte​xt␤CallContext␤CallContext␤CallContext​␤CallContext␤CallContext␤CallContext␤»
15:48 jnthn Or that
15:48 brrt basically
15:48 jnthn I guess it hits the NULL and BOOM
15:48 brrt it returns a null
15:48 brrt which you stringify
15:48 brrt which dies somewhere in parrot_pcc_*
15:48 twinshadow joined #perl6
15:48 brrt so
15:49 brrt hmm
15:49 brrt we can put null pointer checks everywhere
15:49 brrt but
15:49 brrt callcontext is a Really Hot Path
15:49 jnthn getattribute isn't
15:49 jnthn *get_attr
15:49 brrt fair enough
15:49 jnthn Or at least, it'd best not be :)
15:53 PacoAir joined #perl6
15:58 brrt lets check it out
16:00 brrt (i have placed the obvious fix in that method)
16:04 brrt well, nqp builds happily now
16:05 brrt and… it exits with a null pmc access
16:05 brrt yay
16:06 brrt jnthn++ for the right pointer
16:06 [Coke] Is this something where parrot is handling us a null or we're making one?
16:07 brrt handing
16:07 brrt apparantly, parrot doesn't initialize with pmcnull
16:07 brrt but with a real null
16:09 jnthn brrt: yay
16:09 jnthn parrot-- for the wrong pointer :P
16:09 brrt poor parrot
16:09 jnthn :)
16:09 brrt whats simpler, pull-requests or posting the diff?
16:09 jnthn Well, not initializing with PMCNULL is fine...it's cheaper
16:10 jnthn Pull request then mention on #parrot I guess
16:10 brrt yes, but that means that you Must Check Null everywhere
16:10 jnthn I meant, C-land things
16:10 jnthn The trick is ensuring the real NULLs don't leak :)
16:11 brrt yes, and that proves to be tricky indeed :-)
16:11 jnthn Though if you're the CLR, you use real NULLs and install a segfault handler...
16:11 brrt which brings us to the question
16:11 brrt why don't we have that in parrot?
16:11 hoelzro hehe, segfault handler >:)
16:11 brrt my goes it would kill use in an embedding context
16:11 japhb hoelzro: Those are actually really useful for a lot of important algorithms.
16:12 hoelzro oh, I believe it
16:12 hoelzro I used one a while back
16:12 hoelzro although all it did was trigger a crash reporter
16:12 jnthn brrt: Well, they mostly compared about run on Windows I think. And it's not the only way to implement it.
16:12 jnthn brrt: Just fairly efficient.
16:13 dalek rakudo/Q: a466b61 | jnthn++ | src/Perl6/ (2 files):
16:13 dalek rakudo/Q: Switch quote words in regex to new quote parser.
16:13 dalek rakudo/Q: review: https://github.com/rakudo/rakudo/commit/a466b617fc
16:13 dalek rakudo/Q: bf0e21f | jnthn++ | src/Perl6/Grammar.pm:
16:13 dalek rakudo/Q: Remove unused method.
16:13 dalek rakudo/Q: review: https://github.com/rakudo/rakudo/commit/bf0e21f304
16:13 jnthn And yes, you need an OS with the hook :)
16:13 hoelzro heh
16:14 [Coke] brrt: where in get_attr_str is the NULL coming from?
16:14 brrt [Coke]: my guess is the caller_ctx attribute
16:15 brrt the cheapest and universal fix is to replace return value with if (value) return value; else return PMCNULL
16:15 brrt which is with i did, plus some formatting
16:15 brrt s/with/wath/
16:15 brrt s/wath/what/
16:15 benabik joined #perl6
16:16 [Coke] a better fix is probably to actually initialize all the PMC attributes to PMCNULL. (or fix GET_ATTR to DTRT.)
16:16 brrt DTRT?
16:16 japhb Do The Right Thing
16:16 brrt i guess
16:18 [Coke] but that's definitely more work.
16:18 brrt fixing GET_ATTR_ isn't necessarily more work, its defined somewhere
16:18 [Coke] once you build parrot, it's in include/pmc/pmc_callcontext.h
16:19 bowtie joined #perl6
16:19 [Coke] I'm not sure we know at that point if it's a PMC or not, though.
16:19 [Coke] You might know when that macro is generated.
16:22 rjbs Looking back on my "how do you find the methods on a sub," I see chatter from overnight:
16:22 rjbs > Sub.^methods>>.name.say
16:22 rjbs but with ^attributes, works
16:22 rjbs Unmarshallable foreign language value passed for parameter 'obj'
16:24 tadzik Interview with moritz++ http://www.i-programmer.info/professional-​programmer/i-programmer/5002-perl-6-and-pa​rrot-in-conversation-with-moritz-lenz.html
16:24 brrt [Coke]: thats fair
16:35 am0c_ joined #perl6
16:36 [Coke] does that pull request fix the nqp build, or just make it possible to fix the nqp build?
16:37 [Coke] brrt++
16:37 jnthn [Coke]: < brrt> well, nqp builds happily now
16:37 jnthn brrt++ indeed
16:37 * jnthn feared a GC issue
16:38 havenn joined #perl6
16:38 jnthn r: my $x = 'abcd'; $x ~~ s[[ \w ]] = 'x'; say $x;
16:38 p6eval rakudo 34febe: OUTPUT«xbcd␤»
16:40 jnthn r: my $x = 'abcd'; $x ~~ s{ \w } = 'x'; say $x;
16:40 p6eval rakudo 34febe: OUTPUT«===SORRY!===␤CHECK FAILED:␤Undefined routine '&s' called (line 1)␤Undefined routine '&w' called (line 1)␤»
16:40 havenn joined #perl6
16:41 jnthn r: my $x = 'abcd'; $x ~~ s!\w!x!; say $x;
16:41 p6eval rakudo 34febe: OUTPUT«===SORRY!===␤Confused␤at /tmp/MoEi2tcHDR:1␤»
16:43 jnthn moritz++ # interview
16:50 kaare_ joined #perl6
17:01 havenn joined #perl6
17:08 benabik joined #perl6
17:13 am0c_ joined #perl6
17:16 flussence g'morning, GMT-9
17:16 havenn joined #perl6
17:17 jnthn o/ flussence
17:20 cognominal joined #perl6
17:23 topo` joined #perl6
17:28 diakopter o/
17:29 am0c joined #perl6
17:31 dalek nqp/Qcompat: 77c0c7d | jnthn++ | src/QRegex/P5Regex/Grammar.nqp:
17:31 dalek nqp/Qcompat: Update P5Regex to have user-chosen stopper hook.
17:31 dalek nqp/Qcompat:
17:31 dalek nqp/Qcompat: Also means that a workaround can be eliminated.
17:31 dalek nqp/Qcompat: review: https://github.com/perl6/nqp/commit/77c0c7dad3
17:32 jnthn o/ diakopter
17:32 dalek rakudo/Q: 0ad1f12 | jnthn++ | src/Perl6/ (2 files):
17:32 dalek rakudo/Q: Refactor substitutions to be STD-like.
17:32 dalek rakudo/Q:
17:32 dalek rakudo/Q: Eliminates the last use of quote_EXPR, and enables use of user-chosen
17:32 dalek rakudo/Q: quotes. Seems like some better error reporting also.
17:32 dalek rakudo/Q: review: https://github.com/rakudo/rakudo/commit/0ad1f12832
17:32 dalek rakudo/Q: 082194b | jnthn++ | src/Perl6/ (2 files):
17:32 dalek rakudo/Q: Allow user-chosen delimeters for m and rx.
17:32 dalek rakudo/Q: review: https://github.com/rakudo/rakudo/commit/082194be58
17:32 dalek rakudo/Q: 7ba48cf | jnthn++ | src/Perl6/ (2 files):
17:32 dalek rakudo/Q: For consistency, nibble in regex_def too.
17:32 dalek rakudo/Q: review: https://github.com/rakudo/rakudo/commit/7ba48cf775
17:32 dalek rakudo/Q: 59553bf | jnthn++ | src/Perl6/Grammar.pm:
17:32 dalek rakudo/Q: Remove now-unrequired stopper hack.
17:32 dalek rakudo/Q: review: https://github.com/rakudo/rakudo/commit/59553bf570
17:32 dalek rakudo/Q: 8078736 | jnthn++ | src/Perl6/ (2 files):
17:32 dalek rakudo/Q: Unbust :P5; supports user-chosen delims too.
17:32 dalek rakudo/Q: review: https://github.com/rakudo/rakudo/commit/807873688a
17:54 havenn joined #perl6
18:00 havenn joined #perl6
18:01 rindolf joined #perl6
18:06 Chillance joined #perl6
18:09 am0c joined #perl6
18:09 benabik joined #perl6
18:12 mr007x joined #perl6
18:23 havenn joined #perl6
18:25 havenn joined #perl6
18:29 havenn joined #perl6
18:30 jaldhar_ joined #perl6
18:37 fgomez joined #perl6
18:40 havenn joined #perl6
18:42 havenn joined #perl6
18:43 havenn joined #perl6
18:55 dalek rakudo/Q: 662c219 | jnthn++ | src/Perl6/Grammar.pm:
18:55 dalek rakudo/Q: Implement quote adverbs.
18:55 dalek rakudo/Q: review: https://github.com/rakudo/rakudo/commit/662c2196e0
18:57 mr007x left #perl6
18:59 jnthn If possible, could somebody (pref with ICU) build rakudoQ (needs nqp/Qcompat) and spectest it?
19:00 * jnthn thinks it's mergeable
19:00 [Coke] brrt's fix (and knock-on fix from cotto) pushed.
19:02 jnthn brrt++, [Coke]++, cotto++ # getting stuff tracked down/fixed
19:02 cotto got anything else while I'm in there?
19:04 havenn joined #perl6
19:04 [Coke] bother. I cannot git clone a git:// address with my default firewall settings.
19:05 cotto sshuttle is great for that if you can't control the firewall directly
19:05 cotto On some networks, I just forward everything over port 443 to a Linode vm.
19:05 jnthn cotto: I see some patches for the IO stuff we ran in to have landed a bit ago, so I guess we should try using latest Parrot with IO changes again.
19:05 [Coke] I really shouldn't be doing that.
19:06 cotto might be frowned on
19:07 japhb I can build on 32-bit Linux with ICU, but spectest would take a LONG time.  Anyone with a faster machine planning to test RakudoQ, or should I give it a try?
19:08 havenn joined #perl6
19:09 japhb Actually, jnthn, don't you have a working Debian VM from when you were building * that you could do it on?  ICU should be there for sure ...
19:09 jnthn oh, point...
19:09 japhb (well, you might have to install libicu-dev, but still)
19:10 flussence hm, I can do a build (as soon as I figure out the manual build stuff; --gen-parrot won't work)
19:12 flussence oh that was easy
19:13 jnthn japhb: Yeah, installed that now
19:13 jnthn Let's give this a go...
19:14 * moritz builds NQP for a rakudo/Q spectest run
19:24 moritz jnthn: t/spec/S02-literals/misc-interpolation.rakudo faisl a test
19:24 moritz not ok 25 - curly brace delimiters don't interfere with closure interpolation
19:24 moritz #      got: 'a{chr 98}c'
19:24 moritz # expected: 'abc'
19:24 jnthn moritz: oh, shoulda mentioned that one
19:24 jnthn Yes, the test is wrong.
19:25 moritz that's what I would have checked enxt :-)
19:25 moritz *next
19:25 jnthn TimToady++ mentioned that nested delims are meant to take precedence over escapes
19:25 Chillance joined #perl6
19:26 jnthn gee, building in this VM is a load slower than I'm used to things building on this machine...
19:27 moritz fwiw setting compilation wasn't slower than in nom
19:27 moritz 116s for the parse+past stage, which is normal on that machine
19:27 jnthn moritz: Yeah, that matches my measurements
19:27 jnthn (that it's stayed the same)
19:33 Targen joined #perl6
19:34 havenn joined #perl6
19:34 jnthn oh, my VM is configured with 1 CPU. No wonder parallel spectest is sucking...
19:38 sirrobert joined #perl6
19:38 moritz jnthn: https://gist.github.com/3995934
19:38 havenn joined #perl6
19:38 flussence I got quite a few more than that...
19:38 moritz $ ./perl6 -Ilib t/spec/S12-enums/thorough.rakudo
19:38 moritz ===SORRY!===
19:38 moritz Method 'returns' not found for invocant of class 'Parcel'
19:40 jnthn huh, passes here
19:40 sirrobert hallo
19:40 jnthn oh...
19:40 jnthn There's been unfudge that I hadn't pulled in t/spec
19:41 jnthn hm, now I get it
19:43 jnthn The Pod tests are still too faily for me here to be likely to easily track down the S26 one
19:43 mj41 joined #perl6
19:44 * flussence uses that handy tap archive feature
19:45 jnthn um, how did this code ever work, I wonder...
19:45 jnthn @values.push($*W.compile_time_evaluate($<term>, $<term>.ast));
19:46 jnthn Then in the loop over @values
19:46 jnthn if istype($_.returns(), $Pair) {
19:46 jnthn That code is always doomed if we get a real value
19:46 * moritz doesn't see why
19:46 sjohnson joined #perl6
19:47 jnthn moritz: Because compile_time_evaluate returns a real Perl 6 object, not a QAST node
19:47 moritz oh, right
19:47 jnthn r: Mu.returns
19:47 p6eval rakudo 34febe: OUTPUT«No such method 'returns' for invocant of type 'Mu'␤  in block  at /tmp/fH9gbT2_Dd:1␤␤»
19:47 jnthn Something has changed that makes it take that path, though...
19:48 jnthn ah, yeah
19:48 jnthn The structure of the QAST that shell words returns has probably changed a bit
19:50 moritz it was probably me who wrote the offending code
19:50 jnthn *nod*
19:50 flussence here's what I get from it: http://flussence.eu/~ant/perl​6/etc/rakudoQ_test_run.tar.gz
19:50 jnthn I think I see what I changed that made it unhappy
19:51 flussence there's quite a few "todo passed" in there too
19:52 sirrobert ooc, is there a timeline for implementing heredocs in rakudo at the moment?
19:52 moritz sirrobert: the Q branch is a prerequisite for it
19:53 jnthn heredocs are one of the main motivations for doing the Q branch :)
19:53 sirrobert hmmm that's a branch dealing with quoting?
19:53 moritz yes
19:53 sirrobert ok, thanks -- will read =)
19:56 jnthn flussence: are there...test results amongst that lot?
19:57 flussence that's just what "make rakudo_test_run.tar.gz" gives me, I dunno if there's an easy way to extract the useful bits
19:57 flussence oh wait, yes there is
19:58 SamuraiJack_ joined #perl6
19:58 * flussence runs make spectest_smolder
19:58 bluescreen10 joined #perl6
19:59 jnthn Grr, the obvious change doesn't help
20:01 wk joined #perl6
20:03 jnthn moritz: Hm. The sockets one passes for me both under Windows and Linux.
20:04 moritz jnthn: which parrot revision?
20:04 jnthn This is Parrot version 4.4.0-devel built for amd64-win32
20:04 * [Coke] is reminded to restart work on his smolder replacement.
20:06 flussence jnthn: this should be more readable - http://smolder.parrot.org/app/​projects/report_details/32197
20:07 Util joined #perl6
20:07 flussence don't trust the "only show failures" thing, there's a few that show as "100%" but apparently crashed
20:07 flussence e.g. http://smolder.parrot.org/app​/projects/tap_stream/32197/14
20:10 havenn joined #perl6
20:12 birdwindupbird joined #perl6
20:13 jnthn [Coke]: Please do, this thing doesn't even render results properly in firefox :/
20:13 jnthn bah, I'm not sure I trust anything about this result set
20:14 flussence the short version: https://gist.github.com/3996180
20:14 havenn joined #perl6
20:14 jnthn flussence: That looks terribly like something ICU related
20:16 havenn joined #perl6
20:16 flussence I've seen these particular files have failures going back a year or more, so I'm not convinced rakudo's causing the failures
20:17 jnthn flussence: Ah, so they're probably not specific to the branch?
20:17 sirrobert r: class A { method b (Str $str, &blk) { }; multi method c (@arr) { }; multi method c (List $list) { }; }; say A.^methods[0].perl; say A.^methods[1].perl;
20:17 p6eval rakudo 34febe: OUTPUT«method b(A : Str $str, &blk, Mu *%_) { ... }␤method c(: , Mu *%_) { ... }␤»
20:17 jnthn They do look like a really odd bunch of regressions...
20:17 flussence I definitely recognise the S05 ones being problematic
20:17 jnthn (if they were)
20:17 sirrobert How do I get a hold of the individual multi-methods?
20:17 jnthn OK
20:18 jnthn The role one also is odd.
20:18 sirrobert (in particular I want the signatures)
20:18 jnthn Though the ones that fail are error reporting.
20:18 havenn_ joined #perl6
20:20 flussence sirrobert: this might help - https://github.com/flussence/perl6​-XMMS2/blob/master/bin/p6xmms2#L7
20:20 sirrobert fluessence: going
20:21 jnthn In Pod like
20:21 jnthn =begin code :allow<B>
20:21 jnthn What' the :allow<B> thing called?
20:21 flussence config something-something
20:21 tadzik just pod configuration, I think
20:21 tadzik like =begin table :caption<foo>
20:21 tadzik we have tests for some of those
20:22 jnthn Yeah
20:22 jnthn I've busted them...
20:22 tadzik (:
20:23 jnthn 09-configuration.t
20:23 tadzik good that I wrote them then ;)
20:23 jnthn token pod_configuration($spaces = '') {
20:23 jnthn [ [\n $spaces '=']? \h+ <colonpair> ]*
20:23 jnthn }
20:23 jnthn Does that look like what parses it?
20:23 tadzik does that what?
20:24 tadzik .oO( that should probably be <colonpair>* too )
20:24 jnthn Is that colonpair what matches the :caption<foo>
20:24 tadzik yes
20:24 jnthn OK
20:24 jnthn oh...
20:24 jnthn if $val<quote_EXPR> {
20:25 jnthn yeah, quote_EXPR is no more... :)
20:25 tadzik :D
20:25 tadzik that'll explain it
20:28 [particle] joined #perl6
20:29 jnthn whee, it passes again.
20:29 flussence rule pi of removing stuff: use ack to make sure it's really gone!
20:30 dalek rakudo/Q: 6f84ec6 | jnthn++ | src/Perl6/Actions.pm:
20:30 dalek rakudo/Q: Improve post-processing of quote words.
20:30 dalek rakudo/Q:
20:30 dalek rakudo/Q: Produces a flatter result without empty parcels in, which unconfuses
20:30 dalek rakudo/Q: enum handling.
20:30 dalek rakudo/Q: review: https://github.com/rakudo/rakudo/commit/6f84ec67f8
20:32 [particle]1 joined #perl6
20:32 [Coke] jnthn: Roger that, sir.
20:33 [Coke] (smolder repl.)
20:35 dalek rakudo/Q: f7820e7 | jnthn++ | src/Perl6/Pod.pm:
20:35 dalek rakudo/Q: Fix Pod configuration regression.
20:35 dalek rakudo/Q: review: https://github.com/rakudo/rakudo/commit/f7820e7229
20:35 Ace___ joined #perl6
20:35 Ace___ Hello!
20:36 masak Ace___: hi!
20:36 Ace___ I want to learn programming
20:36 masak you're in the right place.
20:36 masak well, sorta. :)
20:36 masak Ace___: where do you want to start?
20:36 Ace___ I want to start on what can i do in perl
20:37 tadzik almost everything, I think :)
20:37 masak Perl gives you the power to do most programming tasks.
20:37 jnthn moritz: OK, cleared up the regressions (socket one aside).
20:38 jnthn (which I don't think can be to do with the branch)
20:38 masak Ace___: though it's at its best with things having to do with text and files and stuff that can be reduced to those two.
20:38 masak come back soon! :)
20:38 tadzik (:
20:38 jnthn Ok, merge time
20:39 tadzik yay
20:39 dalek nqp: 4a1f1e2 | jnthn++ | src/ (2 files):
20:39 dalek nqp: Bring regex nibbler closer to STD.
20:39 dalek nqp:
20:39 dalek nqp: Means we'll be able to support user-picked stoppers in Rakudo. Should
20:39 dalek nqp: also deal with some over-eager backtracking bugs leading to bad errors.
20:39 dalek nqp: No NQP test regressions with this, but may well bust non-Q Rakudo, so
20:39 dalek nqp: in a branch for now.
20:39 dalek nqp: review: https://github.com/perl6/nqp/commit/4a1f1e2259
20:39 dalek nqp: 77c0c7d | jnthn++ | src/QRegex/P5Regex/Grammar.nqp:
20:39 dalek nqp: Update P5Regex to have user-chosen stopper hook.
20:39 dalek nqp:
20:39 dalek nqp: Also means that a workaround can be eliminated.
20:39 dalek nqp: review: https://github.com/perl6/nqp/commit/77c0c7dad3
20:43 sirrobert just wanted to say (by way of appreciation)... it is SO nice to be able to do things like this:
20:43 sirrobert r: my %foo = {a => 1, b => 2}; my @good = <a b>; my @bad = <a b c>; say (%foo.exists: all(@good)) ?? "yep" !! "nope"; say (%foo.exists: all(@bad)) ?? "yep" !! "nope";
20:43 p6eval rakudo 34febe: OUTPUT«yep␤nope␤»
20:44 sirrobert I keep hitting these little bits that really demonstrate the excellence of the architecture.
20:45 sirrobert ok, gotta go.  Later all.
20:46 havenn joined #perl6
20:48 masak sirrobert++
20:49 dalek Heuristic branch merge: pushed 47 commits to rakudo/nom by jnthn
20:51 dalek rakudo/nom: 5fbf373 | jnthn++ | docs/ChangeLog:
20:51 dalek rakudo/nom: Add some ChangeLog notes.
20:51 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/5fbf373ec9
20:51 dalek rakudo/nom: c45b029 | jnthn++ | docs/ROADMAP:
20:51 dalek rakudo/nom: Remove 2 done ROADMAP items.
20:51 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/c45b029af7
20:51 * masak .oO( hubristic branch merge )
20:51 sivoais joined #perl6
20:56 havenn joined #perl6
21:02 havenn joined #perl6
21:05 jnthn moritz: Did you forget to push S03-operators/andthen.t
21:06 sjohnson joined #perl6
21:07 dalek ecosystem: 5372e64 | (Timothy Totten)++ | META.list:
21:07 dalek ecosystem: Added XML::Query
21:07 dalek ecosystem: review: https://github.com/perl6/e​cosystem/commit/5372e649bf
21:09 cognominal joined #perl6
21:09 dalek roast: 4f9bd38 | jnthn++ | S02-literals/misc-interpolation.t:
21:09 dalek roast: Correct a test that was out of line with STD.
21:09 dalek roast:
21:09 dalek roast: Delimiters to take precedence over escape sequences.
21:09 dalek roast: review: https://github.com/perl6/roast/commit/4f9bd38771
21:09 dalek roast: fff18c3 | jnthn++ | S0 (3 files):
21:09 dalek roast: Various Rakudo unfudges.
21:09 dalek roast: review: https://github.com/perl6/roast/commit/fff18c36b8
21:18 masak today's autopun spotting: https://twitter.com/grazingbi​son/status/63309212540870656
21:21 jnthn :P
21:21 masak jnthn: should I close https://rt.perl.org/rt3//Publ​ic/Bug/Display.html?id=115272 ? or tag testneeded?
21:22 jnthn masak: I tagged it testneeded already, I thought?
21:23 [Coke] yup
21:23 jnthn afk for a little bit
21:24 masak oh, ok.
21:24 masak jnthn++
21:27 japhb moritz++ # interview
21:35 havenn joined #perl6
21:36 masak yes, very nice. moritz++
21:38 havenn_ joined #perl6
21:39 kurahaupo joined #perl6
21:41 jnthn Back
21:41 jnthn Nobody is yet signed up for the next Rakudo releases. :)
21:43 masak jnthn: wanna do one? :)
21:43 jnthn masak: Not really :P
21:43 masak seems I've done four this year.
21:44 * jnthn has done 3 R*s and expects he may be on the hook for at least one more this year :)
21:46 masak :)
21:47 jnthn Anyway, whoever does the next compiler release most likely gets to do the first Rakudo release with heredocs :P
21:47 masak ooh
21:47 japhb I would be happy to do one if my tuits weren't so damned unreliable.  :-/
21:51 cognominal joined #perl6
22:09 masak 'night, #perl6
22:09 sorear o/ masak
22:09 rindolf joined #perl6
22:09 cognominal joined #perl6
22:20 cognominal joined #perl6
22:21 domidumont joined #perl6
22:30 sergot good night ! o/
22:35 rindolf sergot: night.
22:48 tokuhiro_ joined #perl6
23:05 leont joined #perl6
23:06 jnthn 'night, #perl6
23:24 havenn joined #perl6

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

Perl 6 | Reference Documentation | Rakudo