»ö« Welcome to Perl 6! | perl6.org/ | evalbot usage: 'perl6: say 3;' or rakudo:, niecza:, std:, or /msg camelia perl6: ... | irclog: irc.perl6.org | UTF-8 is our friend!
Set by sorear on 25 June 2013.
00:00 Mouq joined
Mouq nqp: 1+"abcd" 00:04
camelia ( no output )
00:08 aindilis left 00:09 aindilis joined 00:15 Psyche^_ left 00:17 Psyche^ joined
Mouq nqp: nqp::croak("wait a minute") 00:19
camelia nqp-moarvm: OUTPUT«No registered operation handler for 'croak'␤compile_op␤»
..nqp-parrot: OUTPUT«Error while compiling block : Error while compiling op croak (source text: "nqp::croak(\"wait a minute\")"): No registered operation handler for 'croak'␤current instr.: '' pc 55111 (gen/parrot/stage2/QAST.pir:20131) (gen/parrot/stage2/QAST.nqp:3320)␤»
..nqp-jvm: OUTPUT«No registered operation handler for 'croak'␤ in compile_op (gen/jvm/stage2/QAST.nqp:231)␤ in as_jast (gen/jvm/stage2/QAST.nqp:3696)␤ in as_jast (gen/jvm/stage2/QAST.nqp:2968)␤ in (gen/jvm/stage2/QAST.nqp:3665)␤ in compile_all_the_stmts (gen/jvm/stage2…»
BenGoldberg npq: say(1+"abcd") 00:22
Mouq nqp: say(1+"abcd") 00:28
00:28 wbill joined
camelia nqp-moarvm, nqp-jvm, nqp-parrot: OUTPUT«1␤» 00:28
Mouq
.oO( Not Perl? — Quite. )
diakopter Not Quit Perl
Not Quiet Perl 00:29
No Quip Perl
colomon No Quip Perl will never happen.
00:34 dmol left
Mouq Never Queenside-castle, Pierre! 00:35
r: sub infix:<\x227c>(\a, \b) { 1 + 2 }; say 1 ≼ 2; # backclogged problem 00:49
camelia rakudo-parrot ec29c0, rakudo-jvm 882e33: OUTPUT«False␤»
colomon r: say 1 ≼ 2 00:52
camelia rakudo-parrot ec29c0, rakudo-jvm 882e33: OUTPUT«False␤»
colomon r: sub infix:<+>(\a, \b) { 42; }; say 1 + 2 00:53
camelia rakudo-parrot ec29c0, rakudo-jvm 882e33: OUTPUT«42␤»
colomon interesting
r: sub infix:<≼>(\a, \b) { 1 + 2 }; say 1 ≼ 2; # backclogged problem 00:54
camelia rakudo-parrot ec29c0, rakudo-jvm 882e33: OUTPUT«3␤»
colomon .x227c
BenGoldberg r: sub infix:<\x227>(\a, \b) { 1 + 2 }; say 1 [\x227] 2;
camelia rakudo-parrot ec29c0, rakudo-jvm 882e33: OUTPUT«3␤»
BenGoldberg preflex: seen yoleaux 00:55
preflex yoleaux was last seen on #perl6 1 day, 5 hours, 33 minutes and 17 seconds ago, saying: 18:23Z <diakopter> Mouq: awesome work on stdsigspace Mouq++
lue r: say 1 ≤ 2; say 3 ≠ 3; 00:56
camelia rakudo-parrot ec29c0: OUTPUT«===SORRY!=== Error while compiling /tmp/O8vbPCHmvc␤Two terms in a row␤at /tmp/O8vbPCHmvc:1␤------> say 1 ⏏≤ 2; say 3 ≠ 3;␤ expecting any of:␤ postfix␤ infix stopper␤ infix o…»
..rakudo-jvm 882e33: OUTPUT«===SORRY!=== Error while compiling /tmp/5P2n_iD4fA␤Two terms in a row␤at /tmp/5P2n_iD4fA:1␤------> say 1 ⏏≤ 2; say 3 ≠ 3;␤ expecting any of:␤ postfix␤ infix stopper␤ infix or m…»
lue ._.
BenGoldberg r: say '≼'.ord
camelia rakudo-parrot ec29c0, rakudo-jvm 882e33: OUTPUT«8828␤»
BenGoldberg r: say '≤'.ord
camelia rakudo-parrot ec29c0, rakudo-jvm 882e33: OUTPUT«8804␤»
BenGoldberg r: say "\x2654" ... "\x265f" 00:59
camelia rakudo-parrot ec29c0, rakudo-jvm 882e33: OUTPUT«♔ ♕ ♖ ♗ ♘ ♙ ♚ ♛ ♜ ♝ ♞ ♟␤»
01:04 betterwo1ld joined, gabriel__ joined, huf_ joined, gabriel__ is now known as Guest40800 01:08 huf left, betterworld left, _sri left 01:12 Mouq left 01:17 vael joined 02:16 ilogger2 joined, ChanServ sets mode: +v ilogger2 02:19 raiph joined
raiph rurban: did you see this (and following exchange with jnthn)? irclog.perlgeek.de/perl6/2013-10-16#i_7722276 02:19
02:22 raiph left
lue O.o ilogger2 was gone for hour ‽‽ 02:28
*an hour 02:29
02:46 _ilbot joined 03:00 Mouq joined 03:04 raiph joined 03:06 Mouq left
raiph p5eval: say 1 03:08
p5eval raiph: 11
BenGoldberg blinks
p5eval: print 1 03:09
p5eval BenGoldberg: 11
BenGoldberg p5eval: print 2
p5eval BenGoldberg: 21
BenGoldberg p5eval: print "\r"
p5eval BenGoldberg: 1
BenGoldberg p5eval: print "\b" x 3
p5eval BenGoldberg: 1
raiph is it possible to use p5eval with /msg?
BenGoldberg p5eval: help 03:10
p5eval BenGoldberg: help
raiph (i get no response in a privmsg session with camelia)
(to "p5eval: say 1"; whereas I do to "r: say 1")
BenGoldberg p5eval is a seperate bot from camelia 03:11
If you type p5eval: foo while privmsg-ing with camelia, the p5eval bot doesn't see it.
raiph k 03:12
BenGoldberg The only reason it responds *here* on #perl6, is because it has /join-ed the channel, and sees what we are (publicly) typing 03:13
raiph heh. i've used dozens of irc lines to try avoiding spamming the channel :) 03:14
p5eval: say $?BINGO 03:15
p5eval raiph: No output
raiph p5eval: say $?%(BINGO
p5eval raiph: ERROR: syntax error at (eval 7) line 2, at EOF
lue BenGoldberg: who authorized that kind of sentience for p5eval? :) 03:18
03:32 cognominal joined
raiph in p5 code, $?FOO is the "special variable" $? followed without a space by the "bareword" FOO. what does a variable followed by a bareword *mean* in p5? if $? and FOO are defined, how is "say $?FOO" interpreted? 03:46
p5eval: $? = "boo"; FOO = "bar"; say $?FOO 03:47
p5eval raiph: ERROR: Can't modify constant item in scalar assignment at (eval 7) line 1, at EOF
raiph p5eval: FOO = "bar"; say $?FOO 03:48
p5eval raiph: ERROR: Can't modify constant item in scalar assignment at (eval 7) line 1, at EOF
raiph p5eval: $? = "boo"; say $?FOO
p5eval raiph: No output
raiph p5eval: $? = "boo"; sub FOO { say "bar" }; say $?FOO
p5eval raiph: bar
lue raiph: I assume this is why Perl 6 doesn't follow that behavior :) 03:51
raiph lue: i was surprised to see p5eval interpret it. i thought it would reject it as ttiar 04:05
04:33 dansamo joined 04:41 preflex_ joined, ChanServ sets mode: +v preflex_ 04:42 preflex_ is now known as preflex
moritz lue: for release R* you just need commit access to rakudo/star, not rakudo/rakudo 05:12
lue: and for rakudo/star you don't need a CLA
lue: in fact I've just given you a commit bit 05:13
lue moritz: ooh.
moritz lue: in that repo, tools/star/release-guide.pod contains instructinos
lue moritz: does it need to happen RIGHT NOW or could it wait for a few hours? It's getting late here (not that I couldn't stay up a while longer :P). 05:15
moritz lue: no hurry; should just happen this month 05:27
r: say Date.new(2013, 10, 31) - Date.today
camelia rakudo-parrot ec29c0, rakudo-jvm 882e33: OUTPUT«4␤»
lue One more question: For Step 2, how do I pick the right revisions? Is there a rule of thumb? 05:28
05:28 SmokeMachine joined
moritz lue: 2013.10 for rakudo and nqp 05:28
always the released versions
and for parrot, the version that's in nqp's tools/buil/PARROT_REVISION 05:29
lue I had a feeling it was something like that :) .
♘, #perl6 o/ [I just decided arbitrarily that the white horse is for when I say bye to this channel] 05:34
TimToady looks black to me 05:35
05:36 SmokeMac_ joined
lue r: say "\c[WHITE CHESS KNIGHT] \c[BLACK CHESS KNIGHT]" 05:37
camelia rakudo-parrot ec29c0, rakudo-jvm 882e33: OUTPUT«♘ ♞␤»
05:38 SmokeMachine left
TimToady they should be labelled FOREGROUND and BACKGROUND instead of BLACK and WHITE 05:40
05:41 SmokeMac_ left, SmokeMachine joined 05:42 dansamo left 05:45 raiph left 05:46 SmokeMachine left 05:47 SmokeMachine joined 05:52 SmokeMachine left 05:54 aindilis joined 05:59 isBEKaml joined 06:15 isBEKaml left
dalek ar: a4b16fa | moritz++ | tools/star/release-guide.pod:
[release guide] clarify which versions to use, lue++
06:41
06:46 darutoko joined 06:50 kaare_ joined 07:02 SamuraiJack_ joined
Woodi hi all :) 07:30
about: < jnthn> And a $!x in a base class will not conflict with a $!x in a subclass.
this is what looks natural for me: www.angelfire.com/tx4/cus/shapes/java.html 07:31
what are use cases making "conflicts" important ? anyone is realy redefine priv attributes ? for me, it is bad huffmanization of features... 07:32
becouse after instantiation there is no super class - it is just definition sugar 07:33
07:34 darutoko left 07:44 _sri joined
japhb__ I'm about to trundle off to bed, but if anyone is looking for a task before I get back, making Buf actually writable would be excellent; it's the next thing blocking me on the protobuf work. 07:54
That is, if anyone's looking for LHF. Otherwise, I'll attack it myself. :-) 07:55
Dream well, *
&
08:01 SamuraiJack_ left, SamuraiJack_ joined 08:03 dmol joined 08:30 darutoko joined
hoelzro morning #perl6 08:33
masak morning, #perl6
Woodi: the underlying principle here is that the name of a private attribute is scoped to the class block. 08:34
dalek p: 1b64b46 | (Tobias Leich)++ | tools/build/MOAR_REVISION:
bump moar revision
08:35 FOAD joined
dalek p: f76801b | (Tobias Leich)++ | Configure.pl:
fix copy&pasto
08:37
08:48 lizmat joined
lizmat good *, #perl6, again from the T-Dose 08:49
FROGGS o/ 08:50
lizmat FROGGS: /o 08:53
08:56 [Sno]_ joined
dalek p: f077bf9 | (Tobias Leich)++ | tools/build/MOAR_REVISION:
bump moar rev (unbust dynamic lib loading)
08:59
09:04 xenoterracide joined 09:07 spider-mario joined 09:11 [Sno] joined, [Sno]_ left 09:12 ssutch joined 09:25 ssutch left
lizmat r: augment class Cool { method fnirble { say "fnirble" } }; say 42.fnirble # this should work according to S02:1893, no ? 09:30
synopsebot Link: perlcabal.org/syn/S02.html#line_1893
camelia rakudo-parrot ec29c0: OUTPUT«===SORRY!=== Error while compiling /tmp/HvzV2mXzmB␤augment not allowed without 'use MONKEY_TYPING'␤at /tmp/HvzV2mXzmB:1␤------> augment class Cool ⏏{ method fnirble { say "fnirble" } }; sa␤ expecting any …»
..rakudo-jvm 882e33: OUTPUT«===SORRY!=== Error while compiling /tmp/CS9XAE_Oiw␤augment not allowed without 'use MONKEY_TYPING'␤at /tmp/CS9XAE_Oiw:1␤------> augment class Cool ⏏{ method fnirble { say "fnirble" } }; sa␤ expecting any of:…»
09:35 woolfy joined
jnthn Woodi: The point is that you can inherit from something and name your attributes what you like without caring if the base class has one with the same name. In some languages, the attribute storage is like a dictionary/hash, which means they would conflict. I think Java's private has the Perl 6 behavior. 09:37
masak yeah. what jnthn said. 09:40
with roles, however...
10:09 denis_boyun joined
Woodi ok, understood something more now. but my problem is with internal methods of subclasses: pastebin.com/xXhu1zLw 10:14
10:26 kaare_ left, kaare_ joined
moritz \o 10:33
FROGGS hi moritz 10:34
10:35 dmol left
lizmat moritz o/ 10:35
10:35 sqirrel joined
masak Woodi: that is a problem in your expectations, not in Perl 6. 10:37
dalek kudo/nom: 0026bfb | (Elizabeth Mattijsen)++ | src/Perl6/Grammar.nqp:
Make Cool mutable, as per S02:1893

This just removes the error, this does not fix the subclasses not seeing any augmentation.
10:38
synopsebot Link: perlcabal.org/syn/S02.html#line_1893
10:38 dmol joined
masak Woodi: most of the OOP realizations get that one wrong, and give subclasses special access to the private storage locations of the attributes of the superclass. 10:38
Woodi: if you want that kind of access, provide accessors.
10:45 xinming joined 10:46 wbill joined
masak Woodi: for more on this, see duckduckgo.com/?q=inheritance+brea...apsulation 10:48
10:48 dmol left 10:51 dmol joined
moritz
.oO( lmddgtfy )
10:55
10:57 dmol left
masak is happy-go-ducky 11:00
dalek ecs: 5c0b6dd | (Elizabeth Mattijsen)++ | S99-glossary.pod:
Add lmddgtfy lemma
11:02
11:03 dmol joined
masak heh. 11:03
it's not a gloss just by *one* use! :P
more like a frivolous productive infix. 11:04
masak .oO( lmbtfy, lmytfy, lmatfy, lmdbtfy ) 11:05
that's <Bing Yahoo/Yandex, Altavista, Baidu>
s/,//g 11:06
masak .oO( lm[lmgtfy]fy )
this reminds me of category theory... 11:07
:)
lizmat "[12:07:29] <masak> this reminds me of category theory..." reminds me of category theory as well :-) 11:10
moritz «12:10 < lizmat> "[12:07:29] <masak>I this reminds me of category theory..." reminds me of category theory as well :-)» this reminds me of recursion :-) 11:13
lizmat
.oO( finally someone took the bait :-)
11:13 xenoterracide left
masak :P 11:18
you could say that what category theory does is take induction and turn it into a data structure (a category). 11:19
moritz GlitchMr: in your last "Perl 6 changes" blog, you missed the :sigspace change in rakudo, which IMHO is pretty significant (pun intended)
masak .oO( it's significant, so it should take up some space in the blog post ) 11:21
11:21 darutoko left
lizmat
.oO( maybe it's hidden in the whitespace )
11:22
moritz ok, I should have said "pun indented" :-) 11:23
masak there's that recursion again. 11:24
moritz lizmat: fwiw I understand the specs that Cool is indeed mutable, but you still need 'use MONKEY_PATCHING;'
(all classes are mutable by default)
GlitchMr: also, the " 11:26
Null regular expressions now throw compile time exceptions.
"
links seems to have nothing to do with the link text
lizmat reads up on S12 11:28
masak GlitchMr++ # doing the "changes" posts week after week 11:30
moritz GlitchMr++ indeed 11:38
moritz needs to check if JSON::Tiny still works after the sigspace changes
Woodi masak: it is me or there is no "special access to the private storage locations of the attributes of the superclass 11:41
moritz there is no special access 11:42
since the parent class doesn't control who its child classes can be, it doesn't make sense to give them special permissions
Woodi ..." becouse it subclass instance use OWN storage, just declared via "is also..."
moritz it's like saying "you can access this attribute ONLY if you wear that funny, yellow hat" 11:43
Woodi for me inheriting is just inlining parrent definition and using private storage
moritz but that's not what it's meant to be
Woodi: storage and types are orthogonal 11:44
(mostly)
don't argue with storage when you talk about types
and inheritance is a type feature
Woodi so instance of subclass include instance of superclass ??
moritz what do you mean by "include"? 11:45
Woodi for now I see that instantiating subclass makes creates private instance of cuperclass and delegates or calls method on it...
moritz Woodi: whatever it does, it's an implementation detail you shouldn't care about when discussion semantics 11:46
Woodi for me instantiating superclass is like making struct { } with superclass struct definition inilined
moritz Woodi: you are again conflating the storage and the type/semantics level 11:47
don't do that.
Woodi yes, I thinking about what it is under cover. just wanting to avoid method calls 11:48
masak Woodi: I just came back from the backlog. you are not yet healed from the damage most other OO languages has done to your thinking about privacy and subclassing. keep trying. :) 11:49
s/from the/to the/
Woodi masak: very pleas, use argument :)
moritz Woodi: Rakudo's implementation of the P6Opaque representation inlines the parent classes' storage 11:50
Woodi: but that's totally irrelevant for any discussion of semantics; it's an implementation detail
masak Woodi: like moritz points out, subclassing is not a structural thing. if you're arguing "they should be visible because it's just a struct", then you're not doing OO and encapsulation.
you're doing C and structs.
Woodi thats just words to visualize...
moritz no 11:51
structs is talking about representation
and representation != type/behavior
masak Woodi: subclasses can't see the private attributes of super classes. that has nothing to do with the way things are laid out in memory.
Woodi: the limitation is in the *language*, not in memory. 11:52
moritz TODO: teach ufo about perl6-j 11:54
masak oh!
mind if I file a github issue about that? 11:55
moritz I compiled my rakudo with --backends=jvm,parrot, so the 'perl6' executable is actually perl6-j
masak: it's your project; the correct question is if *you* mind :-)
masak why don't we just call the executable 'perl6'?
moritz and perl6-j doesn't understand --target=pir
masak: which one? 11:56
masak I see the problem. they both get generated, so they can't have the same name :/
moritz aye
masak is it only when you build with several backends that it gets the horrible names?
moritz so they are called perl6-j and perl6-p, and there's a convenience script called 'perl6'
masak wut's the convenience script do? 11:57
moritz masak: it launches one of the explicitly named binaries
masak moritz: my original question was "could you please file a github issue about that?", but I changed my mind at the last minute :)
moritz or more precisely, it's a copy of one of the others
masak moritz: what needs to be done for the issue to be closed?
11:57 iSlug joined
masak moritz: which one? 11:57
moritz masak: 'ufo && make test' should succeed even when the default 'perl6' is a perl6-j 11:58
Woodi hmm, still, with just behavior part, and without implementation details, obj.x = z is quite nice, short syntax :)
moritz masak: if there is only one, than that. If there is more than one, corresponding to the first backend passed to the --backends option
and if the backends are autodetected, the first one that was detected 11:59
(so from a user's perspective, essentially "undefined" 12:00
12:04 Ulti joined
masak github.com/masak/ufo/issues/8 12:04
moritz p: say ' a s b ' ~~ m:s/^ a* % s $/ 12:05
camelia rakudo-parrot 0026bf: OUTPUT«False␤»
masak p: say 'a s b ' ~~ m:s/^ a* % s $/
camelia rakudo-parrot 0026bf: OUTPUT«False␤»
masak p: say 'a s a ' ~~ m:s/^ a* % s $/ 12:06
camelia rakudo-parrot 0026bf: OUTPUT«False␤»
moritz p: say ' a s b ' ~~ m:s/^ a* % [ s ] $/ 12:07
camelia rakudo-parrot 0026bf: OUTPUT«False␤»
moritz p: say ' a s b' ~~ m:s/^ a* % [ s ] $/
camelia rakudo-parrot 0026bf: OUTPUT«False␤»
moritz p: say 'a s b' ~~ m:s/^ a* % [ s ] $/
camelia rakudo-parrot 0026bf: OUTPUT«False␤»
moritz p: say 'a sb' ~~ m:s/^ a* % [ s ] $/
camelia rakudo-parrot 0026bf: OUTPUT«False␤»
diakopter moritz: I kindof like lue's suggestion that the perl6 convenience script could take a flag to attempt to use a backend other than the default it calls without the flag
moritz p: say 'asb' ~~ m:s/^ a* % [ s ] $/ 12:08
camelia rakudo-parrot 0026bf: OUTPUT«False␤»
moritz n: say 'a s b' ~~ m:s/^ a* % [ s ] $/
camelia niecza v24-98-g473bd20: OUTPUT«False␤»
moritz diakopter: but then why not use that particular executable righ away?
12:09 denis_boyun left
moritz if you know you want to compile to PIR, use perl6-p 12:09
tadzik and what if there are 3 of them :)
perhaps rakudo now wants something equivalent to 'rakudobrew current', as in "what impl am I running anyway" 12:10
moritz n: say 'a s a' ~~ m:s/^ a* % [ s ] $/
camelia niecza v24-98-g473bd20: OUTPUT«「a s a」␤␤»
tadzik maybe setting an env variable or so
moritz p: say 'a s a' ~~ m:s/^ a* % [ s ] $/
camelia rakudo-parrot 0026bf: OUTPUT«False␤»
diakopter moritz: well, actually that makes me think it should call the default executable always, but the other executable should recognize another backend was requested..
(.. and exec it instead) 12:11
12:11 SamuraiJack_ left
lizmat r: $ perl6 -e 'module A is Int {} # this is a LTA error, right ? 12:11
moritz diakopter: let's step back, and ask: what is the use case?
camelia rakudo-jvm 882e33: OUTPUT«(timeout)»
..rakudo-parrot 0026bf: OUTPUT«===SORRY!=== Error while compiling /tmp/OBPuIegmjW␤Unsupported use of $ variable␤at /tmp/OBPuIegmjW:1␤------> <BOL>⏏$ perl6 -e 'module A is Int {} # this ␤ expecting any of:␤ statement list␤…»
moritz r: modula A is Int { } 12:12
camelia rakudo-jvm 882e33: OUTPUT«===SORRY!=== Error while compiling /tmp/N7AjgpNg6l␤Unexpected block in infix position (two terms in a row, or previous statement missing semicolon?)␤at /tmp/N7AjgpNg6l:1␤------> modula A is Int ⏏{ }␤ expecti…»
..rakudo-parrot 0026bf: OUTPUT«===SORRY!=== Error while compiling /tmp/28wKF3QgBn␤Unexpected block in infix position (two terms in a row, or previous statement missing semicolon?)␤at /tmp/28wKF3QgBn:1␤------> modula A is Int ⏏{ }␤ expe…»
moritz r: module A is Int { }
camelia rakudo-parrot 0026bf: OUTPUT«===SORRY!=== Error while compiling /tmp/AxHoxFt70A␤Method 'add_parent' not found for invocant of class 'Perl6::Metamodel::ModuleHOW'␤at /tmp/AxHoxFt70A:1␤------> ␤»
..rakudo-jvm 882e33: OUTPUT«===SORRY!=== Error while compiling /tmp/4Nht8C6cnJ␤Method 'add_parent' not found for invocant of class 'Perl6::Metamodel::ModuleHOW'␤at /tmp/4Nht8C6cnJ:1␤------> ␤»
lizmat moritz++ for fixing pasto
moritz lizmat: would be much nicer if it said "modules do not support subclassing; maybe you want to write a class instead?"
lizmat indeed
diakopter definitely not a hot path, so worth adding a check for a better error, imho
lizmat so, how can I find out the "type" of the type object easily? 12:13
diakopter moritz: I'll try to nail down what I'm imagining, and get back to you sometime :)
moritz lizmat: at compile time you can look into $*DECL or so
lizmat the only way I figured was to take the HOW.perl and then match on (\w+)HOW ?
aha, ok
moritz lizmat: another approach is to write a role Perl6::HOW::NoInheritance[$kind] { method add_parent(|) { die $kind ~ "s do not support inheritance" } 12:15
and apply that to ModuleHOW
no idea if that's sane design or not :-)
lizmat seems to depend on an implementation detail of "add_parent" 12:16
diakopter hopes it is
moritz lizmat: well, that's how inheritance is done on the MOP level
lizmat I guess that's true
moritz lizmat: and while it is an implementation detail now, it's something we have to spec eventually
otherwise the MOP won't be very usefl 12:17
lizmat ok, so why not simply add "add_parent" to ModuleHow ?
*ModuleHOW
moritz lizmat: that's what I'm saying, basically, except that PackageHOW and EnumHOW also want the same 12:18
lizmat gotcha
moritz lizmat: so I proprosed to factor it into a role
masak +1 on Perl6::HOW::NoInheritance 12:20
diakopter Perl6::HOW::Infertile
lizmat Perl6::Metamodel::NoInheritance ?
diakopter Perl6::HOW::Scrooge
moritz lizmat: aye
the REPL without readline is no fun :( 12:21
masak moritz: isn't there a way we can include readline semantics, always? 12:22
moritz masak: there sure is, but I have no idea how much or little effort that would be 12:24
like, re-implementing readline in NQP
moritz wants a mobile phone that runs on NQP-OS
diakopter o_O 12:25
12:27 sqirrel left
lizmat hmmm.... do I need to add a "use" for the new file somewhere? in BOOTSTRAP.nqp ? 12:29
moritz lizmat: doesn't look like it 12:31
lizmat: they are all mushed together into one file in the build process
lizmat ah, hmm...
moritz lizmat: you just have to add it to the list of metamodel sources in tools/build/Makefile-{Parrot,JVM}.in before it is used
lizmat ack
oops, I shouldn't say that :-) 12:35
12:35 _sri left 12:37 _sri joined
lizmat moritz: argh: $parent.HOW.archetypes.inheritable() 12:45
12:45 dansamo joined
lizmat checks whether it has an "add_parent', and assumes that's ok hen 12:45
actually $parent.HOW.archetypes.inheritalizable() 12:46
12:46 sizz joined, kaare__ joined
moritz lizmat: then maybe the code that calls add_parent should check that :-) 12:48
12:50 kaare_ left
lizmat well, indeed, but then I wonder about the usefullness of creating a role for this 12:50
moritz agreed 12:51
oh wait
maybe you need to check the same thing on $package and not on $parent 12:52
not sure if the relation is symmetric though
(ie anything that you can inherit from can inherit itself)
12:54 jaffa4 joined
jaffa4 hi all 12:54
I get a bug Default constructor for 'Path::Util' only takes named arguments 12:55
and submethod BUILD($filename) {
That does not look named to me... What can you see?
moritz can see a confused jaffa4 12:56
jaffa4 rather stuck.
moritz jaffa4: perlgeek.de/blog-en/perl-6/object-c...ation.html
jaffa4: doc.perl6.org/language/objects
more specifically, doc.perl6.org/language/objects#Obje...nstruction 12:57
dalek nda: 08e09b0 | moritz++ | ext/JSON__Tiny:
update JSON::Tiny (whitespace parsing fix)
13:03
13:05 sqirrel joined
jaffa4 ok.. Passing an object candidate to Mu.bless is deprecated? 13:11
lizmat there were some spec changes in that area recently 13:12
moritz jaffa4: yes; sadly I haven't updated all the docs yet
jaffa4: but usually that just means to write self.bles(things) instead of self.bless(*, things) 13:13
lizmat de909c2d578b75871a14e59b260c446cd9a691fe to be precise 13:14
jaffa4 yes
moritz lizmat++ # citing your sources
masak .oO( [SHA-1 needed] ) 13:23
diakopter masak: :) 13:24
jaffa4 Is there way of matching and regex and puttign captured groups into a variable?
In one step?
lizmat $/<groupname> ? 13:26
jaffa4 $f = ( $filename =~ /[.]([^\\\/.]+?)$/ );? 13:27
That was in Perl 13:28
moritz and what happens when you do that in Perl 6? 13:30
(with a Perl 6 regex, of course)
FROGGS r: my $b = @("abc".match(/.(.)./)); say $b
camelia rakudo-parrot 0026bf, rakudo-jvm 882e33: OUTPUT«「b」␤␤»
moritz or simply use $/ as an array
or $/.list
or whatever you want to have in the end 13:31
FROGGS r: my ($a, $b, $c) = @("abc".match(/(.)(.)(.)/)); say "$c-$b-$a"
camelia rakudo-parrot 0026bf, rakudo-jvm 882e33: OUTPUT«c-b-a␤»
FROGGS r: my ($a, $b, $c) = "abc".match(/(.)(.)(.)/).list; say "$c-$b-$a"
camelia rakudo-parrot 0026bf, rakudo-jvm 882e33: OUTPUT«c-b-a␤»
moritz r: my ($extension) = 'foo.txt' ~~ /\. <( <-[.]>+ $ / 13:32
camelia ( no output )
moritz r: my ($extension) = 'foo.txt' ~~ /\. <( <-[.]>+ $ /; say ~$extension
camelia rakudo-parrot 0026bf, rakudo-jvm 882e33: OUTPUT«txt␤»
13:34 raiph joined
masak r: my $extension = .Str given 'foo.txt' ~~ /\. <( <-[.]>+ $ /; say $extension 13:39
camelia rakudo-parrot 0026bf, rakudo-jvm 882e33: OUTPUT«txt␤»
13:39 pippo joined
moritz masak: that's quite clever 13:41
masak it felt a bit original, yes. 13:42
and you can probably use that to pluck out results, too.
r: my ($a, $b, $c) = @($_) given "abc".match(/(.)(.)(.)/); say "$c-$b-$a"
camelia rakudo-parrot 0026bf, rakudo-jvm 882e33: OUTPUT«c-b-a␤» 13:43
masak r: my ($a, $b, $c) = .[^3] given "abc".match(/(.)(.)(.)/); say "$c-$b-$a"
camelia rakudo-parrot 0026bf, rakudo-jvm 882e33: OUTPUT«c-b-a␤»
FROGGS r: my ($a, $b, $c) = "abc".match(/(.)(.)(.)/).list.[^3]; say "$c-$b-$a" 13:44
camelia rakudo-parrot 0026bf, rakudo-jvm 882e33: OUTPUT«c-b-a␤»
FROGGS r: my ($a, $b, $c) = "abc".match(/(.)(.)(.)/).list.[2;0;1]; say "$c-$b-$a"
camelia rakudo-parrot 0026bf: OUTPUT«WARNINGS:␤Useless use of constant integer 2 in sink context (line 1)␤Useless use of constant integer 0 in sink context (line 1)␤use of uninitialized value of type Any in string context in sub warn at gen/parrot/CORE.setting:674␤␤use of uniniti…» 13:45
..rakudo-jvm 882e33: OUTPUT«WARNINGS:␤Useless use of constant integer 0 in sink context (line 1)␤Useless use of constant integer 2 in sink context (line 1)␤use of uninitialized value of type Any in string context␤use of uninitialized value of type Any in string context␤--b␤»
13:45 wbill left
FROGGS r: my ($a, $b, $c) = "abc".match(/(.)(.)(.)/).list.[2,0,1]; say "$c-$b-$a" 13:45
camelia rakudo-parrot 0026bf, rakudo-jvm 882e33: OUTPUT«b-a-c␤»
jaffa4 ok 13:46
13:46 nebuchadnezzar joined
jaffa4 How do you format perl6? 13:46
FROGGS format?
jaffa4 the source code 13:47
clean up, tidy, beautify, indent
FROGGS manually, like I do with all what I write :o)
masak a perl6 indenter could definitely be written, and might be very useful. 13:48
pippo Hello. Does anybody tried this on rakudo-jvm? my $file = ""; for ^20000 {$file ~= "$_;"}; say $file ~~ /(\d+) +% ';'/;
masak pippo: ...probably not? 13:49
pippo It takes too much long to execute!
FROGGS no, not exactly this line... why?
pippo: how too muh long?
pippo Really I do not know. It blows me out before it finishes. Niecza does it in few seconds. 13:50
masak jaffa4, FROGGS: like p5's metacpan.org/pod/release/SHANCOCK/...l/Tidy.pod
jaffa4 no, that spoils the code, I just tried 13:51
masak pippo: that sounds like a bug, then.
jaffa4: "spoils"?
13:51 ajr joined, ajr is now known as Guest42319
jaffa4 the result does not look nice. 13:51
13:51 Guest42319 is now known as ajr_
pippo I do not know. I arrived at this trying to nderstand why slurping a long file about 20'000 lines takes so long (lines slurp "myfile"). 13:52
masak pippo: it would be interesting to see timings of this for <p5 niecza r-p r-j> 13:53
on your machine.
pippo I'll do... 13:54
jaffa4 what is the meaning of having a sub in a class? 13:56
lizmat to call it from more than one method/sub in that class ?
jaffa4 defining a sub as sub name in a class.... 13:57
lizmat example ?
jaffa4 pastebin.com/1YBkjN4p 13:58
see sub getbasename 13:59
13:59 [Sno] left
lizmat feels like a typo to me 14:00
or a thinko
FROGGS nqp-p: nqp::bitand_s("a", "b") # does somebody understand that?
camelia nqp-parrot: OUTPUT«error:imcc:syntax error, unexpected SREG, expecting '(' ('$S5001')␤ in file '(file unknown)' line 48194631␤␤␤»
lizmat like trying to make an alternate accessor for "basename"
jaffa4 I would iike to have static method, is that possible? 14:01
in a class
pippo masak: Niecza: real0m7.866s user0m13.510s sys0m0.135s (but changed 20'000 to 10'000 in the for loop)
masak pippo: nice. 14:02
pippo masak: rakudo-jvm I am still waiting after 4 minutes
lizmat jaffa4: without using multi methods: 14:03
r: class A { method a { self ?? "instance" !! "static" } }; say A.new.a; say A.a
camelia rakudo-parrot 0026bf, rakudo-jvm 882e33: OUTPUT«instance␤static␤»
14:03 guy40 joined
masak pippo: ok, submitting rakudobug. 14:03
14:05 [Sno] joined
masak jaffa4: subs can be quite useful inside of class blocks. they're not methods; they just do utility things for other routines, like methods usually do. 14:06
lizmat jaffa4: using multi methods:
r: class A { multi method a (A:D:) { "instance" }; multi method a (A:U:) { "static" } }; say A.new.a; say A.a
camelia rakudo-parrot 0026bf, rakudo-jvm 882e33: OUTPUT«instance␤static␤»
dalek kudo/nom: aab740c | (Elizabeth Mattijsen)++ | src/Perl6/Metamodel/ (3 files):
Fix prentending_to_be typo before it proliferates
14:07
jaffa4 is smiling face intentional>
masak depends what you mean by "intentional"... 14:09
lizmat jaffa4: that's probably your IRC client interpreting : )
r: class A { multi method a (A:D: ) { "instance" }; multi method a (A:U: ) { "static" } }; say A.new.a; say A.a
camelia rakudo-parrot 0026bf, rakudo-jvm 882e33: OUTPUT«instance␤static␤»
lizmat that better ?
jaffa4 yes 14:10
masak whatever client you're using... consider switching
:) :) :) :) :) :)
jaffa4 because? 14:12
FROGGS jaffa4: if you see smilies in perl code... how will you know what is really there?
jaffa4 Is this a feature or a bug?
lizmat the makers of your IRC client probably consider it a feature 14:13
14:13 ajr_ left 14:14 guy40 left
geekosaur there's usually some way to turn it off 14:14
14:14 ajr_ joined
geekosaur www.kvirc.ru/forum/?topic=674.0 14:16
14:19 ajr_ left
jaffa4 yes 14:19
masak jaffa4: my personal preference for IRC clients tends towards those that don't destroy the text, smilies or otherwise.
14:21 ajr_ joined 14:22 colomon joined
jaffa4 Using an accessor give me different result than printing out a class variable 14:29
masak code? 14:31
jaffa4 pastebin.com/tkMYGim9 14:33
if you run it, the last line willl be strange 14:34
say "getbasename2"~Path::Util.getbasename("c:\\g\\c.mp4"); looks ok 14:35
but say Path::Util.getbasename("c:\\g\\c.mp4");
does not
masak r: class A { method x { if self { say "self" } else { say "not self" } }; A.x; A.new.x 14:36
camelia rakudo-jvm 882e33: OUTPUT«===SORRY!=== Error while compiling /tmp/Rr4mnqE4nC␤Unable to parse expression in block; couldn't find final '}' ␤at /tmp/Rr4mnqE4nC:1␤------> else { say "not self" } }; A.x; A.new.x⏏<EOL>␤ expecting any of:…»
..rakudo-parrot aab740: OUTPUT«===SORRY!=== Error while compiling /tmp/36S6UXwFYz␤Unable to parse expression in block; couldn't find final '}' ␤at /tmp/36S6UXwFYz:1␤------> else { say "not self" } }; A.x; A.new.x⏏<EOL>␤ expecting any …»
masak r: class A { method x { if self { say "self" } else { say "not self" } } }; A.x; A.new.x
camelia rakudo-parrot aab740, rakudo-jvm 882e33: OUTPUT«not self␤self␤» 14:37
masak r: my $filename = "c:\\g\\c.mp4"; ($filename ~~ /<[\\\/]>?(<-[\\\/]>+)$/ )[0]
camelia ( no output )
masak r: my $filename = "c:\\g\\c.mp4"; say ($filename ~~ /<[\\\/]>?(<-[\\\/]>+)$/ )[0]
camelia rakudo-parrot aab740, rakudo-jvm 882e33: OUTPUT«「c.mp4」␤␤»
masak jaffa4: ah. I just ran it locally. 14:39
jaffa4: it returns the Match object, so what you see is "「c.mp4」". correct?
jaffa4: if you want just the string "c.mp4", you have to stringify the match object at some point. 14:40
for example `return ~($filename ~~ /<[\\\/]>?(<-[\\\/]>+)$/ )[0]`
jaffa4 would not [0] return the first capture group?
masak yes.
...which is a match object, not a string.
it's match objects all the way down.
FROGGS hehe
jaffa4 So I need to use ~ 14:41
masak or .Str
jaffa4 ok 14:42
14:42 iSlug left 14:43 Mouq joined
Mouq r: my $file = ""; for ^20000 {$file ~= "$_;"}; $file ~~ /(\d+) +% ';'/; say now - BEGIN now 14:44
camelia rakudo-parrot aab740: OUTPUT«4.33376393␤»
..rakudo-jvm 882e33: OUTPUT«5.668␤»
Mouq r: my $file = ""; for ^20000 {$file ~= "$_;"}; $file ~~ /(\d+) +% ';'/; say $/[0]; say now - BEGIN now
camelia rakudo-parrot aab740, rakudo-jvm 882e33: OUTPUT«(timeout)» 14:45
Mouq ^^^ We're doing something wrong accessing $/, me thinks
dalek p: 94eaca0 | (Tobias Leich)++ | / (2 files):
mapped bitand_s, bitor_s and bitxor_s
jaffa4 How to get OS type from a variable? 14:47
FROGGS r: say $*OS
camelia rakudo-parrot aab740: OUTPUT«linux␤»
..rakudo-jvm 882e33: OUTPUT«Linux␤»
lizmat hehe
Mouq nqp: my $file := ""; my $i := 0; while $i < 20000 {$file ~= "$_;"; $i := $i + 1}; $file ~~ /(\d+) +% ';'/;
camelia nqp-parrot: OUTPUT«Unable to parse expression in blockoid; couldn't find final '}' at line 2, near "$file ~= \""␤current instr.: 'panic' pc 16306 (gen/parrot/stage2/NQPHLL.pir:6018) (gen/parrot/stage2/NQPHLL.nqp:426)␤»
..nqp-jvm: OUTPUT«Unable to parse expression in blockoid; couldn't find final '}' at line 2, near "$file ~= \""␤ in panic (gen/jvm/stage2/NQPHLL.nqp:377)␤ in FAILGOAL (gen/jvm/stage2/NQPHLL.nqp:384)␤ in blockoid (gen/jvm/stage2/NQP.nqp:983)␤ in pblock (gen/jvm/stage2/NQP.…»
..nqp-moarvm: OUTPUT«Unable to parse expression in blockoid; couldn't find final '}' at line 2, near "$file ~= \""␤panic␤»
Mouq nqp: my $file := ""; my $i := 0; while $i < 20000 {$file := "$file$_;"; $i := $i + 1}; $file ~~ /(\d+) +% ';'/;
camelia nqp-jvm: OUTPUT«java.lang.NullPointerException␤ in (/tmp/1NI8y7kZ_e:1)␤ in (gen/jvm/stage2/NQPHLL.nqp:1098)␤ in eval (gen/jvm/stage2/NQPHLL.nqp:1084)␤ in evalfiles (gen/jvm/stage2/NQPHLL.nqp:1290)␤ in command_eval (gen/jvm/stage2/NQPHLL.nqp:1194)␤ in command_line…» 14:48
..nqp-moarvm: OUTPUT«No lexical found with name '$_'␤frame_name_0␤»
..nqp-parrot: OUTPUT«Null PMC access in get_string()␤current instr.: '' pc 96 ((file unknown):62) (/tmp/FwXFcPyLul:1)␤»
Mouq nqp: my $file := ""; my $i := 0; while $i < 20000 {$file := "$file$i;"; $i := $i + 1}; $file ~~ /(\d+) +% ';'/;
camelia ( no output )
..nqp-moarvm: OUTPUT«(timeout)»
Mouq nqp: my $file := ""; my $i := 0; while $i < 20000 {$file := "$file$i;"; $i := $i + 1}; say($file ~~ /(\d+) +% \;/) 14:50
pippo Mouq: how is it possible that Camelia does it in 5 seconds? In my machine camelia it took more that 9minutes and I had java.lang.OutOfMemoryError: Java heap space
Mouq: how is it possible that Camelia does it in 5 seconds? In my machine it took more that 9minutes and I had java.lang.OutOfMemoryError: Java heap space
camelia nqp-moarvm: OUTPUT«(timeout)»
..nqp-jvm, nqp-parrot: 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;42;43;44;45;46;47;48;49;50;51;52;53;54;55;56;57;58;59;60;61;62;63;64;65;66;67;68;69;70;71;72;73;74;75;76;77;78;79;80;81;82;83;84;85;86;87;8…»
Mouq pippo: I'm not `say`ing $/ 14:51
That's what I golfed the problem to. And it seems not to be nqp's fault either
pippo Understand
Mouq goes to get breakfast 14:52
pippo Mouq: I arrived at this because I had a problems loading a file of 20'000 or so line with "lines slurp "myfile"" 14:53
I thought it was a problem of the "lines" method. I then tried .split("\n") but did not improve either. 14:54
Mouq: I finally tried with /(\d+) +% \;/ but neither this helped. 14:55
moritz pippo: how about reading line by line in the first place? 14:56
open('myfile').lines 14:57
pippo I'll check...
Mouq (well, just doing that by itself should be pretty fast; .lines is a lazy list ^_^)
r: say [~] "{(state$)++};" xx 20000 14:59
camelia rakudo-jvm 882e33: OUTPUT«(timeout)»
..rakudo-parrot aab740: 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;42;43;44;45;46;47;48;49;50;51;52;53;54;55;56;57;58;59;60;61;62;63;64;65;66;67;68;69;70;71;72;73;74;75;76;77;78;79;80;81;82;83;84;85;86;87;…»
Mouq r: say "{(state$)++};" x 20000 # duh 15:00
camelia rakudo-parrot aab740, rakudo-jvm 882e33: OUTPUT«0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0…»
15:00 zakharyas joined 15:07 denis_boyun joined 15:12 raiph left, denis_boyun left 15:15 rurban joined 15:18 raiph joined
pippo moritz: I have to assign the result of open('myfile').lines to an array to make later comparisons with another one. So I cannot take advantage of the "lines" laziness. 15:24
colomon pippo: why can't you lazily bind it to the array? 15:26
lizmat my @a := $handle.lines ? 15:27
Mouq r: my @ℕ = 0..Inf; say @ℕ[5]
r: my @ℕ := 0..Inf; say @ℕ[5]
moritz pippo: but you can take advantage of $fh.lines being more efficient (hopefully) than lines($string)
camelia rakudo-jvm 882e33: OUTPUT«(timeout)»
..rakudo-parrot aab740: OUTPUT«5␤»
rakudo-jvm 882e33: OUTPUT«(timeout)»
..rakudo-parrot aab740: OUTPUT«5␤»
moritz .u ℕ 15:28
so, rakudo-jvm doesn't like laziness?
lizmat looks like :-( 15:29
moritz nah, it's just too slow for camelia 15:33
works fine for me on the command line 15:34
Mouq r: $*EXECUTIONTIME-- for $*TUITS 15:35
camelia rakudo-jvm 882e33: OUTPUT«(timeout)»
..rakudo-parrot aab740: OUTPUT«Dynamic variable $*EXECUTIONTIME not found␤ in method <anon> at gen/parrot/CORE.setting:11921␤ in any at gen/parrot/Metamodel.nqp:2682␤ in any find_method_fallback at gen/parrot/Metamodel.nqp:2670␤ in any find_method at gen/parrot/Metamodel.…»
Mouq r: $*COMPILATIONTIME-- for $*TUITS # Rather 15:36
camelia rakudo-jvm 882e33: OUTPUT«(timeout)»
..rakudo-parrot aab740: OUTPUT«Dynamic variable $*COMPILATIONTIME not found␤ in method <anon> at gen/parrot/CORE.setting:11921␤ in any at gen/parrot/Metamodel.nqp:2682␤ in any find_method_fallback at gen/parrot/Metamodel.nqp:2670␤ in any find_method at gen/parrot/Metamode…»
pippo moritz: I have to do some other works in my program i.e. many .slit and and .join on strings. Is is too much slow and memory hungry. 15:40
moritz pippo: I can imagine that :(
pippo I think Mouq found where the bug lies i.e. accessing $/ 15:41
doing this on rakudo jvm will take only few seconds: my $file = ""; for ^20000 {$file ~= "$_;"}; $file ~~ /(\d+) +% ';'/; 15:42
which is good.
But this will take immense more time (at least on my machine): my $file = ""; for ^20000 {$file ~= "$_;"}; $file ~~ /(\d+) +% ';'/; say $/; 15:43
15:43 ajr_ left
moritz yes, that has to compile 20k regexes 15:43
which is quite costly 15:44
if you just want to search for a string literal, use index instead
15:45 ajr joined 15:46 ajr is now known as Guest40117, Guest40117 is now known as ajr_ 15:48 iSlug joined, iSlug left
pippo moritz: you say quite costly. But Niecza does it at speed of light compared to rakudo jvm (if it did not complain about memory exhaust which mostly the case after minutes of mumbling and computer fan throttling) 15:48
moritz pippo: I'm not saying it should be slow, just that it is
pippo ok :-( 15:49
:-( <= for jvm to be slow
:-( <= for rakudo-jvm to be slow 15:50
Mouq r: my $file = [~] "{(state$)++};" xx 2000; $file ~~ /[\d+] +% \;/; say $/ 15:53
lizmat gives up on getting smarter "is foo" detection
camelia rakudo-parrot aab740, rakudo-jvm 882e33: 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;42;43;44;45;46;47;48;49;50;51;52;53;54;55;56;57;58;59;60;61;62;63;64;65;66;67;68;69;70;71;72;73;74;75;76;77;78;79;80…»
Mouq r: my $file = [~] "{(state$)++};" xx 20000; $file ~~ /[\d+] +% \;/; say $/
camelia rakudo-jvm 882e33: OUTPUT«(timeout)» 15:54
..rakudo-parrot aab740: 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;42;43;44;45;46;47;48;49;50;51;52;53;54;55;56;57;58;59;60;61;62;63;64;65;66;67;68;69;70;71;72;73;74;75;76;77;78;79;80;81;82;83;84;85;86;…»
lizmat just too many strange errors in bootstrap / settings building
pippo moritz: you said "if you just want to search for a string literal, use index instead"
moritz: could you provide an example? 15:55
moritz r: if defined 'foobar'.index('bar') -> $offset { say "'foobar' contains 'foo' at offset $offset" } 15:56
camelia rakudo-parrot aab740, rakudo-jvm 882e33: OUTPUT«'foobar' contains 'foo' at offset True␤»
moritz erm
r: my $offset = 'foobar'.index('bar'); if defined $offset { say "'foobar' contains 'foo' at offset $offset" } 15:57
camelia rakudo-parrot aab740, rakudo-jvm 882e33: OUTPUT«'foobar' contains 'foo' at offset 3␤»
jaffa4 inside a mehtod I should be able to call another method in the same class? 15:58
I get getbasename($filename)
no, I get no ICU lib loaded
pippo moritz: Thank you very much. 15:59
moritz pippo: you're welcome
jaffa4: of course getbasename($filename) isn't a method call
jaffa4 Is self needed? 16:00
16:01 PacoAir joined 16:05 fridim_ joined 16:06 telex joined
moritz either self.getbasename($filename), or $.getbasename($filename) 16:06
16:06 denis_boyun joined
moritz (if it returns a scalar) 16:07
16:07 dansamo left 16:19 xinming left
jaffa4 any idea why this ($filenamelocal ~~ m:g/<[\\\/]><before .>/); returns one mathce for $filenamelocal = "c:\\g\\c.mp4" 16:20
16:20 xinming joined
jaffa4 r: my $filenamelocal = "c:\\g\\c.mp4"' ;($filenamelocal ~~ m:g/<[\\\/]><before .>/); say +lol(); 16:21
camelia rakudo-jvm 882e33: OUTPUT«===SORRY!=== Error while compiling /tmp/XW6RgEEVSk␤Two terms in a row␤at /tmp/XW6RgEEVSk:1␤------> my $filenamelocal = "c:\\g\\c.mp4"⏏' ;($filenamelocal ~~ m:g/<[\\\/]><befo␤ expecting any of:␤ pos…»
..rakudo-parrot aab740: OUTPUT«===SORRY!=== Error while compiling /tmp/27ZbizQNk8␤Two terms in a row␤at /tmp/27ZbizQNk8:1␤------> my $filenamelocal = "c:\\g\\c.mp4"⏏' ;($filenamelocal ~~ m:g/<[\\\/]><befo␤ expecting any of:␤ …»
16:21 sqirrel left 16:22 woolfy left
lizmat decommute from T-Dose & 16:22
16:22 lizmat left 16:23 rurban left
pippo Mouq: the following takes "only" 11s on my machine: my $file = ""; for ^20000 {$file ~= "$_;"}; $file ~~ /[\d+] +% \;/; say $/; 16:38
jaffa4 lizmat:? 16:39
16:39 sizz left
pippo Mouq: if I change the noncapturing brackets to capturing parens then it blows out 16:39
16:41 zakharyas left
pippo r: my $file = ""; for ^20000 {$file ~= "$_;"}; $file ~~ /[\d+] +% \;/; say $/; 16:42
camelia rakudo-parrot aab740, rakudo-jvm 882e33: 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;42;43;44;45;46;47;48;49;50;51;52;53;54;55;56;57;58;59;60;61;62;63;64;65;66;67;68;69;70;71;72;73;74;75;76;77;78;79;80…»
pippo r: my $file = ""; for ^20000 {$file ~= "$_;"}; $file ~~ /(\d+) +% \;/; say $/; 16:43
camelia rakudo-parrot aab740, rakudo-jvm 882e33: OUTPUT«(timeout)»
timotimo i wonder if it's the stringification that takes so long
pippo timotimo: I do not think so. Otherwise the first (with non capturing brackets) shoud also have failed 16:45
timotimo no 16:46
if you have a capturing bracket, it will print 20000 times " 0 => some-number\n"
in addition to the first line
r: my $file = ""; for ^5 {$file ~= "$_;"}; $file ~~ /(\d+) +% \;/; say $/;
camelia rakudo-jvm 882e33: OUTPUT«(timeout)»
..rakudo-parrot aab740: OUTPUT«「0;1;2;3;4」␤ 0 => 「0」␤ 0 => 「1」␤ 0 => 「2」␤ 0 => 「3」␤ 0 => 「4」␤␤»
timotimo that timeouts on jvm?! 16:47
weird.
but you see what i mean?
pippo r: say "hello" 16:48
camelia rakudo-parrot aab740, rakudo-jvm 882e33: OUTPUT«hello␤»
pippo r: my $file = ""; for ^5 {$file ~= "$_;"}; $file ~~ /(\d+) +% \;/; say $/;
camelia rakudo-parrot aab740, rakudo-jvm 882e33: OUTPUT«「0;1;2;3;4」␤ 0 => 「0」␤ 0 => 「1」␤ 0 => 「2」␤ 0 => 「3」␤ 0 => 「4」␤␤»
pippo timotimo: I think youare right. 16:55
r: my $file = ""; for ^20000 {$file ~= "$_;"}; $file ~~ /(\d+) +% \;/; say $/[0][20000-1];
camelia rakudo-parrot aab740, rakudo-jvm 882e33: OUTPUT«「19999」␤␤» 16:56
timotimo you can do [*-1]
pippo timotimo: OK :-)
16:56 pmurias joined
pippo r: my $file = ""; for ^20000 {$file ~= "$_;"}; $file ~~ /(\d+) +% \;/; say $/[0][*-1]; 16:56
camelia rakudo-parrot aab740, rakudo-jvm 882e33: OUTPUT«「19999」␤␤»
jaffa4 r : my $str = "aaaaa"; $str ~~ m:g/a/; say $/.perl; 16:57
r: my $str = "aaaaa"; $str ~~ m:g/a/; say $/.perl;
camelia rakudo-jvm 882e33: OUTPUT«Match.new(to => 5, hash => EnumMap.new(), ast => Any, list => ().list, orig => "aaaaa", from => 4)␤»
..rakudo-parrot aab740: OUTPUT«Match.new(orig => "aaaaa", from => 4, to => 5, ast => Any, list => ().list, hash => EnumMap.new())␤»
jaffa4 Is this correct?
timotimo indeed, the gist method uses ~= instead of pushing into a list and joining
that's going to be painfully slow for big matches
pippo timotimo: there is aslo a problem of heap space. I do not why but trying to print the $/ after the above 20'000 cycles for loop gives me out of heap space... 17:01
dalek p: 8b48712 | (Tobias Leich)++ | / (2 files):
mapped inf, neginf, nan and isnanorinf
17:02
timotimo is this for rakudo-jvm?
because afaict the jvm is started with a limit on the heap space it can allocate 17:03
as a commandline option
pippo timotimo: yes jvm. I have put -Xms500m but exhausted also that 17:04
timotimo oh yeah, 500m is nothing to rakudo ;)
pippo I can try 1g and see if it bails out... 17:05
timotimo rakudo guzzles ram like a ... very thirsty person would a tasty drink
17:06 sqirrel joined
dalek Heuristic branch merge: pushed 29 commits to rakudo-star-daily by coke 17:09
17:10 Rotwang joined 17:11 rindolf joined 17:15 Vlavv` joined 17:16 ajr_ left 17:18 xenoterracide joined 17:30 raiph left
dalek kudo/nom: bec62b4 | moritz++ | tools/lib/NQP/Configure.pm:
import NQP::Configure from NQP
17:33
17:36 Rotwang left
jaffa4 Are there alises in Perl 6? 17:36
moritz which aliases? 17:37
timotimo like references? 17:41
jaffa4 variables referred under different names 17:42
moritz r: constant &sinus = &sin; say sinus(pi) 17:43
camelia rakudo-parrot aab740: OUTPUT«1.22464679914735e-16␤»
..rakudo-jvm 882e33: OUTPUT«1.2246467991473532E-16␤»
moritz jaffa4: binding does that (unill you rebind one of them)
17:43 ssutch joined
timotimo r: my $x = 10; my $y := $x; $y = "hello"; say $x; 17:43
camelia rakudo-parrot aab740, rakudo-jvm 882e33: OUTPUT«hello␤»
jaffa4 I would like to have duplicate property names
moritz why? 17:44
jaffa4 usibilitiy
some people can remember one name better than other
timotimo well, properties are just methods
moritz just write another accessor for the same attribute
jaffa4 I have has $.filedir;
timotimo they work like method name-of-thing is rw { $!private-name } i believe
moritz if they are rw, yes 17:45
jaffa4 it would like to have $.dir
$.directory
17:45 denis_boyun left
moritz has $.dir; method directory { $!dir }; 17:45
and maybe use the aliasing trick in submethod BUILD that the docs that I gave you earlier uses
17:45 felipe joined
moritz so that initialization works for both too 17:46
jaffa4 I am thinking about upload Path::Util
17:47 denis_boyun joined
jaffa4 moritz: I see 17:47
17:47 preflex left
dalek kudo/moar-support: 4799ab9 | jonathan++ | src/vm/moar/Perl6/Ops.nqp:
Stub in p6bindsig.

Due to the many calls the binder makes back into the interpreter, we will just write it in NQP code on Moar. This will be a little slower at first but (a) we expect Moar to get faster, and (b) we expect to start "lowering" simple signatures down to QAST::Var usage, which is also going to be useful for making better use of invokedynamic on the JVM backend.
17:47
jnthn dinner & 17:48
17:48 preflex joined, ChanServ sets mode: +v preflex 17:50 Rotwang joined, raiph joined
timotimo huh, var usage? 17:53
lue hello world o/ 17:56
17:58 sqirrel left, denis_boyun__ joined
moritz \o lue 17:59
18:00 denis_boyun left
timotimo not sure how that var usage thing is going to work, but it sounds good already 18:00
the sub will just give the inner lexicals (parameters) to the caller directly? or something?
18:01 risou_awy joined
diakopter jnthn: hooking compiled code into the compiler directly? WATFACE. QAST::WVal.new( :value(nqp::getcodeobj(&bind_sig)) ) 18:15
18:15 SamuraiJack_ joined
diakopter jnthn: that's, like, an impressive trick... and not un-revolutionary, in fact. 18:16
18:16 denisboyun joined 18:18 denis_boyun__ left, risou_awy is now known as risou
masak diakopter: sounds interesting -- what's happening, step by step? 18:20
18:21 labster joined 18:23 logie joined 18:27 SamuraiJack_ left, logie left
diakopter masak: in the trick I find impressive? 18:30
18:32 kurahaupo joined
jaffa4 How do I add a module to panda? 18:33
diakopter he's typing code into the compiler source that gets invoked at runtime, injected with that wval hook, which is a code reference that gets resolved at deserialization time... so basically, it's like "hmm, I want the compiler to convert this 'opcode' or construction into something that runs this code I'm typing right here in the compiler source.."
tadzik jaffa4: send a pull request for perl6/ecosystym on github 18:34
also, wiki.perl6.org/Create%20and%20Distr...%20Modules
diakopter masak: if you squint a certain way (by swapping your eyeball sockets or something), you can imagine the entire runtime library being written in the source of the compiler in that manner... 18:35
18:35 risou is now known as risou_awy
masak I see. 18:35
interesting.
dalek osystem: c3ae1d7 | jaffa4++ | META.list:
Update META.list

added Path::Util
18:39
18:39 denisboyun left 18:43 denisboyun joined
benabik Why is there an install-moar-runner and a gen-moar-runner? 18:44
Why not just gen and then cp?
colomon jaffa4++ 18:51
timotimo seems like someone didn't play the "shake hands with meta" workplace safety video to jnthn 18:53
18:56 pippo left 18:58 pippo joined
pippo timotimo: java.lang.OutOfMemoryError: Java heap space after real46m28.040s user110m46.425s sys0m28.380s 18:59
timotimo: -Xmx2g 19:00
timotimo: "java.lang.OutOfMemoryError: Java heap space" after real46m28.040s user110m46.425s sys0m28.380s 19:01
19:01 pippo left
timotimo holy fuck. 19:01
jnthn diakopter: I discovered the trick, or tricks of that nature, when I was doing the Rakudo Debugger, fwiw :) 19:05
19:06 denisboyun left
jaffa4 timotimo: what are you surprised at? 19:09
19:09 sqirrel joined 19:10 denisboyun joined 19:15 kurahaupo left
lue For step 13 of the release guide, 1) must I subscribe to the appropriate mailing lists before posting an announcement (I assume yes), 2) what's with the parrot mailing list? (just curious) 19:17
moritz benabik: iirc the 'gen-moar-runner' sets up paths from the build directory, and the 'install-' with the $(PREFIX) 19:18
benabik moritz: Couldn't that be done by passing different options to one script? 19:19
I guess that's secondary to getting DESTDIR to work properly.
moritz benabik: presumably, yes 19:20
benabik: much of the build system falls into the category "it works", not "it's optimal" :-)
benabik Hm. I wonder if running java in a parallel build actually helps. 19:21
timotimo jaffa4: that thing ran for 46 minutes
moritz lue: iirc you don't need to be subscribed to the mailing lists, but the mails will be manually moderated 19:23
lue: and the parrot mailing lists are parrot-{dev,users}@lists.parrot.org
lue it'd be worth signing up to the P6 lists at least.
Oh, so both -dev and -users, or just -users (which the RG says)?
moritz trust the release guide, not me :-) 19:24
lue Alright then, that's the last thing I was wondering about, so...
==> STAR RELEASE MODE ACTIVATED (non-release-related messages from luebot will be limited)
timotimo oh cool :)
lue ✔ ① Clone/update star repo
moritz wow, somebody actually reads the WHOLE release guide first 19:25
tadzik :D
jnthn .u tick in a box
Aww
moritz .u check mark
benabik ENOYOLEAUX
moritz ENOUNICODEBOT
WHERE IS THAT LAZY BOT? 19:26
geekosaur it only lived once
moritz 2705 ✅ WHITE HEAVY CHECK MARK
2713 ✓ CHECK MARK
2714 ✔ HEAVY CHECK MARK
App::Uni++
lue this is where r: say "☃".unicharname would come in handy ;)
moritz au++ # App::Uni
19:27 rindolf left
lue ✔ ② Update Makefile 19:27
19:29 Rotwang left
benabik \o/ 19:29
dalek p: a8d0acb | benabik++ | tools/build/Makefile-Moar.in:
[Configure] Fix building nqp-m with DESTDIR
19:30
moritz benabik++ 19:31
benabik That took a while, but that's also because I was updating my build scripts to handle multiple nqps. 19:32
timotimo is going to tackle questhub.io/realm/perl/quest/526d50...583500002d 19:33
lue File::Find cloning randomly asked for my SSH. Is this normal? 19:34
timotimo if it uses a [email@hidden.address] url, yeah
[Coke] looks like you can open a ticket in rt vi the web now. 19:36
lue \o/ 19:37
FROGGS cool!
[Coke] yup.
(verified)
FROGGS [Coke]: btw, is it hard to rerun the tests an update this? gist.github.com/coke/6799633
[Coke] FROGGS: not really. 19:38
benabik How much heap do people generally need to give Java in order to build NQP? 1g seems to work, but I can't tell if its slow because its slow or if its slow because too much GC.
tadzik I just use defaults
benabik Defaults gives me OOM. :-P 19:39
lue ✔ ③ Utilize updated Makefile
I'm going to take a wild guess here and say that there are no new modules to be added to star this time 'round, correct?
benabik Huh. Although -XshowSettings:vm says the max heap is 1.78G 19:40
19:40 dmol left 19:41 dmol joined
[Coke] FROGGS: done: slight change, I put all the moar related fails in a single gist subfile 19:42
lue: that is the safe answer, typically. should be fine. 19:43
FROGGS ahh, thank you!
[Coke]++
lue ✔ ④ Add new modules to repo. (0 modules were added)
[Coke] if you want your own live copy, It's "prove -v -e ./nqp t/docs/opcodes.t | ack "^not ok" | ack moar 19:44
19:44 Rotwang joined
FROGGS cool, I wondered if it was in the repo somewhere :o) 19:45
benabik not a valid number again? I thought that went away. :-(
diakopter masak: you could use that compiler trick to... simplify the implementation of macros tremendously. and probably make them a lot righter 19:46
[Coke] r: my $foo="+";&infix:($foo)(3,4).say 19:47
camelia rakudo-jvm 882e33: OUTPUT«===SORRY!=== Error while compiling /tmp/MjZaok_nJY␤You can't adverb that␤at /tmp/MjZaok_nJY:1␤------> my $foo="+";&infix:($foo)⏏(3,4).say␤»
..rakudo-parrot bec62b: OUTPUT«===SORRY!=== Error while compiling /tmp/s_Jn4qX1Co␤You can't adverb that␤at /tmp/s_Jn4qX1Co:1␤------> my $foo="+";&infix:($foo)⏏(3,4).say␤»
[Coke] Anyone have opensolaris? we have several old RTs for you to verify. 19:48
diakopter masak: by setting up the injected macro as something that saves the ASTs from compile time directly like that, then simply defers something that compiles the resulting AST (with the args directly passed as ast args to the call), and then once compiled once at runtime, updates itself with the newly compiled code. 19:50
lue ✔ ⑤ Update modules
diakopter masak: OR
evaluate it right then, actually. duh. 19:51
lue moritz: is there anything in the current ChangeLog that I should not include in the announcement? I notice you omitted a couple lines and even added one last month. 19:56
timotimo Unable to parse expression in object; couldn't find final '}' - why did parse errors lose their file/line output? 20:01
oh, this is not a perl6 source code parse failure
never mind
20:03 sqirrel left
masak diakopter: now I feel like I need to understand this technique deeply. 20:04
20:05 colomon left
[Coke] I'm also getting OOME building rakudo now. (with backends=parrot,jvm) 20:06
lue r: say "hello".ucfirst
camelia rakudo-jvm 882e33: OUTPUT«No such method 'package' for invocant of type 'Scalar'␤ in sub DEPRECATED at gen/jvm/CORE.setting:16642␤ in block at /tmp/Zranh1FpeM:1␤ in any eval at gen/jvm/stage2/NQPHLL.nqp:1084␤ in any evalfiles at gen/jvm/stage2/NQPHLL.nqp:1290␤ in any…»
..rakudo-parrot bec62b: OUTPUT«Hello␤Saw 1 call to deprecated code during execution.␤================================================================================␤Method ucfirst (from Cool) called at:␤ /tmp/zy2G8Ldnb9, line 1␤Please use 'tc' instead.␤------------------…»
[Coke] oh, not even on make, on config.
timotimo is staring at a json file that doesn't work and can't tell what's wrong
20:07 denisboyun left
tadzik jsonlint.com? 20:07
masak I have a regression to report.
lue questions based on 2013.09's "deprecated list":
1. Is that unary hyper ops change in effect, slated for 2013.11, or indeterminately in the future
20:07 wbill joined
masak std: my @a = 0..4; @a.=[1, 2]; say @a 20:07
camelia std 8adbc60: OUTPUT«ok 00:01 127m␤»
masak rn: my @a = 0..4; @a.=[1, 2]; say @a 20:08
camelia niecza v24-98-g473bd20: OUTPUT«1 2␤»
..rakudo-jvm 882e33: OUTPUT«===SORRY!=== Error while compiling /tmp/UuTtIcx5t8␤Cannot use .= on a non-identifier method call␤at /tmp/UuTtIcx5t8:1␤------> my @a = 0..4; @a.=[1, 2]⏏; say @a␤»
..rakudo-parrot bec62b: OUTPUT«===SORRY!=== Error while compiling /tmp/Ayfc4RauXB␤Cannot use .= on a non-identifier method call␤at /tmp/Ayfc4RauXB:1␤------> my @a = 0..4; @a.=[1, 2]⏏; say @a␤»
timotimo i made it \o/
masak submits rakudobug
lue 2. Is the :sigspace !~~ <.ws> rule in effect, slated for 2013.11, or indeterminately in the future?
timotimo lue: that change with unary hyper ops is not yet there
i've a bit of code waiting to be finished for that
lue would "next release" be a fair statement on 1. then?
20:09 zakharyas joined
masak lue: only the one who is about to implement it could answer that... 20:09
moritz lue: the ":sigspace not for leading whitespace" will be in 2013.11
lue timotimo indicated he's about to implement it :)
(1. that is) 20:10
timotimo haha
about to
you're so sweet
blergh, still running into that segfault with "but"
moritz lue: re changelog lines, I usually copy those from the rakudo release announcement
masak I'm pretty sure @a.=[1, 2]; used to work, because I have recent code that uses it, and just broke when I upgraded Rakudo. 20:11
lue initially misread the :sigspace item as ":sigspace never means <.ws> anymore, but something different". He didn't quite parse "Leading whitespace" in the item :)
moritz: I had a feeling, I was just wondering about the differences from the ChangeLog. (I didn't see any irrelevant lines in this month's fwiw)
timotimo r: for ^50 { 10 but True }; 20:12
camelia ( no output )
timotimo r: for ^50 { 10 but True; 1 };
camelia ( no output )
..rakudo-parrot bec62b: OUTPUT«(signal ABRT)»
timotimo can this please please please just be fixed ;_;
moritz r: class A { has $!x is rw } 20:13
camelia rakudo-jvm 882e33: OUTPUT«useless use of 'is rw' on $!x␤»
..rakudo-parrot bec62b: OUTPUT«useless use of 'is rw' on $!x in sub warn at gen/parrot/CORE.setting:674␤␤»
dalek kudo/nom: a33b165 | moritz++ | docs/ChangeLog:
[ChangeLog] add some items for 2013.11
20:16
p: 5aee41a | dwarring++ | examples/rubyish/ (2 files):
rubyish - added 1.9 '->' lambda syntax
20:19
20:19 risou_awy is now known as risou
lue ✔ ⑥ Create 2013.10 announcement. (Review at: gist.github.com/lue/5339bde633d86129998c) 20:19
moritz lue: why don't you commit and push it? 20:20
20:20 FOAD left
lue ...because I read the whole guide and I'm being a bit too literal-minded. :) (commited, but no push 'til step 8) 20:20
moritz push, push, push! 20:21
+1 to the draft
(but I only skimmed it)
dalek ar: 528fe30 | lue++ | modules/ (7 files):
Update to all modules [RG Step 5]
ar: 76b69c9 | lue++ | docs/announce/2013.10.md:
Create 2013.10 announcment [RG Step 6]
ar: 01db706 | lue++ | .gitignore:
Tell .gitignore to ignore emacs temporary files.
timotimo the next release for nodality? oh my 20:22
20:22 FOAD joined
dalek ar: 67ffe19 | lue++ | docs/announce/2013.10.md:
[2013.10.md] Fix left-in mistake.
20:23
lue timotimo: ^^^
20:24 woolfy joined, fhelmberger joined
timotimo postcircumfix:<{ }> not defined for type Failure ... 20:26
20:26 dmol left, pdurbin joined 20:27 dmol joined
timotimo r: my @l = {(:foo<bar>).hash, (:foo<baz>).hash}; say @l.first(*.<foo><bar> eq "quux"); 20:27
camelia rakudo-parrot bec62b: OUTPUT«postcircumfix:<{ }> not defined for type Failure␤ in method Str at gen/parrot/CORE.setting:11915␤ in method Str at gen/parrot/CORE.setting:956␤ in method Stringy at gen/parrot/CORE.setting:966␤ in method Stringy at gen/parrot/CORE.setting:965…»
..rakudo-jvm 882e33: OUTPUT«postcircumfix:<{ }> not defined for type Failure␤ in sub infix:<eq> at gen/jvm/CORE.setting:1362␤ in block at /tmp/lIHDiphY1L:1␤ in any eval at gen/jvm/stage2/NQPHLL.nqp:1084␤ in any evalfiles at gen/jvm/stage2/NQPHLL.nqp:1290␤ in any comman…»
timotimo star: my @l = {(:foo<bar>).hash, (:foo<baz>).hash}; say @l.first(*.<foo><bar> eq "quux");
camelia star 2013-09: OUTPUT«postcircumfix:<{ }> not defined for type Block␤ in method postcircumfix:<{ }> at src/gen/CORE.setting:12032␤ in block at /tmp/CERKmK5KVW:1␤␤»
timotimo ...block? 20:28
dalek p: c5aa3c2 | (Tobias Leich)++ | / (2 files):
mapped getlexrel
20:29
timotimo well, this is problematic. 20:30
r: ().hash.<foo> 20:31
camelia ( no output )
timotimo r: ().hash.<foo><bar>
camelia ( no output )
timotimo r: ().hash.<foo>.<bar>
camelia ( no output )
timotimo r: ().hash.map: *.<foo>.<bar>
camelia rakudo-jvm 882e33: OUTPUT«Unhandled exception: postcircumfix:<{ }> not defined for type Failure␤ in throw (gen/jvm/CORE.setting)␤ in <anon> (gen/jvm/CORE.setting)␤ in (gen/jvm/Metamodel.nqp:2599)␤ in find_method_fallback (gen/jvm/Metamodel.nqp:2598)␤ in find_method (…»
..rakudo-parrot bec62b: OUTPUT«postcircumfix:<{ }> not defined for type Failure␤current instr.: 'throw' pc 402850 (src/gen/p-CORE.setting.pir:169223) (gen/parrot/CORE.setting:10534)␤called from Sub '<anon>' pc 438826 (src/gen/p-CORE.setting.pir:182410) (gen/parrot/CORE.setting:119…»
timotimo r: *.<foo>.<bar>
camelia rakudo-jvm 882e33: OUTPUT«Unhandled exception: postcircumfix:<{ }> not defined for type Failure␤ in throw (gen/jvm/CORE.setting)␤ in sink (gen/jvm/CORE.setting)␤ in MAIN (gen/jvm/main.nqp:47)␤ in (gen/jvm/main.nqp:41)␤ in (gen/jvm/main.nqp)␤␤»
..rakudo-parrot bec62b: OUTPUT«postcircumfix:<{ }> not defined for type Failure␤current instr.: 'throw' pc 402850 (src/gen/p-CORE.setting.pir:169223) (gen/parrot/CORE.setting:10534)␤called from Sub 'sink' pc 438903 (src/gen/p-CORE.setting.pir:182447) (gen/parrot/CORE.setting:11924…»
timotimo so it just doesn't autocurry any more 20:32
r: try *.<foo>.<bar>
camelia rakudo-jvm 882e33: OUTPUT«Unhandled exception: postcircumfix:<{ }> not defined for type Failure␤ in throw (gen/jvm/CORE.setting)␤ in sink (gen/jvm/CORE.setting)␤ in MAIN (gen/jvm/main.nqp:47)␤ in (gen/jvm/main.nqp:41)␤ in (gen/jvm/main.nqp)␤␤»
..rakudo-parrot bec62b: OUTPUT«postcircumfix:<{ }> not defined for type Failure␤current instr.: 'throw' pc 402850 (src/gen/p-CORE.setting.pir:169223) (gen/parrot/CORE.setting:10534)␤called from Sub 'sink' pc 438903 (src/gen/p-CORE.setting.pir:182447) (gen/parrot/CORE.setting:11924…»
moritz probably relted to .{ } now being a sub instead of a method
*related
timotimo yes, probably
timotimo creates spectests
r: *.(1).(2)
camelia rakudo-jvm 882e33: OUTPUT«No such method 'postcircumfix:<( )>' for invocant of type 'Whatever'␤ in any at gen/jvm/BOOTSTRAP.nqp:1658␤ in block at /tmp/agOHxZ1QUh:1␤ in any eval at gen/jvm/stage2/NQPHLL.nqp:1084␤ in any evalfiles at gen/jvm/stage2/NQPHLL.nqp:1290␤ in…»
..rakudo-parrot bec62b: OUTPUT«No such method 'postcircumfix:<( )>' for invocant of type 'Whatever'␤ in any at gen/parrot/BOOTSTRAP.nqp:1687␤ in any at gen/parrot/BOOTSTRAP.nqp:1669␤ in block at /tmp/N7IX4BbqXk:1␤ in any at /tmp/N7IX4BbqXk:1␤ in any at gen/parrot/s…»
dalek ar: 4375f28 | lue++ | tools/star/ (2 files):
Update to Makefile and Release Guide

Release Guide now a bit more detailed for literal-minded dolts such as myself, and the Makefile wasn't commited earlier thanks to that literal-minded idiocy :) .
20:33
timotimo er, of course that doesn't work
... wait, shouldn't that work?
r: say (* + *).WHAT 20:34
camelia rakudo-parrot bec62b, rakudo-jvm 882e33: OUTPUT«(WhateverCode)␤»
timotimo r: say (*(1)).WHAT
camelia rakudo-parrot bec62b: OUTPUT«No such method 'postcircumfix:<( )>' for invocant of type 'Whatever'␤ in any at gen/parrot/BOOTSTRAP.nqp:1687␤ in any at gen/parrot/BOOTSTRAP.nqp:1669␤ in block at /tmp/k0zWdb4PNh:1␤ in any at /tmp/k0zWdb4PNh:1␤ in any at gen/parrot/s…»
..rakudo-jvm 882e33: OUTPUT«No such method 'postcircumfix:<( )>' for invocant of type 'Whatever'␤ in any at gen/jvm/BOOTSTRAP.nqp:1658␤ in block at /tmp/WBKz43ljGG:1␤ in any eval at gen/jvm/stage2/NQPHLL.nqp:1084␤ in any evalfiles at gen/jvm/stage2/NQPHLL.nqp:1290␤ in…»
timotimo hm, actually not sure if that was ever supposed to work
r: say (*.foo(1)).WHAT
camelia rakudo-parrot bec62b, rakudo-jvm 882e33: OUTPUT«(WhateverCode)␤»
timotimo r: say (*.[1]).WHAT
camelia rakudo-parrot bec62b, rakudo-jvm 882e33: OUTPUT«(Failure)␤»
timotimo is there a known bugs section to the release document or something? 20:35
20:35 risou is now known as risou_awy
moritz only if you add one 20:37
lue ✔ ⑦ Update README, Makefile.in
dalek ar: 6af4334 | lue++ | / (2 files):
Update README and Makefile.in [RG Step 7]
20:38
20:38 fhelmberger left
lue ✔ ⑧ Push un-pushed local changes 20:38
20:38 zakharyas left, raiph left
lue I'm assuming the VERSION= in step 9 is still necessary, despite modifying Makefile.in? 20:38
✔ ⑨ Generate tarball 20:41
timotimo posting this into a known bugs section seems a bit too dramatic, i guess 20:42
dalek ast: ce4fdbf | (Timo Paulssen)++ | S02-types/whatever.t:
tests for RT #120385
20:44
synopsebot Link: rt.perl.org/rt3//Public/Bug/Displa...?id=120385
lue hopes this wraps in three hours' time 20:48
masak lue++ # star performance 20:51
lue :)
dalek p: 661eeb6 | (Tobias Leich)++ | / (2 files):
mapped getlexreldyn
lue And I really, really hope Step 10 doesn't fail. 20:52
masak .oO( given an arbitrary base, everyone really hopes Step 10 doesn't fail )
20:53 kaare__ left
timotimo r: say ([1, 2, 3].[*]).WHAT 20:54
camelia rakudo-parrot bec62b, rakudo-jvm 882e33: OUTPUT«(Parcel)␤»
benabik Arg. Rakudo-j doesn't understand DESTDIR. 20:56
20:56 jaffa4 left
moritz benabik: would it be enough to add it to the j-install rule? 21:02
benabik moritz: Also have to modify create-jvm-runner. Working on it.
timotimo notices he doesn't quite know how whatever-currying works internally 21:05
hm, so EXPR is responsible for that 21:06
diakopter lue: if you need a linux machine with lots of ram on which to build/test, moritz can help (07) [and I'm sure tons of others could too]; afk& 21:09
lue diakopter: thankfully, not anymore. It just takes time. 21:10
If I was still on my 384MiB RAM computer, this would all be happening on feather :)
benabik Arg. Working on Configure is so painful. Change something wait forever for things to build, repeat. 21:11
lue During module precomp, I got a couple ===SORRY!=== When pre-compiling a module, its dependencies must be pre-compiled first. I shouldn't worry about that I suspect. 21:12
21:13 rafl joined
benabik Huh. nqp-j and rakudo-j give me a /usr/local/languages 21:15
I suspect that should be something like share/nqp/languages
masak 'night, #perl6 21:16
timotimo 'night masak
still looking forward to t4 reviews :)
but don't let that keep you from sleeping tonight
lue masak o/ There'll be a Star release at your doorstep in the morning :) 21:17
lue is now in the whirlpool of the spectest.
timotimo ok 81 - *.[1] is some kind of code# TODO whatevercode with postcircumfix [] and {}
\o/
benabik Huh. rakudo is the 1 repo I don't have access to. :-D 21:18
PR opened. 21:20
errands &
lue will likely do the whole CLA business tonight, after * and the DW special.
timotimo github.com/rakudo/rakudo/pull/223 - would appreciate a quick review and spectest run 21:21
i'm running the spectests myself, but just in case ...
i'm not 100% sure it should be = 2 in these cases, i don't understand what the difference is exactly. i have a suspicion this could break (1, 2 ,3).[*] 21:24
dalek p: 9ac6475 | jonathan++ | src/vm/moar/QAST/QASTOperationsMAST.nqp:
Implement nqp::takedispatcher on MoarVM backend.
timotimo nope, seems to bestill right
not ok 11 - warning reports correct line number and subroutine 21:26
this is the only failure i get. this is not my fault, though, right?
in t/spec/integration/error-reporting.t
21:30 denis_boyun joined
dalek p: 1eed27d | (Tobias Leich)++ | / (2 files):
mapped getlexrelcaller
21:33
kudo/nom: 3a6b388 | (Timo Paulssen)++ | src/Perl6/Actions.nqp:
curry *.[] and *.{} again
21:36
kudo/nom: 3cef562 | (Tobias Leich)++ | src/Perl6/Actions.nqp:
Merge pull request #223 from timo/postcircumfix_whatevercode

curry *.[] and *.{} again
timotimo \o/
perl6-bench is failing to see the revisions it's supposed to extract, something with run may be going wrong 21:42
21:47 djanatyn joined
timotimo my local changes to run have probably caused this 21:48
dalek kudo/moar-support: 6838abf | jonathan++ | src/vm/moar/ (2 files):
Stub a couple more nqp::p6 ops on Moar.
21:51
[Coke] stackoverflow.com/questions/1961828...-reporting 21:59
22:03 denis_boyun left
dalek p: 64007fd | (Tobias Leich)++ | src/vm/moar/QAST/QASTCompilerMAST.nqp:
added method as_mast(QAST::Want, ...)
22:12
22:16 konundra joined 22:17 Rotwang left, konundra left 22:20 risou_awy is now known as risou
timotimo how do i properly test %*ENV? 22:20
tadzik launch an external process and make it print %*ENV, maybe 22:21
timotimo say run( 'sh', '-c', 'echo $GIT_DIR' )
like that?
FROGGS I think the sh -c is implicit 22:22
timotimo thatd oesn't seem to work
run 'echo' '$GIT_DIR' doesn't output anything helpful
FROGGS ~/dev/nqp$ GIT_DIR=abc perl6 22:24
> say run( 'sh', '-c', 'echo $GIT_DIR' )
abc
worx
timotimo: if you run it as a one-liner, the $GIT_DIR might get swallowed 22:25
timotimo this is in my repl
how about changing %*ENV 22:26
because that doesn't seem to work 22:27
FROGGS perl6 -e '%*ENV<GIT_DIR> = "xyz"; say shell q{echo $GIT_DIR}' # works 22:28
run does not seem to get env
timotimo well, shit.
FROGGS I think this is the one I made a branch (nqp_spawn) for
timotimo everything b0rks all the time :/
FROGGS run() works on windows in my branch I think, the linux version needs a bit love (aka implementation) 22:29
timotimo didn't this use to work?!
FROGGS not when it comes to ENV afaik 22:30
ingy just ran a sync for github.com/acmeism/RosettaCodeData
first time since YAPC :\
timotimo that surprises me; perl6-bench relied on %*ENV + run working 22:31
lue gist.github.com/lue/7188705 Spectest results.
Should I continue step 10 (modules-test), or proceed to fix/report these errors?
timotimo that's strange 22:32
lue (gist updated with specific failures) 22:35
22:36 risou is now known as risou_awy
timotimo filestat is probably noatime mount? 22:37
the other one might be missing icu or something like that?
lue $ eix -e icu␤[I] dev-libs/icu (so I have icu, v. 51.1) 22:38
timotimo hm. 22:39
22:39 cognominal__ joined
lue My drives are mounted as noatime according to /etc/fstab, so that's proably it :) 22:39
timotimo is going to try running perl6-bench with rakudo-jvm instead of rakudo-parrot
22:39 cognominal left
lue r: my $s = [~] (0x20..0xFF)».chr; say $s ~~ /[(<[:Punctuation]>)? .*]+/ 22:41
camelia rakudo-parrot 3cef56, rakudo-jvm 882e33: OUTPUT«(timeout)» 22:42
timotimo r: say "\x20"..."\xff";
camelia rakudo-parrot 3cef56, rakudo-jvm 882e33: OUTPUT« ! " # $ % & ' ( ) * + , - . / 0 1 2 3 4 5 6 7 8 9 : ; < = > ? @ A B C D E F G H I J K L M N O P Q R S T U V W X Y Z [ \ ] ^ _ ` a b c d e f g h i j k l m n o p q r s t u v w x y z { | } ~ ^H …»
22:43 xinming left
timotimo r: say ([~] "\x20"..."\xff") ~~ /[(<[:Punctuation]>)? .*]+/ 22:43
lue r: my $s = "\x20".."\xFF"; say $s.comb(/<:Punctuation>/);
22:43 xinming joined
camelia rakudo-parrot 3cef56, rakudo-jvm 882e33: OUTPUT«(timeout)» 22:44
rakudo-jvm 882e33: OUTPUT«(timeout)»
..rakudo-parrot 3cef56: OUTPUT«! " # % & ' ( ) * , - . / : ; ? @ [ \ ] _ { } ¡ « · » ¿␤»
timotimo ... huh weird
lue I think it may be rakudo's problem.
n: my $s = "\x20".."\xFF"; say $s.comb(/<:Punctuation>/);
timotimo that regex you're using is ... weird
camelia niecza v24-98-g473bd20: OUTPUT«(timeout)»
timotimo why does it do punctuation? and then .* +?
lue timotimo: I misunderstood how :Punctuation was supposed to work.
timotimo that seems like it could have pretty terrible backtracking behavior
lue (I didn't initially actually look at the test :P) 22:45
star: my $s = "\x20".."\xFF"; say $s.comb(/<:Punctuation>/);
camelia star 2013-09: OUTPUT«ICU not loaded␤ in regex at /tmp/yHWwkFSEIf:1␤ in method match at src/gen/CORE.setting:6127␤ in method comb at src/gen/CORE.setting:6115␤ in method comb at src/gen/CORE.setting:3624␤ in method comb at src/gen/CORE.setting:3626␤ in method comb …»
lue o.o
timotimo huh 22:46
lue So the filetest failure is due to my system (note to self: later improve that spectest to somehow know about noatime?), but the regex thing feels like rakudo's bad.
(I remember tadzik(?) working on this a few days ago.) 22:47
timotimo a few days ago would probably be after the rakudo release, so it's just a matter of too new tests 22:48
lue 2013.10-72-g71041aa is my non-star version and it fails exactly the same, fwiw. 22:49
FROGGS but... dont you take the testsuite from the compiler release tarball?
timotimo oh, yeah, that should be the case, sorry
22:50 xinming left, dmol left 22:51 xinming joined
timotimo make all install 603,02s user 6,12s system 129% cpu 7:51,23 total - for a parrot + jvm build, not bad (not including the Configure.pl step that runs gen-nqp) 22:51
lue Mouq was working with it on the 24th: irclog.perlgeek.de/perl6/2013-10-24#i_7760385 22:52
should this be considered a blocking bug? I fear it is. 22:53
Hang on, I just noticed the problem was *extra* characters, not *missing* ones! 22:56
timotimo "Unhandled file open mode 'rp'" on jvm :(
i thought somebody was hacking on that recently? 22:57
22:57 dmol joined
lue www.fileformat.info/info/unicode/ca...o/list.htm 22:57
*Thank Goodnes*, the "expected" portion is incorrect. I can fix this! :D
*Goodness 22:58
23:00 BenGoldberg joined
timotimo hm, i can't use -j2 to build parrot and jvm stuff in parallel? 23:02
it seems like i can actually do a parallel build 23:03
23:03 spider-mario left
dalek ast: 97db6ff | lue++ | S05-mass/charsets.t:
[S05-mass] Fix punctuation tests.

Section sign and Pilcrow are part of the Po (Punctuation, Other) category, and also within the 0x00..0xFF range.
23:04
lue ✘ ⑩ (recoverable; return to ⑧) 23:07
✔ ⑧ Push un-pushed local changes (no changes need to be pushed) 23:08
timotimo r: class foo { has int $.foo; }; foo.new(:foo(123)); 23:09
lue ✔ ⑨ Generate tarball
camelia rakudo-jvm 882e33: OUTPUT«(timeout)»
..rakudo-parrot 3cef56: OUTPUT«Cannot modify an immutable value␤ in block at gen/parrot/CORE.setting:849␤ in method BUILDALL at gen/parrot/CORE.setting:832␤ in method bless at gen/parrot/CORE.setting:821␤ in method new at gen/parrot/CORE.setting:806␤ in method new at g…»
timotimo so, in my nativeattr_buildplan branch i get "This representation can not unbox to a native int" and a success respectively for that code 23:10
that's an overall improvement, right?
lue wouldn't know :(
timotimo r: class foo { has int $.foo; }; foo.new(:foo(123));
i have no idea why this would timeout 23:11
camelia rakudo-jvm 882e33: OUTPUT«(timeout)»
..rakudo-parrot 3cef56: OUTPUT«Cannot modify an immutable value␤ in block at gen/parrot/CORE.setting:849␤ in method BUILDALL at gen/parrot/CORE.setting:832␤ in method bless at gen/parrot/CORE.setting:821␤ in method new at gen/parrot/CORE.setting:806␤ in method new at g…»
BenGoldberg r: say 1 23:12
timotimo could someone run that code on rakudo-jvm locally?
camelia rakudo-jvm 882e33: OUTPUT«(timeout)»
..rakudo-parrot 3cef56: OUTPUT«1␤»
timotimo ah, that's good
BenGoldberg For some definition of good 23:13
timotimo that's right
BenGoldberg r-p: say 1
camelia rakudo-parrot 3cef56: OUTPUT«1␤»
BenGoldberg r-p: my $c = class { has int $foo }; $class.new(:foo(42); 23:14
camelia rakudo-parrot 3cef56: OUTPUT«===SORRY!=== Error while compiling /tmp/0k88nEP1zm␤Unable to parse expression in argument list; couldn't find final ')' ␤at /tmp/0k88nEP1zm:1␤------> s { has int $foo }; $class.new(:foo(42);⏏<EOL>␤ expect…»
BenGoldberg r-p: my $c = class { has int $foo }; $class.new(:foo(42));
camelia rakudo-parrot 3cef56: OUTPUT«===SORRY!=== Error while compiling /tmp/kUM7eJAH09␤Variable '$class' is not declared␤at /tmp/kUM7eJAH09:1␤------> s { has int $foo }; $class.new(:foo(42))⏏;␤ expecting any of:␤ postfix␤»
BenGoldberg r-p: my $c = class { has int $foo }; $c.new(:foo(42));
camelia ( no output )
BenGoldberg r-p: my $c = class { has int $foo }; say $c.new(:foo(42));
camelia rakudo-parrot 3cef56: OUTPUT«<anon>.new()␤»
BenGoldberg n: my $c = class { has int $foo }; say $c.new(:foo(42)); 23:15
camelia niecza v24-98-g473bd20: OUTPUT«===SORRY!===␤␤Malformed has at /tmp/UL7GEbVNnb line 1:␤------> my $c = class { has⏏ int $foo }; say $c.new(:foo(42));␤␤Parse failed␤␤»
lue r-p: my $c = class { has int $.foo }; say $c.new(:foo(42));
camelia rakudo-parrot 3cef56: OUTPUT«Cannot modify an immutable value␤ in block at gen/parrot/CORE.setting:849␤ in method BUILDALL at gen/parrot/CORE.setting:832␤ in method bless at gen/parrot/CORE.setting:821␤ in method new at gen/parrot/CORE.setting:806␤ in method new at g…»
lue r-p: my $c = class { has Int $.foo }; say $c.new(:foo(42));
camelia rakudo-parrot 3cef56: OUTPUT«<anon>.new(foo => 42)␤»
timotimo why can you even write "has $foo"? 23:17
std: class foo { has int $bar }
camelia std 8adbc60: OUTPUT«ok 00:01 123m␤»
lue r: has $.a;
timotimo huh.
lue r-p: has $.a
camelia rakudo-jvm 882e33: OUTPUT«(timeout)»
..rakudo-parrot 3cef56: OUTPUT«===SORRY!=== Error while compiling /tmp/2p2hpfnegW␤You cannot declare attribute '$.a' here; maybe you'd like a class or a role?␤at /tmp/2p2hpfnegW:1␤------> has $.a⏏;␤ expecting any of:␤ scoped d…»
rakudo-parrot 3cef56: OUTPUT«===SORRY!=== Error while compiling /tmp/9fTXYnTd_4␤You cannot declare attribute '$.a' here; maybe you'd like a class or a role?␤at /tmp/9fTXYnTd_4:1␤------> has $.a⏏<EOL>␤ expecting any of:␤ scop…»
lue r-p: has $a
camelia rakudo-parrot 3cef56: OUTPUT«===SORRY!=== Error while compiling /tmp/gsyHtOvQKi␤You cannot declare attribute '$a' here; maybe you'd like a class or a role?␤at /tmp/gsyHtOvQKi:1␤------> has $a⏏<EOL>␤ expecting any of:␤ scoped…»
lue r-p: my $a
camelia ( no output )
lue r-p: my $.a
camelia rakudo-parrot 3cef56: OUTPUT«Useless declaration of a has-scoped method in mainline␤»
lue r-p: my $!a 23:18
camelia rakudo-parrot 3cef56: OUTPUT«===SORRY!=== Error while compiling /tmp/kf0iF9iNcn␤Cannot use ! twigil on my variable␤at /tmp/kf0iF9iNcn:1␤------> my $!a⏏<EOL>␤ expecting any of:␤ scoped declarator␤ constraint␤»
lue ...
BenGoldberg n: my $c = class { has int $.foo = 42 }; say $c.new();
camelia niecza v24-98-g473bd20: OUTPUT«===SORRY!===␤␤Malformed has at /tmp/_50eUJwElY line 1:␤------> my $c = class { has⏏ int $.foo = 42 }; say $c.new();␤␤Parse failed␤␤»
BenGoldberg n: my $c = class { has int $.foo is default(42) }; say $c.new();
camelia niecza v24-98-g473bd20: OUTPUT«===SORRY!===␤␤Malformed has at /tmp/nyVF7Mr5RQ line 1:␤------> my $c = class { has⏏ int $.foo is default(42) }; say $c.new(␤␤Parse failed␤␤»
23:19 xenoterracide left 23:20 xenoterracide joined
timotimo so, nobody has a rakudo-jvm locally? let me build another one :) 23:24
23:25 dmol left 23:26 xenoterracide left
lue timotimo: if I weren't busy with something else, I'd proably go ahead and build a rakudo JVM (already got the VM part anyways) :) 23:29
(as it stands I'm current building rakudo-p)
23:30 dmol joined
timotimo i'm almost done, but thanks! 23:30
i wasn't expecting you to add even more work to your load right now
lue I'll probably build one tonight or tomorrow, at least to play with the JVM again for a bit. 23:33
23:34 benabik joined
timotimo OpenJDK 64-Bit Server VM warning: INFO: os::commit_memory(0x00007f5520315000, 421888, 0) failed; error='Cannot allocate memory' (errno=12) 23:34
:( 23:35
23:39 pippo joined
pippo timotimo: class foo { has int $.foo; }; foo.new(:foo(123)); on my local jmv gives me... 23:39
java.lang.RuntimeException: Cannot access a native attribute as a reference attribute foo.new(foo => 0)
timotimo great 23:40
23:40 xenoterracide joined
timotimo now all i have to find out is how to make the unbox thing not happen and it should be working on both backends 23:40
23:41 dmol left 23:42 dmol joined
timotimo r: for ^100 { 10 but True; 1 }; 23:43
camelia ( no output )
..rakudo-parrot 3cef56: OUTPUT«(signal ABRT)»
timotimo r: my @dirty-hack; for ^100 { @dirty-hack.push(10 but True); 1 };
camelia ( no output )
lue
.oO( if $variable.isn't-in-a-box { $variable } else { $variable.de-box } )
23:44
jnthn
.oO( "It's my $var in a box..." )
timotimo r: my @dirty-hack; for ^100 { @dirty-hack.push(10 but True); 1 }; for ^1000 { 1 + 1 }; # will hopefully give me some GC pressure or something
camelia ( no output )
timotimo hmm
r: my @dirty-hack; for ^100 { @dirty-hack.push(10 but True); 1 }; @dirty-hack = [] ;for ^1000 { 1 + 1 }; # will hopefully give me some GC pressure or something 23:45
camelia ( no output )
jnthn I wonder if it's about freeing of the mp_int
23:46 dmol left
jnthn r: for ^100000 { nqp::clone(42) } 23:46
camelia ( no output )
jnthn r: for ^10000000 { nqp::clone(42) }
camelia rakudo-parrot 3cef56, rakudo-jvm 882e33: OUTPUT«(timeout)» 23:47
timotimo r: for ^100000 { nqp::clone(42); "sink" }
camelia rakudo-jvm 882e33: OUTPUT«(timeout)»
( no output )
jnthn r: for ^100000 { 42.clone }
camelia rakudo-parrot 3cef56, rakudo-jvm 882e33: OUTPUT«(timeout)» 23:48
diakopter heh
timotimo jnthn: github.com/timo/rakudo/commit/289d...4bf978R187 - can you see immediately where this may be causing "this representation cannot unbox to a native int"? not even sure where exactly the error occurs, all i know is it's in BUILDALL 23:54
diakopter timotimo: prob you need nqp::atpos_i 23:56
(in some place or another)
jnthn Where?
I don't see anywhere that'd help right off, fwiw
I don't see where the problem is either :(
diakopter line 190? 23:57
jnthn Wait, why is the 5/6/7 case handled all together with bindattr in one place and not in the others?
timotimo parrot vs !parrot 23:58
jnthn diakopter: No, it's using atpos to get stuff out of an object array there
23:58 raiph joined
diakopter which arg to bindattr_i is the i? 23:58
jnthn Last one
timotimo so the decont is hitting it? 23:59