Perl 6 - the future is here, just unevenly distributed

IRC log for #perl6, 2013-08-11

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:11 lizmat joined #perl6
00:18 woolfy joined #perl6
00:19 [Pujol] joined #perl6
00:19 [Pujol] hi!
00:26 Woodi joined #perl6
00:28 sorear o/ [Pujol]
00:31 [Pujol] joined #perl6
00:37 solemn2 joined #perl6
00:57 Woodi joined #perl6
00:57 solemn2 ,10F,02U,06C,01K,03F,15U,10C,00K,10F,14U,12C,13K​,03F,15U,00C,11K,15F,14U,14C,08K,02F,00U,09C,08K​,05F,12U,12C,14K,14F,09U,02C,11K,06F,09U,15C,04K​,02F,14U,10C,11K,06F,07U,09C,01K,15F,04U,11C,01K
01:13 Woodi joined #perl6
01:21 Woodi joined #perl6
01:39 zacts joined #perl6
01:46 fgomez joined #perl6
01:53 cognominal joined #perl6
01:54 cognominal joined #perl6
01:55 cognominal joined #perl6
02:07 Woodi joined #perl6
02:17 mikemol joined #perl6
02:36 Woodi joined #perl6
02:40 japhb o/
02:43 Woodi joined #perl6
02:52 japhb Anyone currently awake happen to know if rakudo-parrot or rakudo-jvm is currently a better choice for writing TCP network clients, in both the textual protocol and packed binary protocol cases?
02:52 japhb (Including if one is better for text and the other for binary)
02:57 cooper_ joined #perl6
03:11 wtw_ joined #perl6
03:18 Woodi joined #perl6
03:35 FROGGS joined #perl6
03:35 preflex joined #perl6
03:39 preflex joined #perl6
03:56 Mouq joined #perl6
03:58 grondilu joined #perl6
04:00 grondilu joined #perl6
04:01 grondilu isnt reading an ASCII file so common that we might as well define 'sub lines(Str $f) { open($f).lines }'  ?
04:01 grondilu I meant:  reading an ASCII file *line by line*
04:02 grondilu ah no actually, lines is already used to split a string with newlines.  Forget it, then.
04:06 benabik S16:49
04:07 synopsebot Link: http://perlcabal.org/syn/S16.html#line_49
04:07 benabik r: say lines
04:07 camelia rakudo b03cc1: OUTPUT«Land der Berge, Land am Strome, Land der Äcker, Land der Dome, Land der Hämmer, zukunftsreich! Heimat bist du großer Söhne, Volk, begnadet für das Schöne, vielgerühmtes Österreich, vielgerühmtes Österreich!  Heiß umfehdet, wild umstritten liegst dem Erdteil du inmi…
04:07 benabik grondilu: ^^  If you want a specific file, then $f.IO.lines is just as easy as lines($f)
04:08 benabik (Okay, .IO. is 2 more characters than () )
04:09 benabik Actually, in Rakudo sub lines takes a $fh argument that just defaults to $*ARGFILES.
04:10 benabik So it already works that way.
04:11 benabik Although it doesn't try to coerce to a .IO  :-/
04:37 crab2313 joined #perl6
04:41 grondilu std: q:p{path}
04:41 camelia std c2215f0: OUTPUT«ok 00:00 41m␤»
04:42 grondilu r: say q:p{path}
04:42 camelia rakudo b03cc1: OUTPUT«[31m===[0mSORRY![31m===[0m Error while compiling /tmp/Axs2v_Y54Nâ�¤Unrecognized adverb: :pâ�¤at /tmp/Axs2v_Y54N:1â�¤------> [32msay q:p[33mâ��[31m{path}[0mâ�¤    expecting any of:â�¤        colon pair (restricted)â�¤Â»
04:42 grondilu n: say q:n{path}
04:42 camelia niecza v24-88-g1f87209: OUTPUT«[31m===[0mSORRY![3​1m===[0mâ�¤â�¤Unrecognized quote modifier: n at /tmp/hxfQ_PwJUv line 1:â�¤------> [32msay q[33mâ��[31m:n{path}[0mâ�¤â�¤Unhandled exception: Check failedâ�¤â�¤  at /home/p6eval/niecza/boot/lib/CORE.setting line 1502 (die @ 5) â�¤  at /home/p6eval/ni…
04:43 grondilu I guess lines could be defined as 'multi lines(Path $p) { open($p).lines }' or something.
04:43 benabik Most sub forms just redirect to the method version.
04:44 grondilu r: say join ":", lines "foo\nbar"
04:44 camelia rakudo b03cc1: OUTPUT«foo:bar␤»
04:44 grondilu there's already a candidate for lines(Str)
04:45 benabik Well, I think it's lines(Any).  lines($a) == $a.lines
04:46 grondilu oh ok
04:46 benabik Most core subs work the same way.
04:51 dmol joined #perl6
04:51 moritz good morning everyone!
05:01 diakopter hi
05:03 woolfy \o
05:05 woolfy diakopter: arrived at your room ok tonight?
05:05 woolfy ...last night...
05:06 japhb o/
05:06 woolfy hotel Dnipro, room, leont?
05:06 japhb Hackathon before YAPC::EU?
05:06 woolfy Hackathon in 2 hours! Yep.
05:07 japhb Cool beans.  Any particular subject?
05:15 woolfy Not for me.  I'm supporting team for Liz.  I'll do some shopping.
05:17 japhb :-)
05:37 Agamemnus joined #perl6
05:38 Agamemnus ok, how do I get camelia the bot to output multicolor text?
05:38 Agamemnus I'd like to see if my client supports it
05:38 JimmyZ ,11F
05:39 Agamemnus anyone?
05:39 Agamemnus forget about it, i have a 5 second attention span
05:39 Agamemnus left #perl6
05:40 grondilu rn: try { .say } for ^3
05:40 camelia niecza v24-88-g1f87209: OUTPUT«0␤1␤2␤»
05:40 camelia ..rakudo b03cc1: OUTPUT«(Any)␤(Any)␤(Any)␤»
05:42 FROGGS joined #perl6
05:54 FROGGS joined #perl6
05:59 sorear at least they're honest
06:05 tadzik1 hello #perl6
06:06 FROGGS morning
06:25 raiph joined #perl6
06:26 jnthn morning, #perl6
06:26 japhb morning!
06:28 sorear o/
06:34 labster \o sorear
06:39 cooper joined #perl6
06:40 sorear that's an ... interesting ... mail on p6u
06:46 FROGGS ohh yeah -.-
06:50 FROGGS sad that subscribed a bit late (did it now tbc), sorear: can you email him that he tries to execute Perl5 code with the perl6 interpreter?
06:51 FROGGS I'll answer the following questions when I get the mails
06:55 * sorear is too out of the loop for that
06:55 FROGGS k
06:58 timotimo he did point out that he figured out that the inine::c thing isn't the same from perl5 and just posted what he tried to use
06:58 FROGGS timotimo: and he is tried to use a perl5 module, Math::Simple
06:59 FROGGS (and Perl5 syntax all over the place)
06:59 FROGGS timotimo: you have subscribed to that mailing list already?
06:59 lizmat joined #perl6
07:05 timotimo i was once subscribed, then found out that using nntp is much cooler, then installed a new OS on my laptop and didn't migrate my settings, so at the moment i'm not subscribed
07:05 FROGGS I'd like to reply to that mail somehow :/
07:06 timotimo the Math::Simple module isn't actually from perl5, or if it is it's ... indeed ridiculously simple
07:06 timotimo note that he included the whole contents of the file verbatim in the mail
07:06 FROGGS right, and he uses Perl5 tools like h2xs...
07:07 FROGGS I'd like to paste a working piece of code
07:07 timotimo i suppose that transforms a c header file into an XS module?
07:07 FROGGS I think so
07:14 lizmat jnthn gives an introduction!
07:14 FROGGS link to livestream at hand?
07:14 * timotimo would love to hear what's going on, too
07:14 FROGGS ó.ò
07:14 timotimo like, a google hangout or something
07:14 lizmat no livestream
07:15 FROGGS a spare laptop with a cam around? :o)
07:16 timotimo i'd settle for audio-only, too, fwiw
07:22 denisboyun joined #perl6
07:24 cono joined #perl6
07:24 cono hiya!
07:24 moritz hi!
07:24 vovka joined #perl6
07:24 masak hi cono! \o/
07:25 masak vovka! \o/
07:25 leont joined #perl6
07:25 masak r: say "leont! \\o/"
07:25 camelia rakudo b03cc1: OUTPUT«leont! \o/␤»
07:25 jnthn finally, a connection
07:25 leont :-D
07:26 vovka Hello everybody from YAPC::2013 ;)
07:26 cono o/
07:27 moritz we're now sitting on a long table, I'm counting about 16 people
07:27 lizmat joined #perl6
07:28 timotimo that's like 10 more than there is perls!
07:29 moritz has anybody seen tadzik today?
07:31 diakopter moritz: nope never appeared at breakfast since 7
07:31 panchiniak_ joined #perl6
07:31 FROGGS damn it, panda is unable to install File::Find :/
07:32 moritz I now noticed that the IRC log reload button doesn't handle network failure gracefully
07:32 lizmat test
07:32 moritz lizmat: passed
07:32 FROGGS not ok 10 - found one of two files due to X::IO::Dir
07:32 FROGGS #      got: '2'
07:32 FROGGS # expected: '1'
07:33 FROGGS panda/ext/File__Tools$ PERL6LIB=lib perl6 t/01-file-find.t that is
07:33 * grondilu already mentioned this on IRC few days ago
07:33 tadzik1 hey, hey
07:33 denis_boyun_ joined #perl6
07:34 tadzik1 where's the hackathon?
07:34 tadzik1 at the venue? At Dnipro hotel?
07:34 grondilu '2' is actually the correct result.  There are indeed two files.
07:34 diakopter 2nd floor
07:34 tadzik1 wnd floor of what?
07:34 leont At the Dnipro
07:34 nugged joined #perl6
07:34 tadzik1 ok
07:34 moritz tadzik1: hotel
07:34 FROGGS grondilu: but what about the description of the test? somehow it is meant to only return 1
07:35 [Sno] joined #perl6
07:35 lizmat tadzik1: get to the 2nd floor at the Dnipro
07:36 grondilu FROGGS: I don't know why, but there are two files that match the search criteria.
07:36 [Sno] hurray \o/
07:36 lizmat get into the restaurant, turn left, in the far left corner, go through the door
07:36 timotimo FROGGS, grondilu, i thought it was because the test function raises an exception or so
07:37 nugged so, let's make a rollcall for everybody in room (real room at dnipro hotel %) )?
07:38 * grondilu can't check out the File::Find issue right now for he's currently reinstalling perl6 and rakudo
07:38 grondilu (I mean panda and rakudo)
07:39 FROGGS grondilu: right, the description mentions that there are two matching files, but due to some magic it should return one
07:39 cono what the tiny URL ?
07:39 cono /pbh /pbhkiev ?
07:39 grondilu oh, ok
07:39 FROGGS timotimo: I'll debug it after breakfast
07:39 nugged p6hkiev
07:40 cono oh, ty
07:40 nugged guys, tinyurl.com/p6hkiev, I spent some time to guess it too :). Anyway, it leads to empty wiki page for now
07:41 MDn joined #perl6
07:41 vovka Hi, MDn!
07:42 MDn hi hi \o/
07:42 masak oh hai MDn
07:43 masak nugged: it goes to http://act.yapc.eu/ye2013/​wiki?node=Perl6Hackathonk but the right URL is http://act.yapc.eu/ye2013/wiki?node=Perl6Hackathon
07:43 masak jnthn-- # you klutz :P
07:44 timotimo hackathonk? :)
07:44 masak nugged: http://rakudo.de/hack works right away, though.
07:44 timotimo that's pretty cool
07:44 masak timotimo: welcome to our lovely hackathonk!
07:44 masak it's like a hackathong, but less rated R.
07:44 timotimo :)
07:44 timotimo hack-donk-a-thonk
07:44 masak or like the Game of Hackathrones.
07:45 masak when you play the Game of Hackathrones, you either win, or you lose your wifi connection.
07:46 cono :D
07:49 moritz try
07:49 masak CATCH
07:50 grondilu rn: try { .say } for ^3
07:50 moritz rethrow!
07:50 camelia niecza v24-88-g1f87209: OUTPUT«0␤1␤2␤»
07:50 camelia ..rakudo b03cc1: OUTPUT«(Any)␤(Any)␤(Any)␤»
07:50 grondilu ^you guys can start fixing that :)
07:50 moritz grondilu: nothing wrong with that
07:51 moritz (afaict)
07:51 grondilu shouldn't the topic variable be visible in a try block?
07:52 moritz maybe
07:52 aindilis joined #perl6
07:52 grondilu rn: try .say for ^3
07:52 camelia rakudo b03cc1, niecza v24-88-g1f87209: OUTPUT«0␤1␤2␤»
07:53 tadzik1 so, I thould probably fix this File::Find issue :/
07:53 daxim joined #perl6
07:53 * grondilu wonders if try .say for ^3 means try { .say } for ^3 or try { .say for ^3 }
07:53 nugged can't track irc and real life both --- argh
07:53 tadzik1 although I'm tempted to just remove tests :>
07:54 masak aindilis: hi.
07:56 timotimo r: (try .say) for ^3
07:56 camelia rakudo b03cc1: OUTPUT«(Any)␤(Any)␤(Any)␤»
07:56 grondilu n: (try .say) for ^3
07:56 camelia niecza v24-88-g1f87209: OUTPUT«0␤1␤2␤»
07:57 woolfy joined #perl6
07:57 FROGGS ==> Successfully installed panda \o/
07:58 FROGGS (just comment out the #keep-going block and set plan to 8)
07:59 tadzik yeah, I should do that
07:59 tadzik I mean, I'm sure the code is good, it's just tricky to test, and I thin kit's one of the cases where tests are just wrong
08:01 FROGGS k
08:02 tadzik also, I think I'll move Panda to File::Find and Shell::Command, separated
08:02 tadzik if someone understands submodules, I'll be glad to accept assistance :)
08:03 pnu the shared network kind of started to work after changing my dns server to 8.8.8.8 (the google dns resolver)
08:03 timotimo what do you need, tadzik? are they one repository and you want two?
08:04 tadzik timotimo: I already have two
08:04 tadzik timotimo: I need to change submodules in panda to point to them
08:04 tadzik it now points to File::Tools
08:06 timotimo oh
08:07 timotimo that's not hard
08:07 tadzik r: require 'perl' or die
08:07 timotimo cd into them, git checkout the correct commit, cd out and git commit
08:07 camelia rakudo b03cc1: OUTPUT«===SORRY!===␤␤»
08:07 timotimo i used to think you have to git add the submodule so that it shows up, but someone told me that was wrong i think
08:07 ivanoff joined #perl6
08:08 ivanoff hi everyone!
08:08 moritz hello ivanoff
08:08 tadzik but I need to change the repo they point to
08:08 tadzik argh
08:08 denis_boyun_ hi
08:08 sorear hi
08:10 timotimo oh, that!
08:10 timotimo sorry. yeah, you'd change .gitmodules for that and git add .gitmodules is my best guess
08:11 * lizmat decided against trying to stream anything from the hackathon room
08:11 timotimo not sure if it would update the gitmodules file for you if you used git remote in the submodule itself, that would be kinda cool
08:11 timotimo lizmat: internets is unreliable?
08:11 lizmat we have severe network / bandwdith problems already
08:11 timotimo good call
08:12 lizmat I'm sharing my wifi to ethernet to someone else who shares his ethernet over wifi
08:12 lizmat to get around the lack of leases problem
08:12 lizmat but now we hit the general lack of bandwidth issues
08:12 moritz any idea where to put test(s) for https://rt.perl.org/rt3/Ti​cket/Display.html?id=73230 ?
08:13 moritz r: try eval 'if()'
08:13 camelia rakudo b03cc1:  ( no output )
08:13 moritz r: try eval 'if()'; say $/.perl
08:14 camelia rakudo b03cc1: OUTPUT«Any␤»
08:14 timotimo wow, yikes
08:14 moritz r: try eval 'if() {}'; say $/.perl
08:14 camelia rakudo b03cc1: OUTPUT«Any␤»
08:14 timotimo with ipv6 that wouldn't have happened ;)
08:14 timotimo moritz: $/?
08:15 moritz timotimo: I'm dumb, thanks
08:15 moritz r: try eval 'if() {}'; say $!.perl
08:15 camelia rakudo b03cc1: OUTPUT«X::Comp::Group.new(panic => X::Comp::AdHoc.new(filename => "eval_0", line => 1, column => Any, modules => Array.new(), is-compile-time => Bool::True, pre => "if() ", post => "\{}", highexpect => Array.new(), payload => "Unexpected block in infix position (two terms…
08:15 timotimo i was ready to let you amaze me with "this super cool feature rakudo has" that somehow lets you get a cursor from an if statement :D
08:15 tadzik :D
08:16 dalek panda: c24f912 | tadzik++ | / (2 files):
08:16 dalek panda: Try to update submodules
08:16 dalek panda: review: https://github.com/tadzik/panda/commit/c24f912045
08:16 tadzik yay, pushed, after 3 minutes :P
08:17 timotimo tadzik: the way i see it, the submodule is two parts: which commit to get and where to get commits from. the first part is changed by cd'ing into it and checkouting. the second part is done by changing .gitmodules; does that seem sensible?
08:17 timotimo hm. it's probably possible to use a repository as a submodule *in* itself :D
08:17 timotimo i should totally try that
08:20 timotimo haha, that is cool
08:20 timotimo it does clone the repository, though. but the object stores can be shared as well
08:21 moritz http://rakudo.ode/testneeded
08:21 moritz http://rakudo.de/testneeded
08:23 tadzik gah
08:23 tester3133 joined #perl6
08:25 MDn Well, I'm on the hackathon. I've compiled rakudo, installed Panda - there are no problems. But, what have I do now? Porting modules from Perl5?
08:25 timotimo yeah, you can do that :)
08:25 daxim http://act.yapc.eu/ye2013/wiki?node=Perl6Hackathon
08:25 tadzik MDn: do you understand git submodules?
08:26 vovka joined #perl6
08:26 tadzik if yes, then please help me fixing panda :)
08:27 timotimo ah, could it be that shell command and file find were not submodules in the first place?
08:27 timotimo oh, but the ywere
08:28 MDn tadzik, Well, I haven't tried git submodules before, but thank you - you've shown me the way ;)
08:28 tadzik they weren't file-tools were
08:29 timotimo i can fix it for you, gimme a sec
08:29 timotimo for one, the shell command git url was b0rked ;)
08:30 timotimo how can i get it to you?
08:30 tadzik do you have a commit bit?
08:30 timotimo i don't think i do
08:30 timotimo at least i don't see an obvious hint on the main page of the repo
08:31 tadzik bad
08:31 timotimo right, i don't have a commit bit yet
08:31 tadzik fixing it
08:31 timotimo here let me copy paste the 50 line patch into irc! :P
08:31 timotimo https://gist.github.com/timo/2f7a225a48912cacd7df
08:31 tadzik nooo
08:32 tadzik it'll kill our connection :)
08:32 timotimo i don't know what the magic incantation would have been to create the folders for the submodules; i just deleted the submodules from .gitmodules and re-added them :|
08:33 tadzik :)
08:33 timotimo oh, git submodule sync would probably have been the right command
08:33 masak MDn: "what do I do now?" is a very good question. we would prefer you to do something you enjoy. that's how we tend to see the most amazing results. :)
08:35 tadzik github is horrible on a slow connection
08:36 masak tadzik: as opposed to all those sites that are just lovely on a slow connection? :P
08:36 FROGGS arnsholt / jnthn: I sent a PR for zavolaj that would be cool if it gets applied today :o)
08:36 timotimo i wonder if it would help if github implemented spdy
08:37 tadzik masak: exactly! :)
08:38 dalek panda: 059ae90 | (Timo Paulssen)++ | / (3 files):
08:38 dalek panda: fix submodules for good (hopefully!)
08:38 dalek panda: review: https://github.com/tadzik/panda/commit/059ae90efc
08:38 tsmith joined #perl6
08:38 * timotimo suddenly has images of qui gon jin singing "want you back for good" to anakin skywalker
08:38 timotimo +in his head
08:39 masak thanks for sharing :)
08:39 * MDn releasing the internet bandwitdh and energy socket for you. I think, you need it much more than me. See you later on Perl5 conf.
08:39 MDn thank you all
08:40 masak MDn: \o
08:40 tadzik timotimo: yes, seems to work!
08:41 * timotimo does a tiny dance
08:43 woolfy joined #perl6
08:43 tadzik anyone up to porting Sockets to JVM? :)
08:45 timotimo where would the "is default" trait be applied? it seems to me that ContainerDescriptor is the wrong place because you can override that with binding and binding shouldn't change is dynamic, right?
08:46 lizmat timotimo: what do you mean with "applied"  at compile time?  at runtime ?
08:46 TimToady eventually, we hope to disallow binding of anything incompatible with the original declaration
08:46 TimToady but for now we consider it a DIHWIDT
08:47 timotimo lizmat: really any time before the optimizer gets its hands on the code
08:47 cono What version of pcre is required?
08:47 cono Failed to load libpcre
08:47 cono during parrot compiling :(
08:48 timotimo i want to make sure i never accidentally turn a lexical that's marked "is dynamic" into a local
08:48 cono I have 8.33 pcre
08:48 lizmat r: my Int %h; say %h<foo> # just checking
08:48 camelia rakudo b03cc1: OUTPUT«(Int)␤»
08:48 timotimo and maybe i can even make CALLER:: error out if the thing that's being accessed isn't marked dynamic
08:48 lizmat r: my Int %h is default(42); say %h<foo> # just checking
08:48 camelia rakudo b03cc1: OUTPUT«(Int)␤»
08:49 timotimo https://www.ssllabs.com/sslte​st/analyze.html?d=rt.perl.org - should i bug somebody about this?
08:49 maxim4d joined #perl6
08:49 timotimo is "is default" the way to set a WHENCE on a hash or list?
08:50 TimToady I think for now you can assume that any binding that violates teh original contract is erroneous, and might or might not produce an error someday
08:51 timotimo well, i'm not confident in my optimisation code to make it level 2 any time soon, so all it'll do is get used for the core setting. i'll look how often it could be wrong there.
08:51 lizmat timotimo: about to push a working "is default" for hashes and arrays
08:51 masak "might produce an error someday" is shorter than "might or might not produce an error someday" :P
08:51 masak and conveys the same information
08:51 TimToady dunno if default is powerful enough to set up a WHENCE
08:51 tadzik sorear: ping
08:52 moritz r: say 'oh hai'
08:52 camelia rakudo b03cc1: OUTPUT«oh hai␤»
08:52 sorear tadzik: hi
08:52 lizmat you only need "is default" if there is already a whence on hash/array
08:52 timotimo apparently both OUTER and CALLER are used only for eval and REQUIRE_IMPORT
08:52 tadzik sorear: is there a documentation on the 'method/something/(I)V' syntax in jvm interop?
08:52 timotimo (in the setting)
08:53 ivanoff r: say "123"
08:53 camelia rakudo b03cc1: OUTPUT«123␤»
08:53 TimToady default is a single value for the whole array, whereas a WHENCE has to know which element to create if used as an lvalue
08:53 timotimo ah, okay
08:54 ivanoff r: say "split ',', 'a,b,c'"
08:54 camelia rakudo b03cc1: OUTPUT«split ',', 'a,b,c'␤»
08:54 ivanoff r: split ',', 'a,b,c'
08:54 camelia rakudo b03cc1:  ( no output )
08:55 ivanoff r: say split ',', 'a,b,c'
08:55 camelia rakudo b03cc1: OUTPUT«a b c␤»
08:55 masak r: say "a,b,c".split(",").perl
08:55 camelia rakudo b03cc1: OUTPUT«("a", "b", "c").list␤»
08:55 tadzik oh, I just found it in the docs
08:55 tadzik my bad
08:56 masak r: say "a,b,c".split(",").perl.comb.perl
08:56 camelia rakudo b03cc1: OUTPUT«("(", "\"", "a", "\"", ",", " ", "\"", "b", "\"", ",", " ", "\"", "c", "\"", ")", ".", "l", "i", "s", "t").list␤»
08:56 masak :)
08:56 tadzik at least some docs
08:57 FROGGS cono: I have libpcre3 1:8.31-2
08:58 ivanoff r: my @y=1,2,3; .say for@y[1 .. +@y];
08:58 camelia rakudo b03cc1: OUTPUT«2␤3␤(Any)␤»
08:58 daxim camelia's new host is the hardware p5p's got recently?
08:59 ivanoff r: my @y=1,2,3; .say for@y[1 .. ^+@y];
08:59 camelia rakudo b03cc1: OUTPUT«Range objects are not valid endpoints for Ranges␤  in method new at src/gen/CORE.setting:6448␤  in method new at src/gen/CORE.setting:6440␤  in sub infix:<..> at src/gen/CORE.setting:6641␤  in block  at /tmp/FaquV8qcFB:1␤␤»
08:59 FROGGS cono: but hmmm, my parrot executable is not linked against libpcre
08:59 diakopter daxim: no; I was going to put it on a virtual server I have
08:59 ivanoff r: my @y=1,2,3; .say for@y[1 .. ^ +@y];
08:59 camelia rakudo b03cc1: OUTPUT«Range objects are not valid endpoints for Ranges␤  in method new at src/gen/CORE.setting:6448␤  in method new at src/gen/CORE.setting:6440␤  in sub infix:<..> at src/gen/CORE.setting:6641␤  in block  at /tmp/ZIHW1KP_kR:1␤␤»
08:59 sorear tadzik: was hoping someone would have papered over that by now :)
08:59 FROGGS r: my @y=1,2,3; .say for@y[1 .. +@y];
08:59 camelia rakudo b03cc1: OUTPUT«2␤3␤(Any)␤»
08:59 cono Adding loadlib libpcre, 'libpcre.so.1' to runtime/parrot/library/pcre.pir helped to me, dunno if I need a log a bug for it and a patch
08:59 sorear tadzik: it's {category}/{name}/{signature}
08:59 FROGGS r: my @y=1,2,3; .say for@y[1 ... +@y];
08:59 camelia rakudo b03cc1: OUTPUT«2␤3␤(Any)␤»
09:00 ivanoff r: my @y=1,2,3; say ^ +@y;
09:00 camelia rakudo b03cc1: OUTPUT«0..^3␤»
09:00 sorear tadzik: category and name you can probably fumble out on your own
09:00 TimToady r: my @y = 1,2,3; say ^@y;  # this is enough
09:00 camelia rakudo b03cc1: OUTPUT«0..^3␤»
09:00 ivanoff r: my @y=1,2,3; say^ +@y;
09:00 camelia rakudo b03cc1: OUTPUT«␤»
09:00 sorear tadzik: signatures (actually I mean descriptors) come from http://docs.oracle.com/javase/spec​s/jvms/se7/html/jvms-4.html#jvms-4.3
09:01 ivanoff r: my @y=1,2,3; say^ +@y;
09:01 camelia rakudo b03cc1: OUTPUT«␤»
09:01 TimToady list operators require a space after them
09:01 FROGGS ivanoff: be careful where to put space chars
09:01 TimToady std: my @y=1,2,3; say^ +@y;
09:01 camelia std c2215f0: OUTPUT«[31m===[0mSORRY![31m===[0m�Unsupported use of bare 'say'; in Perl 6 please use .say if you meant $_, or use an explicit invocant or argument at /tmp/rcHKU3nw7O line 1:�------> [32mmy @y=1,2,3; say[33m�[31m^ +@y;[0m�Check failed�FAILED 00:00 44m�»
09:01 moritz r: my @y=1,2,3; .say for@y[1 ..^ +@y];
09:01 FROGGS cono: and you're just trying to install parrot?
09:01 camelia rakudo b03cc1: OUTPUT«2␤3␤»
09:01 ivanoff r: my @y=1,2,3; .say^ +@y;
09:02 camelia rakudo b03cc1: OUTPUT«(Any)␤»
09:02 FROGGS ivanoff: put a space after say
09:02 cono FROGGS: and rakudo too
09:02 moritz ivanoff: ..^ vs. .. ^
09:02 ivanoff r: my @y=1,2,3; .say ^ +@y;
09:02 camelia rakudo b03cc1: OUTPUT«(Any)␤»
09:02 ivanoff thanx!
09:02 cono FROGGS: I found the similar ticket: http://trac.parrot.org/parrot/ticket/578 for the old pcre library
09:02 TimToady and leave out the .
09:02 FROGGS cono: which os and architecture?
09:02 cono for the new one, I need additional libpcre.so.1
09:02 cono gentoo x64
09:02 cono FROGGS: gentoo x64
09:02 FROGGS k
09:03 masak r: my @y = <a b c>; say ^@y
09:03 camelia rakudo b03cc1: OUTPUT«0..^3␤»
09:04 domidumont joined #perl6
09:06 crab2313 joined #perl6
09:08 ilyuhan joined #perl6
09:08 ivanoff r: class AB{has @.x; method aa { my @y=1,2,3; .say for @y[1 .. +@y]; .say for @.x; .say for @.x[1 ..^ +@.x] } };my AB $y.=new(:x(1,2,3)); $y.aa;
09:08 camelia rakudo b03cc1: OUTPUT«2␤3␤(Any)␤1␤2␤3␤2␤3␤»
09:08 daxim fwiw, nqp package time (with pir and jvm) at home via local install of open build service is 1109 seconds
09:08 FROGGS ivanoff: you can just `say @y` too
09:09 FROGGS ivanoff: and btw, array indexes start at zero, not one
09:10 ivanoff yep, we just try to run onelener from rt#75010
09:10 FROGGS k
09:11 lizmat timotimo: fixing last glitches , I hope
09:11 masak ivanoff++
09:12 sorear tadzik: helps?
09:12 tadzik sorear: partially, I asked jnthn about the remaining bits
09:12 lizmat timotimo: $ perl6 -e 'my Int %h is default(42); say %h<foo>; say %h<foo>:exists'
09:12 lizmat 42
09:12 lizmat False
09:12 lizmat running spectest now
09:13 tadzik niice
09:13 FROGGS ohh nice
09:13 ruz_ joined #perl6
09:13 timotimo cool beans! :)
09:14 lizmat alas, some spectest failures I need to check before pushing :-(
09:16 cono For paarrto should I log bugs via github?
09:16 cono parrotbug script says via github
09:16 tadzik yeah, github is the way to go
09:16 cono ty
09:18 tadzik what bug is that, ooc?
09:18 cono https://github.com/parrot/parrot/issues/976
09:18 cono I already have a fix for it
09:18 cono preparing a pull request
09:20 * timotimo has a primitive prototype of making sure that "is dynamic" is set on a variable that you're trying to access through CALLER
09:21 timotimo aaw, i'm in the setting at a point before +& and +| are defined and i'm trying to manipulate bitmasks:|
09:22 timotimo good thing i know what the nqp ops are
09:25 FROGGS :o)
09:26 sorear tadzik: jnthn++
09:26 timotimo FROGGS: it turns out i *am* subscribed to p6u
09:26 FROGGS hehe
09:26 FROGGS timotimo: too late! :P
09:27 timotimo but i did not get the previous mail, just yours
09:27 FROGGS_ joined #perl6
09:27 timotimo wait. no! i *did* get it, but it's all the way down there, buried beneath tons of other mails
09:27 timotimo i need to get my filters working again.
09:34 ilyuhan What's the development branch name of rakudo?
09:34 timotimo "nom"
09:34 timotimo stands for "new object model", which is now not terribly new any more
09:34 cono I've done a pull request: https://github.com/parrot/parrot/issues/976 <- for this ticket
09:34 FROGGS cono++
09:35 ilyuhan thx
09:35 spider-mario joined #perl6
09:36 spider-mario joined #perl6
09:36 FROGGS cono: I pasted that on irc.perl.org #parrot
09:38 spider-mario joined #perl6
09:41 sorear ilyuhan: we don't really do development branches here.  most development goes into nom, and releases are cut from there
09:41 sorear we only really use branches for major subsystem refactors
09:42 sromanov_ joined #perl6
09:43 cono FROGGS: thanks! so happy :)
09:43 timotimo well, that's for the experts; i'm doing all my stuff in branches, but that's also because i don't have a commit bit to rakudo
09:46 FROGGS yeah, branches are good for experimental stuff
09:47 FROGGS timotimo: do you have submitted a CLA?
09:47 timotimo no
09:47 timotimo do you think i should?
09:47 FROGGS yeah, I think so
09:48 FROGGS lizmat: when do we meet in frankfurt? I'd like to book rooms/train today
09:48 lizmat 14/15 September
09:49 FROGGS so, being there early on sat and leaving late on sunday?
09:49 timotimo what's the venue like?
09:50 FROGGS timotimo: http://www.jugendherberge-fra​nkfurt.de/en/how-to-find-us/
09:51 tadzik so it's Officil now, we can start booking time?
09:53 FROGGS I'll book now :P
09:54 PacoLinux joined #perl6
09:56 timotimo i got a bit stuck; i was trying to get the keyed object out of the PseudoStashes $!storage, politely ask its VAR for its $!descriptor via nqp::getattr and call the .dynamic method on it that i built, but that gives me a null pmc access in find_method; does that mean that my getattr for $!descriptor failed?
10:01 Rotwang joined #perl6
10:01 daxim nqp 2013.07 fails t/jvm/06-sprintf.t and also still in blead
10:01 timotimo yes, that's known. no reason to worry
10:02 ivanoff in attributes.t  I have an array @y=1,2,3; Should I use ok or is_deeply?
10:04 timotimo r: my $foo = 10; say nqp::getattr($foo.VAR, $foo.VAR.WHAT, '$!value');
10:04 camelia rakudo b03cc1: OUTPUT«10␤»
10:04 timotimo r: my $foo = 10; say nqp::getattr($foo.VAR, $foo.VAR.WHAT, '$!descriptor');
10:04 camelia rakudo b03cc1: OUTPUT«(Mu)␤»
10:04 timotimo i don't understand :(
10:05 timotimo r: my $foo = 10; say $foo.VAR.WHAT
10:05 camelia rakudo b03cc1: OUTPUT«(Scalar)␤»
10:05 timotimo in bootstrap.nqp i see that scalar has a $!descriptor and i can't imagine why it would run around with an unset descriptor
10:08 daxim joined #perl6
10:09 timotimo r: my $foo = 10; say nqp::getattr($foo.VAR.var, $foo.VAR.var.WHAT, '$!descriptor');
10:09 camelia rakudo b03cc1: OUTPUT«No such method 'var' for invocant of type 'Scalar'␤  in block  at /tmp/SYhsk18rmr:1␤␤»
10:10 rindolf joined #perl6
10:12 isBEKaml joined #perl6
10:14 timotimo do i even get from Scalar to Variable?
10:14 timotimo hm, i suppose i have to ask instead: do i get from PseudoStash to Variable.
10:14 timotimo or must i make the Variable set the "dynamic" value on the Scalar that gets created when values are assigned to it?
10:15 * moritz has no idea where Variable comes from at run time
10:16 timotimo ah, i'm silly. i just need to add a method dynamic on Scalar that asks $!descriptor... i guess?
10:16 [Sno] joined #perl6
10:18 FROGGS r: my @y = 0, 1,2; use Test; is @y, ^3, "fits"; is @y, ^4, "ohh" # <--- ivanoff
10:18 camelia rakudo b03cc1: OUTPUT«ok 1 - fits␤not ok 2 - ohh␤#      got: '0 1 2'␤# expected: '0 1 2 3'␤»
10:19 FROGGS meh
10:19 FROGGS local wifi--
10:20 timotimo yeeeaaaah!
10:21 timotimo now OUTER:: will complain if you access something that's not marked is dynamic
10:22 timotimo i should run spectests on that to see if any code wrongly uses OUTER but not is dynamic.
10:23 moritz what? I thought 'is dynamic' was required for CALLER::, not for OUTER::
10:24 timotimo yes. typo.
10:25 moritz good :-)
10:26 timotimo is anything other than $_ implicitly dynamic?
10:27 timotimo i don't think so.
10:28 moritz maybe $/?
10:28 moritz I can never remember how that's scoped
10:28 timotimo it's scoped "wild"
10:30 moritz r: say 42 + 2
10:30 camelia rakudo b03cc1: OUTPUT«44␤»
10:30 timotimo "($_, $! and $/ are always dynamic, as are any variables whose declared names contain a * twigil.)"
10:32 not_gerd joined #perl6
10:32 lizmat joined #perl6
10:33 ilyuhan joined #perl6
10:33 leont joined #perl6
10:34 not_gerd assuming someone's in the room with jnthn and/or diakopter, could that someone ask them about https://gist.github.com/gerdr/6204335
10:34 not_gerd (moarvm naming convention)
10:35 Rotwang joined #perl6
10:36 ivanoff joined #perl6
10:37 masak "The selection of a particular symbol should be left to Larry Wall, though I personally hope it isn't chartreuse because that particular color doesn't go well with most website color schemes. ;-)"
10:37 FROGGS r: my @y = 0, 1,2; use Test; is @y, ^3, "fits"; is @y, ^4, "ohh" # <--- ivanoff
10:37 masak http://www.perl6.org/archive/rfc/343.html
10:37 camelia rakudo b03cc1: OUTPUT«ok 1 - fits␤not ok 2 - ohh␤#      got: '0 1 2'␤# expected: '0 1 2 3'␤»
10:37 masak with hindsight, that's kinda hilarious. :)
10:37 FROGGS ivanoff: is() is bettor for that
10:38 * tadzik has sockets for JVM
10:42 ivanoff FROGGS++
10:42 masak ivanoff++ # first ++ :)
10:43 daxim joined #perl6
10:50 dalek roast: 9410964 | ivanoff++ | S12-class/attributes.t:
10:50 dalek roast: @x and @.x in class methods treated differently
10:50 dalek roast: review: https://github.com/perl6/roast/commit/94109641f1
10:50 dalek panda: 55b85ce | tadzik++ | / (4 files):
10:50 dalek panda: Fix deps
10:50 dalek panda: review: https://github.com/tadzik/panda/commit/55b85cef43
10:50 dalek nqp/jvm-sockets: a35c593 | tadzik++ | src/vm/jvm/ (3 files):
10:50 dalek nqp/jvm-sockets: Initial socket support for JVM, based on io-refactor branch
10:50 dalek nqp/jvm-sockets: review: https://github.com/perl6/nqp/commit/a35c593f04
10:51 dmol joined #perl6
10:53 nugged joined #perl6
11:03 lue joined #perl6
11:04 dalek nqp/jvm-sockets: 7334d94 | tadzik++ | src/vm/jvm/ (2 files):
11:04 dalek nqp/jvm-sockets: Get rid of nqp::closesocket(), nqp::closefh() works perfectly fine. jnthn++
11:04 dalek nqp/jvm-sockets: review: https://github.com/perl6/nqp/commit/7334d948d3
11:06 ivanoff somebody, close #75010 bug '@x and @.x in class methods treated differently', plz
11:06 dmol r: our sub infix:<;>($lhs, $rhs) {}; { say "A"; say "B" }
11:06 camelia rakudo b03cc1: OUTPUT«A␤B␤»
11:07 timotimo just for the record:
11:08 timotimo r: my $y = 93; if 1 { is $CALLER::y, 93 }; this should require $y to be dynamic, yes?
11:08 camelia rakudo b03cc1: OUTPUT«[31m===[0mSORRY![31m===[0m Error while compiling /tmp/wiUY7mwdNDâ�¤Two terms in a rowâ�¤at /tmp/wiUY7mwdND:1â�¤------> [32mCALLER::y, 93 }; this should require $y [33mâ��[31mto be dynamic, yes?[0mâ�¤    expecting any of:â�¤        postfixâ�¤        infix stopperâ�¤        â€¦
11:09 dmol r:  say "A" if 1 + say "B" if 1
11:09 camelia rakudo b03cc1: OUTPUT«[31m===[0mSORRY![31m===[0m Error while compiling /tmp/omeANZOxalâ�¤Confusedâ�¤at /tmp/omeANZOxal:1â�¤------> [32msay "A" if 1 + say "B" [33mâ��[31mif 1[0mâ�¤    expecting any of:â�¤        postfixâ�¤Â»
11:09 timotimo r: ().defined
11:09 camelia rakudo b03cc1:  ( no output )
11:09 timotimo r: ok ().defined, "() is defined";
11:09 camelia rakudo b03cc1: OUTPUT«[31m===[0mSORRY![31m===[0m Error while compiling /tmp/RIDJKIacreâ�¤Undeclared routine:â�¤    ok used at line 1â�¤â�¤Â»
11:10 timotimo r: use Test; ok ().defined, "() is defined";
11:10 camelia rakudo b03cc1: OUTPUT«ok 1 - () is defined␤»
11:10 timotimo segfaults locally now :|
11:11 timotimo oh, wrong line
11:11 nwc10 ooh, upstairs in my room I (almost) have network!
11:12 nwc10 mmm, sometimes.
11:12 dmol r: say "A" if 1 + say "B" if 1
11:12 camelia rakudo b03cc1: OUTPUT«[31m===[0mSORRY![31m===[0m Error while compiling /tmp/4uNaot9bxvâ�¤Confusedâ�¤at /tmp/4uNaot9bxv:1â�¤------> [32msay "A" if 1 + say "B" [33mâ��[31mif 1[0mâ�¤    expecting any of:â�¤        postfixâ�¤Â»
11:12 dmol std:  say "A" if 1 + say "B" if 1
11:12 camelia std c2215f0: OUTPUT«[31m===[0mSORRY![31m===[0mâ�¤Confused at /tmp/vgUNIdM7NK line 1:â�¤------> [32msay "A" if 1 + say "B" [33mâ��[31mif 1[0mâ�¤    expecting any of:â�¤   feed_separatorâ�¤ statement_mod_loopâ�¤Parse failedâ�¤FAILED 00:00 43mâ�¤Â»
11:12 timotimo r: use Test; subset MyInt of Int where True; my MyInt $x = 5; lives_ok { $x = Nil }, "a";
11:12 camelia rakudo b03cc1: OUTPUT«ok 1 - a␤»
11:13 FROGGS r: say "a" if 1 for 1 # that is all you can do
11:13 camelia rakudo b03cc1: OUTPUT«a␤»
11:13 pmurias joined #perl6
11:13 FROGGS r: say "a" if 1 + say "b" for 1 # well, and this
11:13 camelia rakudo b03cc1: OUTPUT«b␤a␤»
11:13 dalek rakudo-js: 87a3a5c | (Pawel Murias)++ | src/QAST/Compiler/JavaScript.nqp:
11:13 dalek rakudo-js: Fix the scan op.
11:13 dalek rakudo-js: review: https://github.com/pmurias/​rakudo-js/commit/87a3a5ce7d
11:13 dalek rakudo-js: 4f03023 | (Pawel Murias)++ | / (2 files):
11:13 dalek rakudo-js: Implement (...) in regexes. Pass test 45.
11:13 dalek rakudo-js: review: https://github.com/pmurias/​rakudo-js/commit/4f03023c7c
11:18 pmurias if I have libicu-dev installed and I do perl Configure.PL --gen-parrot for nqp, I will get a icu enabled nqp?
11:19 arnsholt pmurias: Should figure it out automatically, yeah
11:19 panchiniak_ left #perl6
11:20 arnsholt But it has to find icu-config (or something similarly named) IIRC
11:20 pmurias I have something like that
11:21 woolfy joined #perl6
11:21 arnsholt Then it should find it
11:21 pmurias nqp should raise an error or something when icu is not present
11:22 daxim joined #perl6
11:25 nugged_ joined #perl6
11:26 jnthn nwc10: network just got lots better in here, due to a magical cable
11:26 itz joined #perl6
11:26 dmol joined #perl6
11:26 Rotwang joined #perl6
11:27 nwc10 Ooh
11:27 masak yeah, this is better than in my hotel room.
11:27 masak hotel++
11:27 nwc10 oh, what do you know - my teabags were in my rucksac all along
11:28 daxim joined #perl6
11:28 masak all teabag-theft hypotheses can be discarded.
11:30 [Sno] joined #perl6
11:30 ivanoff joined #perl6
11:32 * masak just noticed that the #python /topic begins with the text "NO LOL | NO PROJECT EULER"
11:32 itz joined #perl6
11:32 jnthn lol
11:33 masak because, you know, laughter and problem-solving are counter to our goals in some way.
11:34 lizmat joined #perl6
11:34 jnthn lolz i maded a fibonaci solutionz!
11:34 masak :P
11:34 ilyuhan joined #perl6
11:35 masak wow -- I asked about it on-channel, and got this back:
11:35 masak <infobob> #python is a no-LOL zone.
11:35 leont joined #perl6
11:35 masak someone else explained that it means "no chatspeak".
11:36 masak a third user said "lol" and was asked not to be an asshat.
11:36 masak I hope #perl6 never grows into something that asks users not to speak in a certain way.
11:37 pmurias don't we ask people not to paste large quantities of text?
11:37 cono can anyone run the following test? perl6 t/spec/S32-io/IO-Socket-INET.t (interesting in linux platform)
11:39 masak pmurias: yes, but that's more about effective, non-annoying use of IRC.
11:39 itz as a "n00b" present at the hackathon I was going to try low hanging fruit and a test for https://rt.perl.org/rt3/Publ​ic/Bug/Display.html?id=78258 (if noone else is and I can get this damm wifi to work)
11:39 isBEKaml joined #perl6
11:39 woolfy joined #perl6
11:39 leont What's the perl6 equivalent of -e $file nowadays?
11:40 jnthn leont: $file.IO.e
11:40 lizmat cono: 7 failures ?
11:40 cono lizmat: yeah, I got a fix for it
11:40 lizmat ah, that would be brilliant!
11:40 cono great! logging the bug! :)
11:40 lizmat what's the fix?
11:41 cono http://paste.org.ru/?h2y4l0
11:42 cono There was a baground sleep which didn'g allow perl's qqx to release
11:42 lizmat running a spectest now
11:42 leont jnthn: thanks
11:42 lizmat after that I will try it, cono!
11:42 lizmat looks good
11:42 cono should I log a bug? or just a make pull request?
11:43 leont What was the shortcut for $self.foo()? .foo()? foo()?
11:43 masak cono: looking.
11:43 sromanov_ joined #perl6
11:43 cono masak: ty
11:43 itz joined #perl6
11:44 Vasyl joined #perl6
11:45 sromanov_ cono: hi!
11:45 cono sromanov_: hey
11:46 sromanov_ raise a hand!
11:49 dmol r: my ($f, $o, @a); @a = 2, 3, 4; :($f, $o, $) := @a; say $f.perl
11:49 camelia rakudo b03cc1: OUTPUT«2␤»
11:54 dmol r: $ = "a"; say $;
11:54 camelia rakudo b03cc1: OUTPUT«[31m===[0mSORRY![31m===[0m Error while compiling /tmp/h8M3z5H2Nzâ�¤Non-declarative sigil is missing its nameâ�¤at /tmp/h8M3z5H2Nz:1â�¤------> [32m<BOL>[33mâ��[31m$ = "a"; say $;[0mâ�¤    expecting any of:â�¤        statement listâ�¤        prefix or termâ�¤        prefix o…
11:54 cono if you are going to apply this patch, please remove the commented lines and check my engRish (blush)
11:54 cono masak: if you are going to apply this patch, please remove the commented lines and check my engRish (blush)
11:54 dalek roast: b26fad7 | masak++ | S32-io/IO-Socket-INET.sh:
11:54 dalek roast: kill stray IO-Socket-INET.sh process better
11:54 dalek roast:
11:54 dalek roast: cono++ for patch.
11:54 dalek roast: review: https://github.com/perl6/roast/commit/b26fad7b82
11:54 berekuk joined #perl6
11:55 masak cono: oh! was gonna ask about that commented line.
11:55 masak cono: I'll just remove it now.
11:55 cono ty
11:55 FROGGS leont: .foo()
11:55 FROGGS err, no, that would be $_.foo()
11:56 dalek roast: 547c385 | masak++ | S32-io/IO-Socket-INET.sh:
11:56 dalek roast: remove some stray comments
11:56 dalek roast: review: https://github.com/perl6/roast/commit/547c3855f2
11:56 masak FROGGS: those mean the same.
11:57 masak oh, that was your point. I see.
11:57 ruz :($a,$b,$) := @a;
11:57 FROGGS masak: true
11:57 ruz what does above do?
11:57 PacoLinux joined #perl6
11:57 FROGGS leont: I'm not sure that there is a shortcut for self.foo()
11:58 sromanov_ r: say "Hi Kiev!"
11:58 camelia rakudo b03cc1: OUTPUT«Hi Kiev!␤»
11:59 masak rn: my @a = <a b c>; :($a, $b, $) := @a; say $a, $b
11:59 camelia rakudo b03cc1: OUTPUT«[31m===[0mSORRY![31m===[0m Error while compiling /tmp/qf4ZPZT19Hâ�¤Variable '$a' is not declared. Did you mean '@a'?â�¤at /tmp/qf4ZPZT19H:1â�¤------> [32m@a = <a b c>; :($a, $b, $) := @a; say $a[33mâ��[31m, $b[0mâ�¤    expecting any of:â�¤        postfixâ�¤Â»
11:59 camelia ..niecza v24-88-g1f87209: OUTPUT«[31m===[0mSORRY![31m===[0m��Action method fakesignature not yet implemented at /tmp/630tsyovPK line 1:�------> [32mmy @a = <a b c>; :($a, $b, $[33m�[31m) := @a; say $a, $b[0m��Action method sigterm not yet implemented at /tmp/630tsyovPK line 1:�---…
11:59 masak ruz: it dies, apparently.
11:59 ivanoff I try to chose bug to test.
11:59 ivanoff How to define test file for my tests?
11:59 FROGGS well, :( ... ) will result in a signature
12:00 masak r: my @a = <a b c>; my $a; my $b; :($a, $b, $) := @a; say $a, $b
12:00 camelia rakudo b03cc1: OUTPUT«ab␤»
12:00 masak ruz: seems it works if you predeclare the variables.
12:00 masak r: my @a = <a b c>; my $a; my $b; :($a, $b, $) := @a; say $a; say $b
12:00 camelia rakudo b03cc1: OUTPUT«a␤b␤»
12:01 ruz masak: I'm wondering whst it does :)
12:01 jnthn leont: $.foo(...) is like $(self.foo)
12:01 FROGGS r: my @a = <a b c>; my ($a, $b, $) := @a; say $a, $b # same, without the throw away-signature
12:01 camelia rakudo b03cc1: OUTPUT«ab␤»
12:01 jnthn uh, like $(self.foo(...)) I meant
12:01 masak ruz: it assigns the values of @a into the variables in that signature.
12:02 ivanoff How to define  *.t  file for tests?
12:02 masak ruz: hm, not assigns. binds.
12:02 FROGGS ahh, jnthn++
12:02 masak r: my @a = <a b c>; my $a; my $b; :($a, $b, $) := @a; say $a; @a[0] = "HAHAHA DISREGARD THAT"; say $a
12:02 camelia rakudo b03cc1: OUTPUT«a␤a␤»
12:02 ruz masak: ok, binding, but $ without name?
12:02 FROGGS ivanoff: can you find a test file that tests something similar?
12:02 masak ruz: yes, '$' means "anonymous scalar".
12:02 masak ruz: in Perl 5 you would do ($a, $b, undef)
12:03 ruz ok
12:03 ruz thanks
12:03 * masak kowtows
12:03 ruz r: my @a = <a b c>; my $a; my $b; :($a, $b) := @a; say $a;
12:03 camelia rakudo b03cc1: OUTPUT«Too many positional parameters passed; got 3 but expected 2␤  in block  at /tmp/z9IsY3J2M1:1␤␤»
12:04 masak hmm... if := does binding, why wasn't my reassignment of @a[0] reflected in $a above?
12:04 masak rakudobug?
12:05 jnthn masak: No, it does binding like signature binding, I think.
12:05 jnthn masak: 'cus the thing on the left is a signature
12:05 cono how to find out what methods do I have in the following PIR object? my $PIO := Q:PIR { %r = root_new ['parrot';'Socket'] };
12:05 cono PIO*
12:06 FROGGS jnthn: btw, http://irclog.perlgeek.de/​perl6/2013-08-10#i_7434211
12:06 ivanoff FROGGS> ok, for example: I try to write test for https://rt.perl.org/rt3/Publ​ic/Bug/Display.html?id=76896
12:06 ivanoff FROGGS> I searched  for Could not find sub
12:07 masak r: my $outer = 5; sub foo { $outer = 42 }; sub bar($inner) { foo; say $inner }; bar($outer)
12:07 camelia rakudo b03cc1: OUTPUT«5␤»
12:07 masak jnthn: ok, I see what you mean.
12:07 jnthn FROGGS: You're thinking it should be :from<Java>
12:07 jnthn ?
12:07 masak jnthn: I think this was discussed on p6l or p6c not long ago.
12:07 ilyuhan joined #perl6
12:07 FROGGS jnthn: yes
12:08 FROGGS ivanoff: I'm looking
12:10 dmol r: my ($f, $o, @a); @a = 2, 3, 4; :($f, $o, $) := @a; say $f
12:10 camelia rakudo b03cc1: OUTPUT«2␤»
12:10 dmol my ($f, $o, @a); @a = 2, 3, 4; :($f, $o, $) := @a; say $f.perl
12:10 ivanoff <FROGGS> : thanx
12:11 nugged joined #perl6
12:12 cono nvm, found
12:14 cono found one more improvement for io-socket, but there is no getsockname in parrot :(
12:15 FROGGS ivanoff: there is nothing that fits... so put it in S06-other/
12:15 cono with the latest masak's commit to spectest: # Looks like you failed 1 tests of 41
12:16 cono there is only one left, but it really timesout
12:16 FROGGS ivanoff: maybe in S06-other/misc.t
12:16 dalek rakudo/nom: 948210e | (Elizabeth Mattijsen)++ | src/core/ (2 files):
12:16 dalek rakudo/nom: Initial implementation of is default(42) on any hash/array
12:16 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/948210e9e4
12:16 PacoLinux joined #perl6
12:17 sromanov_ diakopter: hi, are you online? :)
12:17 cono k, thanks everyone. It was fun! need to go
12:18 cono cu in the evening
12:18 FROGGS cono: see you :o)
12:20 ivanoff FROGGS++
12:20 ivanoff ))
12:20 dalek roast: 2a0f8a5 | (Elizabeth Mattijsen)++ | S02-names/is_default.t:
12:20 dalek roast: Unfudge now passing tests
12:20 dalek roast: review: https://github.com/perl6/roast/commit/2a0f8a5afb
12:20 mdn joined #perl6
12:21 * FROGGS .oO( You should always have a pair of closing parens in your jeans' pocket )
12:21 FROGGS ... just in case
12:22 birdwindupbird joined #perl6
12:23 vovka joined #perl6
12:24 jferrero joined #perl6
12:28 PacoLinux joined #perl6
12:32 FROGGS jnthn: btw: I'm adapting the latest moduleloader :from changes now
12:40 dalek roast: 03e0f30 | ivanoff++ | S06-signature/outside-subroutine.t:
12:40 dalek roast: Signature binding outside of routine calls
12:40 dalek roast: review: https://github.com/perl6/roast/commit/03e0f3038d
12:40 isBEKaml joined #perl6
12:44 moritz r: sub infix:<;>($a, $b) { $a, $b }; my @a = 1; 2; say @a
12:44 camelia rakudo b03cc1: OUTPUT«WARNINGS:␤Useless use of constant integer 2 in sink context (line 1)␤1␤»
12:45 ivanoff RT #82946 -- t/spec/S06-signature/outside-subroutine.t
12:49 ivanoff kindly review RT #82946 -- t/spec/S06-signature/outside-subroutine.t
12:50 ivanoff thanks
12:50 moritz ivanoff: ticket closed
12:50 ivanoff moritz++
12:51 dalek rakudo/nom: 8c1cc2b | moritz++ | t/spectest.data:
12:51 dalek rakudo/nom: run new test file, ivanoff++
12:51 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/8c1cc2b438
12:53 ivanoff kindly review RT #75010 -- t/spec/S12-class/attributes.t
12:54 dalek evalbot: d454513 | (Sergey Romanov)++ | / (2 files):
12:54 dalek evalbot: add nqp-jvm target
12:54 dalek evalbot: review: https://github.com/perl6/evalbot/commit/d454513f82
12:56 moritz ivanoff: closed #75010 too, thank you very much
12:57 ivanoff moritz++ ))
12:59 pmurias jnthn: should I make --target=ast emit  "QAST::Regex(:rxtype(anchor) :subtype(eos))" or "QAST::Regex(:rxtype(anchor),:subtype(eos))"
13:00 masak ivanoff++ # causing RT tickets to be closed!
13:00 masak pmurias: the latter has the advantage that it would roundtrip better on a contemporary rakudo.
13:01 masak r: sub foo(*%) {}; foo(:brave :foolish)
13:01 camelia rakudo b03cc1:  ( no output )
13:01 masak oh... we do parse that now.
13:01 jnthn pmurias: Hm, how do we do it in other places? Or don't we? :)
13:02 pmurias If I saw it somewhere else I wouldn't be asking ;)
13:02 pmurias I think we avoid using commas
13:03 FROGGS /home/froggs/dev/nqp/src/QRe​gex/P5Regex/Actions.nqp:191:        make QAST::Regex.new(:rxtype<subrule>, :subtype<zerowidth>,
13:03 FROGGS /home/froggs/dev/nqp/src/QRe​gex/P5Regex/Actions.nqp:197:        make QAST::Regex.new( :rxtype<anchor>, :subtype<eos>, :node($/) );
13:04 FROGGS there are commas usually
13:04 FROGGS or do you mean something else?
13:04 jnthn It's really just a dump format for debugging, not something that we ever try to reconstruct the tree from.
13:04 jnthn So could go either way
13:04 FROGGS ahh
13:05 FROGGS I see
13:07 celesta joined #perl6
13:07 celesta hello #perl6
13:07 yoleaux 10 Aug 2013 07:04Z <FROGGS> celesta: if you would write your compiler in nqp, yuo would have parrot, JVM and MoarVM as backends...
13:07 preflex yoleaux: you have 2 new messages. '/msg preflex messages' to read them.
13:09 dalek roast: d16c3af | (Timo Paulssen)++ | S02-names/pseudo.t:
13:09 dalek roast: require an is dynamic if you're gonna use CALLER.
13:09 dalek roast: review: https://github.com/perl6/roast/commit/d16c3af215
13:09 masak celesta! \o/
13:09 pmurias celesta: re writing your compiler with parrot, the best way to write a compiler that emits code that can be used from a perl6 program would be to target QAST
13:09 timotimo pullrequest 190 is live: require is dynamic for CALLER.
13:10 celesta pmurias: thank you. i will ty it
13:10 ivanoff r: (say "A" if 1) + 10
13:10 camelia rakudo b03cc1: OUTPUT«A␤»
13:11 pmurias $ matches if the current character is either a newline character or we are at the end of the string and the previous character is not a string
13:11 nugged joined #perl6
13:11 pmurias celesta: which language do you want to implement?
13:11 timotimo is not a string?
13:11 dmol r: @a = 1; say +@a;
13:11 camelia rakudo b03cc1: OUTPUT«[31m===[0mSORRY![31m===[0m Error while compiling /tmp/dyEWbMYO6fâ�¤Variable '@a' is not declaredâ�¤at /tmp/dyEWbMYO6f:1â�¤------> [32m@a[33mâ��[31m = 1; say +@a;[0mâ�¤    expecting any of:â�¤        postfixâ�¤Â»
13:11 ivanoff r: say "A" if 1 + say "B" if 1
13:11 camelia rakudo b03cc1: OUTPUT«[31m===[0mSORRY![31m===[0m Error while compiling /tmp/kuuEvHFNiSâ�¤Confusedâ�¤at /tmp/kuuEvHFNiS:1â�¤------> [32msay "A" if 1 + say "B" [33mâ��[31mif 1[0mâ�¤    expecting any of:â�¤        postfixâ�¤Â»
13:11 dmol r: my @a = 1; say +@a;
13:11 camelia rakudo b03cc1: OUTPUT«1␤»
13:12 masak r: my @a = "fly, you fools!"; say +@a
13:12 camelia rakudo b03cc1: OUTPUT«1␤»
13:12 celesta pmurias: i'm writing a custom language for interactive fiction
13:12 masak r: say (say "A" if 1) + (say "B" if 1)
13:12 camelia rakudo b03cc1: OUTPUT«A␤B␤2␤»
13:13 masak ivanoff: ^
13:13 itz am I being stupid or is https://rt.perl.org/rt3/Publi​c/Bug/Display.html?id=117951 *not* actually fixed?
13:14 moritz itz: I'm taking a look...
13:14 jnthn r: say say $%*ENV
13:14 camelia rakudo 8c1cc2: OUTPUT«("MANPATH" => "/home/p6eval/perl5/perlbre​w/perls/perl-5.14.1/man:", "PERLBREW_VERSION" => "0.42", "PERLBREW_PERL" => "perl-5.14.1", "SHELL" => "/bin/bash", "TERM" => "screen", "USER" => "p6eval", "LS_COLORS" => "rs=0:di=01;34:ln=01;36:mh=0​0:pi=40;33:so=01;35:do=01;…
13:14 dmol moritz, ivanoff: http://bpaste.net/show/121909/
13:14 moritz r: say $%*ENV
13:15 camelia rakudo 8c1cc2: OUTPUT«("MANPATH" => "/home/p6eval/perl5/perlbre​w/perls/perl-5.14.1/man:", "PERLBREW_VERSION" => "0.42", "PERLBREW_PERL" => "perl-5.14.1", "SHELL" => "/bin/bash", "TERM" => "screen", "USER" => "p6eval", "LS_COLORS" => "rs=0:di=01;34:ln=01;36:mh=0​0:pi=40;33:so=01;35:do=01;…
13:15 moritz itz: seems to work
13:15 itz I guess I'm being stupid :)
13:16 moritz dmol: looks good
13:16 moritz r: my $c = 0; ++$c for $%*ENV; say $c
13:16 camelia rakudo 8c1cc2: OUTPUT«1␤»
13:16 moritz dmol: what's your github user name?
13:17 dmol basiliscos
13:17 dmol moritz: basiliscos
13:19 pmurias timotimo: what I meant to ask is, do I correctly assume that $ matches if the current character is either a newline character or we are at the end of the string and the last character is not a newline?
13:19 moritz dmol: you can now push to perl6/roast. Welcome!
13:19 timotimo r: say "foo\n\n" ~~ /"foo" \n $/
13:19 camelia rakudo 8c1cc2: OUTPUT«Nil␤»
13:20 timotimo apparently
13:20 moritz pmurias: no, that's wrong, $ is always zero-width in Perl 6
13:21 dmol moritz: no, p6 hasn't yet been installed on my box :)
13:22 moritz r: say "foo\n" ~~ /foo$/
13:22 camelia rakudo 8c1cc2: OUTPUT«Nil␤»
13:22 pmurias r: say "foo" ~~ /foo/
13:22 camelia rakudo 8c1cc2: OUTPUT«「foo」␤␤»
13:22 moritz r: say "foo\n" ~~ /foo\n$/
13:22 camelia rakudo 8c1cc2: OUTPUT«「foo␤」␤␤»
13:23 isBEKaml r: say "foo\n" ~~ /foo$$/
13:23 camelia rakudo 8c1cc2: OUTPUT«「foo」␤␤»
13:27 not_gerd left #perl6
13:27 pmurias moritz: thanks, I was confusing $$ and $
13:28 crab2313 joined #perl6
13:33 dmol moritz++
13:34 moritz pmurias: yes, $$ matches end-of-line or end-of-string
13:37 dalek roast: 1fac507 | ivanoff++ | S06-operator-overloading/semicolon.t:
13:37 dalek roast: A user-declared infix:<;> clashes with statement stopper ';' in Rakudo
13:37 dalek roast: review: https://github.com/perl6/roast/commit/1fac507293
13:37 nugged joined #perl6
13:40 ivanoff kindly review RT #88704 -- t/spec/S06-operator-overloading/semicolon.t
13:41 dalek nqp: 6dea545 | (Pawel Murias)++ | src/QAST/Regex.nqp:
13:41 dalek nqp: Mention the subtype of QAST::Regex during --target=ast.
13:41 dalek nqp: review: https://github.com/perl6/nqp/commit/6dea545feb
13:41 dmol r: my ($a, $b, $c); $c = 42; [=] $a, $b, $c; say ($a, $b, $c).join("|")
13:41 camelia rakudo 8c1cc2: OUTPUT«[31m===[0mSORRY![31m===[0m Error while compiling /tmp/h5Y7OdzWP7�Cannot reduce with = because list assignment operators are too fiddly�at /tmp/h5Y7OdzWP7:1�------> [32mmy ($a, $b, $c); $c = 42; [=][33m�[31m $a, $b, $c; say ($a, $b, $c).join("|")[0m�»…
13:43 lizmat timotimo: did you spectest your pull request ?
13:43 dalek rakudo/nom: e5d98a6 | moritz++ | t/spectest.data:
13:43 dalek rakudo/nom: run S06-operator-overloading/semicolon.t, ivanoff++
13:43 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/e5d98a668b
13:44 moritz ivanoff++ # another ticket closed
13:44 dalek rakudo/nom: 99993ee | (Timo Paulssen)++ | src/ (4 files):
13:44 dalek rakudo/nom: support for "is dynamic" and CALLER:: whining.
13:44 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/99993eed62
13:44 dalek rakudo/nom: ca2ec62 | (Timo Paulssen)++ | src/core/PseudoStash.pm:
13:44 dalek rakudo/nom: $_, $/ and $! are implicitly dynamic.
13:44 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/ca2ec62d83
13:44 dalek rakudo/nom: 42a37a0 | lizmat++ | src/ (4 files):
13:44 dalek rakudo/nom: Merge pull request #190 from timo/require_is_dynamic
13:44 dalek rakudo/nom:
13:44 dalek rakudo/nom: Require "is dynamic"
13:44 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/42a37a0f47
13:47 ivanoff dalek++
13:47 ivanoff moritz++
13:47 dmol r: my ($a, $b, $c); $c = 42; [+] $a, $b, $c; say ($a, $b, $c).join("|")
13:47 camelia rakudo 8c1cc2: OUTPUT«use of uninitialized value of type Any in numeric context  in block  at /tmp/IVOG6WYlEi:1␤␤use of uninitialized value of type Any in numeric context  in block  at /tmp/IVOG6WYlEi:1␤␤use of uninitialized value of type Any in string context  in block  at /tmp/IVOG6WY…
13:47 dmol r: my ($a, $b, $c); $c = 42; [-] $a, $b, $c; say ($a, $b, $c).join("|")
13:48 camelia rakudo 8c1cc2: OUTPUT«use of uninitialized value of type Any in numeric context  in block  at /tmp/iXxNrnEjq8:1␤␤use of uninitialized value of type Any in numeric context  in block  at /tmp/iXxNrnEjq8:1␤␤use of uninitialized value of type Any in string context  in block  at /tmp/iXxNrnE…
13:48 dmol r: my ($a, $b, $c); $c = 42; [.perl] $a, $b, $c; say ($a, $b, $c).join("|")
13:48 camelia rakudo 8c1cc2: OUTPUT«[31m===[0mSORRY![31m===[0m Error while compiling /tmp/xOlH37BQnBâ�¤Two terms in a rowâ�¤at /tmp/xOlH37BQnB:1â�¤------> [32mmy ($a, $b, $c); $c = 42; [.perl] [33mâ��[31m$a, $b, $c; say ($a, $b, $c).join("|")[0mâ�¤    expecting any of:â�¤        postfixâ�¤        infix sto…
13:48 dalek roast: 8abf073 | ivanoff++ | S06-operator-overloading/semicolon.t:
13:48 dalek roast: add RT number
13:48 dalek roast: review: https://github.com/perl6/roast/commit/8abf073a0b
13:48 colomon joined #perl6
13:50 masak timotimo: wow, you commit has four nines :)
13:50 dmol r: my ($a, $b, $c); $c = 42; [++] $a, $b, $c; say ($a, $b, $c).join("|")
13:50 camelia rakudo 8c1cc2: OUTPUT«[31m===[0mSORRY![31m===[0m Error while compiling /tmp/aXX7uMb7UF�Preceding context expects a term, but found infix + instead�at /tmp/aXX7uMb7UF:1�------> [32mmy ($a, $b, $c); $c = 42; [++[33m�[31m] $a, $b, $c; say ($a, $b, $c).join("|")[0m�»
13:51 masak dmol: that does not make sense.
13:51 masak dmol: did you mean '($a, $b, $c)>>++' ?
13:51 moritz masak: and four nines are a high quality indicator, right? :-)
13:51 masak moritz: yes, that's what I was thinking.
13:51 masak moritz: I'm not sure it still does in hex, though :P
13:51 masak moritz: should be four effs.
13:52 moritz r: say 1 + 2 + 3
13:52 camelia rakudo 8c1cc2: OUTPUT«6␤»
13:52 moritz r: say [+] 1, 2, 3
13:52 camelia rakudo 8c1cc2: OUTPUT«6␤»
13:52 moritz r: say [+] (1..100)
13:52 camelia rakudo 8c1cc2: OUTPUT«5050␤»
13:52 * leont just had his first pass from his first perl 6 module o/
13:53 isBEKaml moritz: 99.99?? :-)
13:53 celesta leont: yippie!
13:54 tadzik leont++
13:55 ilyuhan joined #perl6
13:55 Ben_Goldberg joined #perl6
13:56 dmol r: [=] 1,2
13:56 camelia rakudo 8c1cc2: OUTPUT«[31m===[0mSORRY![31m===[0m Error while compiling /tmp/58oPBf69lB�Cannot reduce with = because list assignment operators are too fiddly�at /tmp/58oPBf69lB:1�------> [32m[=][33m�[31m 1,2[0m�»
13:57 dalek roast: 5765af9 | (Steve Mynott)++ | S02-magicals/ (2 files):
13:57 dalek roast: import of spectest for RT #78258
13:57 dalek roast: review: https://github.com/perl6/roast/commit/5765af9909
13:57 moritz r: try eval '[=] 1, 2'
13:57 camelia rakudo 8c1cc2:  ( no output )
13:57 moritz r: try eval '[=] 1, 2'; say $!.perl
13:57 camelia rakudo 8c1cc2: OUTPUT«X::Comp::AdHoc.new(filename => "eval_0", line => 1, column => Any, modules => Array.new(), is-compile-time => Bool::True, pre => "[=]", post => " 1, 2", highexpect => Array.new(), payload => "Cannot reduce with = because list assignment operators are too fiddly")␤»…
13:58 dmol moritz: is there differense, that operators are vars or literals for [operator] ?
13:59 moritz r: 1 = 2; # for dmol
13:59 camelia rakudo 8c1cc2: OUTPUT«Cannot modify an immutable value␤  in block  at /tmp/AJLAUtclqk:1␤␤»
13:59 moritz dmol: if you give it literals, it would die at runtime anyway
14:00 moritz dmol: so for this particular ticket, it's better to use variables in the tests
14:00 lizmat timotimo: some spectest failures :-(
14:00 timotimo lizmat: can you tell me which?
14:01 lizmat t/spec/S02-names/pseudo.t
14:01 timotimo huh. i fixed a test there
14:01 dalek roast: 5ab54fb | (Steve Mynott)++ | S05-transliteration/79778.t:
14:01 dalek roast: import of spectest for RT #79778
14:01 dalek roast: review: https://github.com/perl6/roast/commit/5ab54fb64e
14:02 masak itz++ itz++
14:02 timotimo lizmat: can you be more exact perchance? that whole test passes no-prob on my machine
14:02 itz hopefully the first of many :)
14:02 masak \o/
14:03 dalek roast: 3d6ab5d | masak++ | S32-io/IO-Socket-INET.sh:
14:03 dalek roast: kill stray IO-Socket-INET.sh process better
14:03 dalek roast:
14:03 dalek roast: cono++ for patch.
14:03 dalek roast: review: https://github.com/perl6/roast/commit/3d6ab5d64c
14:03 dalek roast: dc541cd | masak++ | S32-io/IO-Socket-INET.sh:
14:03 dalek roast: remove some stray comments
14:03 dalek roast: review: https://github.com/perl6/roast/commit/dc541cda8d
14:03 dalek roast: 2aae384 | (Elizabeth Mattijsen)++ | S02-names/is_default.t:
14:03 dalek roast: Unfudge now passing tests
14:03 dalek roast: review: https://github.com/perl6/roast/commit/2aae384220
14:03 dalek roast: 50a3a42 | (Elizabeth Mattijsen)++ | S02-names/caller.t:
14:03 dalek roast: Unfudge passing test
14:03 dalek roast: review: https://github.com/perl6/roast/commit/50a3a42d50
14:03 dmol r: eval('my ($a, $b); [+] $a, $b;');
14:03 camelia rakudo 8c1cc2: OUTPUT«use of uninitialized value of type Any in numeric context  in block  at eval_0:1␤␤use of uninitialized value of type Any in numeric context  in block  at eval_0:1␤␤»
14:04 tadzik Nominal type check failed for parameter '$got'
14:04 tadzik that has to be the strangest error I got recently :)
14:04 tadzik in a my $s = nqp::socket() line
14:04 timotimo yeah, you need to Mu that
14:04 masak tadzik: the strangest error you '$got' recently :P
14:04 dmol r: eval 'my ($a, $b); @c = [+] $a, $b;'
14:04 nugged_ joined #perl6
14:04 camelia rakudo 8c1cc2: OUTPUT«[31m===[0mSORRY![31m===[0m Error while compiling eval_0â�¤Variable '@c' is not declaredâ�¤at eval_0:1â�¤------> [32mmy ($a, $b); @c[33mâ��[31m = [+] $a, $b;[0mâ�¤    expecting any of:â�¤        postfixâ�¤Â»
14:05 moritz great that now 'Mu' is a verb
14:05 dmol eval 'my ($a, $b); my @c = [+] $a, $b;'
14:05 lizmat timotimo: not ok 116 - ::("CALLER")::<$*foo> works# TODO not entirely sure these make sense...
14:05 lizmat #      got: ''
14:05 lizmat # expected: '92'
14:05 lizmat You're trying to access $y through CALLER, but it is not dynamic.
14:05 moritz dmol: forgto the 'r: ' at the front
14:05 dmol r: eval 'my ($a, $b); @c = [+] $a, $b;'
14:05 moritz *forgot
14:05 camelia rakudo 8c1cc2: OUTPUT«[31m===[0mSORRY![31m===[0m Error while compiling eval_0â�¤Variable '@c' is not declaredâ�¤at eval_0:1â�¤------> [32mmy ($a, $b); @c[33mâ��[31m = [+] $a, $b;[0mâ�¤    expecting any of:â�¤        postfixâ�¤Â»
14:05 lizmat probably a faulty test
14:05 BabsSeed Has anyone done twitter stream with perl6 yet?
14:05 dmol r: eval 'my ($a, $b); my @c = [+] $a, $b;'
14:06 camelia rakudo 8c1cc2: OUTPUT«use of uninitialized value of type Any in numeric context  in block  at eval_0:1␤␤use of uninitialized value of type Any in numeric context  in block  at eval_0:1␤␤»
14:06 masak BabsSeed: what does that even mean?
14:06 ivanoff r: eval{ my $a = 10/0 }; print $0;
14:06 camelia rakudo 8c1cc2: OUTPUT«===SORRY!===␤CHECK FAILED:␤Calling proto of 'eval' will never work with no arguments (lines 1, 1)␤    Expected: :(, )␤»
14:06 masak BabsSeed: you mean like https://twitter.com/perl6 ?
14:06 moritz ivanoff: it's 'try' for catching exceptions
14:06 BabsSeed masak: No I mean, has anyone implemented Twitter stream API in perl6 for making Twitter bots/clients
14:06 moritz ivanoff: and 'eval' for compiling and running code
14:07 ivanoff moritz++
14:07 ivanoff thanx!
14:07 moritz BabsSeed: iirc [Coke] had some twitter bot written in Perl 6 some time ago
14:07 dmol r: eval 'my ($a, $b); '
14:07 camelia rakudo 8c1cc2:  ( no output )
14:08 lue joined #perl6
14:08 dmol r: eval 'my ($a, $b); [+] $a, $b;'
14:08 camelia rakudo 8c1cc2: OUTPUT«use of uninitialized value of type Any in numeric context  in block  at eval_0:1␤␤use of uninitialized value of type Any in numeric context  in block  at eval_0:1␤␤»
14:08 BabsSeed moritz: Thanks, I'm planning to do that at some point, have decided Sept/Oct/Nov is p6 time for me.
14:08 dmol r: my ($a, $b); my @c = [+] $a, $b;
14:08 camelia rakudo 8c1cc2: OUTPUT«use of uninitialized value of type Any in numeric context  in block  at /tmp/ZJ0IOYJiBm:1␤␤use of uninitialized value of type Any in numeric context  in block  at /tmp/ZJ0IOYJiBm:1␤␤»
14:09 leont How do I query if a variable is a codeblock?
14:09 masak leont: $v ~~ Code
14:14 timotimo and ... gone
14:14 dalek roast: 9ee04a8 | (Timo Paulssen)++ | S02-names/pseudo.t:
14:14 dalek roast: require an is dynamic if you're gonna use CALLER.
14:14 dalek roast: review: https://github.com/perl6/roast/commit/9ee04a8b08
14:15 timotimo i was *sure* i had pushed this half an hour ago or something
14:16 pnu nice.. rakudo-jvm compiles on a 2X heroku instance. took about 30 minutes.
14:16 root____4 joined #perl6
14:18 JQK joined #perl6
14:20 timotimo cool! :)
14:20 pnu my next step is to create a buildpack, and support scripts to vendor pre-built binaries to a s3 bucket etc.
14:20 ajr joined #perl6
14:20 PacoLinux joined #perl6
14:21 PacoLinux joined #perl6
14:21 lizmat joined #perl6
14:21 timotimo lizmat: i was sure i had pushed that commit to roast before. now it's clean, though
14:22 ivanoff joined #perl6
14:22 lizmat we had a power outage at the hackahon for ~ 10 minutes
14:22 tadzik but you probably want to theck for Callable
14:22 timotimo a bit weird that CALLER would refer to the outer block of an if statement, though. but if you're in a sub and you know you're going to use CALLER, might as well save it away in a variable before doing any control flowing
14:22 dmol joined #perl6
14:23 dmol r: my ($a, $b) = (1,2); my @c = [+] $a, $b;
14:23 camelia rakudo 42a37a:  ( no output )
14:23 itz joined #perl6
14:24 dmol r: my ($a, $b) = (1,2); my @c = [=] $a, $b;
14:24 camelia rakudo 42a37a: OUTPUT«[31m===[0mSORRY![31m===[0m Error while compiling /tmp/SKw4NUeCxQ�Cannot reduce with = because list assignment operators are too fiddly�at /tmp/SKw4NUeCxQ:1�------> [32mmy ($a, $b) = (1,2); my @c = [=][33m�[31m $a, $b;[0m�»
14:25 dmol r: eval 'my ($a, $b) = (1,2); my @c = [+] $a, $b;';
14:25 camelia rakudo 42a37a:  ( no output )
14:25 leont joined #perl6
14:25 nugged joined #perl6
14:25 dmol r: eval 'my ($a, $b) = (1,2); my @c = [=] $a, $b;';
14:25 camelia rakudo 42a37a: OUTPUT«[31m===[0mSORRY![31m===[0m Error while compiling eval_0�Cannot reduce with = because list assignment operators are too fiddly�at eval_0:1�------> [32mmy ($a, $b) = (1,2); my @c = [=][33m�[31m $a, $b;[0m�»
14:25 moritz r: use Test; plan 1; eval_dies_ok 'my ($a, $b) = (1,2); my @c = [=] $a, $b;', 'dies'
14:25 camelia rakudo 42a37a: OUTPUT«1..1␤ok 1 - dies␤»
14:26 moritz dmol: something like this might work for you
14:26 ilyuhan joined #perl6
14:28 dmol moritz: thanks :)
14:28 ivanoff joined #perl6
14:28 moritz timotimo: I'm now working on turning something the new error into a typed error
14:28 BabsSeed Which compiler is the most complete? rakudo?
14:28 pmurias BabsSeed: yes
14:28 moritz (hindered by the fact that my laptop is so sloooow, and I couldn't do it on my server during the power outage)
14:32 dalek roast: 121d672 | ivanoff++ | S13-syntax/sub-hash.t:
14:32 dalek roast: sub/hash syntax
14:32 dalek roast: review: https://github.com/perl6/roast/commit/121d6722e3
14:34 kaare_ joined #perl6
14:35 moritz r: sub f { say $CALLER::x }; do { my $x = 42; f}
14:35 camelia rakudo 42a37a: OUTPUT«You're trying to access $x through CALLER, but it is not dynamic.␤  in method at_key at src/gen/CORE.setting:8752␤  in method postcircumfix:<{ }> at src/gen/CORE.setting:1855␤  in method postcircumfix:<{ }> at src/gen/CORE.setting:1843␤  in sub f at /tmp/c4w99_UTe2…
14:36 moritz note to self: constructiong an exception object IS NOT ENOUGH: you also have to .throw it!
14:36 ivanoff kindly  review #76896 test  S13-syntax/sub-hash.t
14:36 moritz ... and I'm the one who'll be giving a talk about exception soon.
14:38 Psyche^ joined #perl6
14:38 lizmat r: sub f { say $CALLER::x }; do { my $x is dynamic = 42; f}
14:38 camelia rakudo 42a37a: OUTPUT«42␤»
14:39 moritz ivanoff: you can remove the %\n stuff from the test; it doesn't add anything
14:41 dalek roast: 7dc5018 | ivanoff++ | S13-syntax/sub-hash.t:
14:41 dalek roast: remove the %\n stuff from the test; it doesn't add anything
14:41 dalek roast: review: https://github.com/perl6/roast/commit/7dc50189c3
14:41 pmurias jnthn: is being able to compile regexes at runtime important for bootstraping nqp?
14:41 ivanoff moritz, I made it. Am I right?
14:41 moritz ivanoff: and S13-syntax looks like a weird place -- I'd put it in S02-lexical-conventions/sub-block-parsing.t
14:41 moritz ivanoff: sorry, I'm not fast enough :-)
14:41 ivanoff ))
14:42 pmurias jnthn: like <$foo>
14:42 moritz ivanoff: but yes, looks better than before
14:43 dmol masak: http://bpaste.net/show/121924/ should it be plased under  t/spec/S03-operators/friddle.t ?
14:43 masak dmol: looking.
14:43 ivanoff moritz, should I move S13-syntax/sub-hash.t to S02-lexical-conventions/sub-block-parsing.t ?
14:44 masak dmol: 'fiddly' rather than 'friddle', methinks.
14:44 PacoLinux_ joined #perl6
14:44 masak dmol: so, t/spec/S03-operators/fiddly.t and s/friddle/fiddly/ in the comment.
14:44 masak oh, and in the test description.
14:44 masak otherwise, looks fine.
14:45 benabik joined #perl6
14:46 77CAAPW8A joined #perl6
14:49 dalek rakudo/nom: 2566e75 | moritz++ | src/core/ (2 files):
14:49 dalek rakudo/nom: add a typed exception
14:49 dalek rakudo/nom:
14:49 dalek rakudo/nom: for accessing stuff through CALLER that is not dynamic
14:49 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/2566e7530d
14:51 dalek roast: 5765af9 | (Steve Mynott)++ | S02-magicals/ (2 files):
14:51 dalek roast: import of spectest for RT #78258
14:51 dalek roast: review: https://github.com/perl6/roast/commit/5765af9909
14:51 dalek roast: 5ab54fb | (Steve Mynott)++ | S05-transliteration/79778.t:
14:51 dalek roast: import of spectest for RT #79778
14:52 dalek joined #perl6
14:52 raiph joined #perl6
14:53 * moritz leaves the hackathon
14:54 ivanoff kindly  review #76896 test  S02-lexical-conventions/sub-block-parsing.t
14:55 fridim_ joined #perl6
15:07 rindolf joined #perl6
15:16 lizmat joined #perl6
15:18 woolfy joined #perl6
15:23 dalek nqp/jvm-sockets: 6933faa | tadzik++ | src/vm/jvm/ (3 files):
15:23 dalek nqp/jvm-sockets: Initial socket support for JVM
15:23 dalek nqp/jvm-sockets: review: https://github.com/perl6/nqp/commit/6933faa758
15:23 dalek nqp/jvm-sockets: 968b9f8 | tadzik++ | src/vm/jvm/ (2 files):
15:23 dalek nqp/jvm-sockets: Get rid of nqp::closesocket(), nqp::closefh() works perfectly fine. jnthn++
15:23 dalek nqp/jvm-sockets: review: https://github.com/perl6/nqp/commit/968b9f88d4
15:23 dalek nqp/jvm-sockets: cf06a85 | tadzik++ | src/vm/jvm/ (3 files):
15:23 dalek nqp/jvm-sockets: Implement read() and write() for sockets
15:23 dalek nqp/jvm-sockets: review: https://github.com/perl6/nqp/commit/cf06a85263
15:23 dmol joined #perl6
15:23 nugged joined #perl6
15:27 nugged_ joined #perl6
15:28 sorear tadzik++
15:28 dmol1 joined #perl6
15:29 nugged joined #perl6
15:31 woolfy sorear, at some point you told us you would try to be at the YAPC::EU in Kiev this year.  Too bad it did not work out.
15:32 itz is there a more generic yapc::eu channel elsewhere? on magnet or whatever?
15:32 FROGGS itz: there is a #yapc at irc.perl.org
15:43 sorear woolfy: did I?  oops
15:53 FROGGS jnthn: ping
16:15 dalek rakudo-star-daily: 590c258 | coke++ | log/ (5 files):
16:15 dalek rakudo-star-daily: today (automated commit)
16:15 dalek rakudo-star-daily: review: https://github.com/coke/rakudo​-star-daily/commit/590c258ee9
16:15 dalek rakudo-star-daily: a06e635 | coke++ | log/ (5 files):
16:15 dalek rakudo-star-daily: today (automated commit)
16:15 dalek rakudo-star-daily: review: https://github.com/coke/rakudo​-star-daily/commit/a06e635809
16:16 dalek perl6-Acme-Addslashes: 1ccaa31 | (Konrad Borowski)++ | lib/Acme/Addslashes.pm:
16:16 dalek perl6-Acme-Addslashes: Cool argument is enough for addslashes
16:16 dalek perl6-Acme-Addslashes: review: https://github.com/GlitchMr/perl6-​Acme-Addslashes/commit/1ccaa3120b
16:19 ajr joined #perl6
16:21 Guest96499 In an attempt to catch up with Perl 6's current state, I started by testing the examples on RosettaCode.
16:21 Guest96499 The first one I tried, Hello World to Line Printer, crashed.
16:22 benabik Wait.  A /Guest\d+/ actually talking about perl 6?  I am shocked and thankful.
16:22 Guest96499 This version appears to work:
16:22 Guest96499 given open '>', '/dev/lp0' {
16:22 Guest96499 .say('Hello, World!');
16:22 Guest96499 .close;
16:22 Guest96499 }
16:22 benabik Guest96499: welcome!
16:22 sorear benabik: ajr is an old hat
16:22 sorear did that ever work?
16:23 ajr_ Sorry, that was the original
16:23 ajr_ This appears to work:
16:23 ajr_ given open '/dev/lp0'  {
16:23 ajr_ .say('Hello, World!');
16:23 ajr_ .close;
16:23 ajr_ }
16:23 sorear it's been open '/dev/lp0', :w for as long as I've been here
16:24 sorear i'm surprised that never got updated.  TimToady and others have been combing over RC a lot lately
16:24 ajr_ The Synopses weren't very helpful, but maybe I was looking in the wrong places?
16:27 mdn joined #perl6
16:29 sorear the synopses are implementor-targeted documentation
16:29 sorear you want:
16:32 sorear well, you want http://doc.perl6.org/routine/open
16:32 sorear which conspicuously doesn't exist
16:32 sorear :/
16:33 coax75ohm joined #perl6
16:33 locsmif joined #perl6
16:33 PZt joined #perl6
16:39 timotimo first prototype of turning lexicals into locals in the optimizer ...
16:39 timotimo sadly it runs before immediate blocks are inlined, so a lot of chances would be missed. i need a second pass, i think
16:39 berekuk joined #perl6
16:40 ajr_ Would this be accurate?
16:41 ajr_ given open '/dev/lp0', :w  { # Open the device for writing as the default
16:41 ajr_ .say('Hello, World!');   # Send it the string
16:41 ajr_ .close;                  #
16:41 ajr_ #   ^ The prefix "." says "use the default device here"
16:41 ajr_ }
16:42 timotimo looks good to me. "default device" could be a bit misleading, though
16:43 sorear it's just setting and using $_
16:45 ajr_ I'm trying to phrase it for someone who doesn't know what $_ is
16:45 timotimo another time where i wish i could shoot rakudo a signal and get a traceback of where it's currently doing its work
16:45 timotimo replacing "default object" sounds okay to me
16:46 timotimo ah, it was another case of a while loop without an increment m(
16:46 timotimo those take a while to execute
16:47 timotimo lizmat: what do these # 1 and # 2 comments at the end of blocks in S02-names/caller.t mean that you added to unfudge it?
16:47 ajr_ There seems to be a common theme here: breaking the elephant that is Perl 6 into conceptual mouthsful
16:48 timotimo is that something like #?DOES ?
16:48 timotimo er, #?does i guess
16:48 sorear the usual metaphor is a waterbed, but ok.
16:51 ajr_ Although Damian's "Fun With Dead Languages" talk is indeed "fun", it gave me a significant clue.
16:52 ajr_ Perl 6 encompasses at least 3 separate fundamental concepts: procedural, object-oriented, and functional programming.
16:53 ajr_ That means that there have to be at least 3 independent routes into it, that do not require knowledge of the other 2 to grasp.
16:57 ajr_ P.S. who has the access rights to fix that example?
16:59 locsmif ajr_: do you happen to have a link to that talk?
17:00 timotimo ah. i think i can't turn a lexical into a local if it's part of the signature ... i don't see how i can figure that out, it's not explicit in the QAST
17:00 ajr_ No, I don't think one exists. You have to see it in meatspace.
17:00 mdn joined #perl6
17:03 mdn joined #perl6
17:14 denis_boyun joined #perl6
17:19 berekuk joined #perl6
17:20 itz joined #perl6
17:20 sorear ajr_: i beleive anyone with an account can edit any page on RC
17:21 sorear ajr_: most languages these days can pull off that trifecta.  even C++ is getting with the program now.
17:21 colomon sorear!  \o/
17:21 sorear hi colomon.
17:22 ajr_ Which only complicates the problem of learning it. (As if C++ wasn't complicated enough already.)
17:22 * colomon is packing to return to the US.  After playing for ceili dancers for a few more hours....
17:24 timotimo "
17:24 timotimo "coercion from a to i NYI" o_O
17:25 domidumont joined #perl6
17:25 flussence ...atoi(3) NYI? :D
17:26 ajr_ What's wrong with this one?
17:26 clkao w/in 22
17:26 ajr_ perl6 -e "my $string = slurp 'open_lp'; say $string;"
17:26 ajr_ ===SORRY!===
17:26 ajr_ Malformed my
17:26 ajr_ at -e:1
17:26 ajr_ ------> my  ⏏= slurp 'open_lp'; say ;
17:26 ajr_ expecting any of:
17:26 ajr_ scoped declarator
17:26 timotimo haha
17:26 timotimo you used "
17:26 timotimo and your shell replaced $string with ""
17:26 ajr_ Duh!
17:26 timotimo the piece of text after the -----> gives it away ;)
17:26 flussence «string='$string' perl6 -e "my $string = slurp 'open_lp'; say $string;"»
17:28 flussence .oO( imagine how much fun shell scripting would be if someone decided it'd be a good idea to make undefined vars interpolate literally... )
17:28 ajr_ Yup, this: perl6 -e 'my $stuff = slurp "open_lp"; say $stuff;'
17:28 ajr_ works
17:28 timotimo i always use ' for that reason
17:31 timotimo could it be that if i want to turn a lexical into a local, i have to move it from the Stmts that's the first child of the Block to be the first child of the Block, so that it is accessible to the rest of the tree?
17:34 timotimo is the first child of blocks somehow special?
17:42 sorear not in that way
17:42 domidumont joined #perl6
17:43 bonsaikitten joined #perl6
17:46 ssutch joined #perl6
17:47 itz joined #perl6
17:57 bonsaikitten joined #perl6
18:01 raiph joined #perl6
18:02 timotimo sorear: do you have tips? i don't really understand what exactly causes the error i'm seeing :(
18:12 nugged joined #perl6
18:15 timotimo https://gist.github.com/timo/4991927cc4308937ffaa - this is the resulting QAST and error message from the compiler
18:16 timotimo maybe i'm misunderstanding where locals may appear?
18:31 rindolf joined #perl6
18:35 celesta r: my @x = [+](0..2),(0..2); say @x
18:35 camelia rakudo 2566e7: OUTPUT«3 0 1 2␤»
18:35 celesta i was hoping for output; 0, 2, 4
18:38 timotimo you're getting [+](0..2) and then 0..2 afterwards
18:38 celesta oh, how can i get x1+y1, x2+y2, ...xn+yn ?
18:38 timotimo what you really want is (0..2) Z+ (0..2) or (0..2) >>+<< (0..2)
18:38 timotimo turn the pointy arrows at lists that you want to extend if they're shorter than the other one
18:39 celesta timotimo++ thank you very much
18:39 timotimo you're welcome :)
18:40 timotimo i can't tell where this "reg_type" method on $*BLOCK is coming from in the compiler, but apparently 'a' means something to parrot. except i can't find any mention of that, only I and S and so on
18:42 FROGGS I wonder too what 'a' should be
18:43 timotimo it would appear parrot would give an A and it'd be lc'd to a
18:44 timotimo but there's no mention of 'A' in the whole parrot source that doesn't have to do with "uppercase letters between A and Z"
18:47 timotimo perhaps i'm not converting the lexicals into locals correctly; currently i'm just replacing .scope with 'local' on all mentions of the var
18:49 klrr joined #perl6
18:52 timotimo it's kind of strange to me that it explodes upon binding a local to a local ...
18:53 klrr does it happen haskell chat here?
18:53 geekosaur not very much
18:53 timotimo sometimes haskell is mentioned here, but not often
18:54 klrr okey, it says so on haskell wiki
18:54 timotimo oh, can you show us the link?
18:54 geekosaur also, klrr, just hunting for new channels to misbehave in isn't productive for anyone
18:54 timotimo probably because of pugs, but pugs isn't being developed actively any more
18:56 klrr 20:54 < geekosaur> also, klrr, just hunting for new channels to misbehave in isn't productive for anyone
18:56 klrr that's very offesnive statement
18:56 klrr i should take this in pm it's off topic sry
18:57 klrr http://www.haskell.org/haske​llwiki/Irc#Related_channels
18:57 klrr timotimo: ^
18:57 klrr under "Projects using haskell"
18:57 klrr wait
18:57 klrr perl 6 implemented in haskell ?
18:57 timotimo ah, that's probably a bit old by now
18:57 timotimo yes, pugs is a perl 6 compiler implemented in haskell
18:57 klrr ok
18:58 timotimo i don't see perl mentioned in the history, so i cannot tell when it was added or last touched
19:05 FROGGS I believe the work on pugs stopped about six or seven years ago
19:05 * timotimo adds random poisoning conditions in the hope of random subsets intersecting sufficiently with what he setting uses
19:05 klrr left #perl6
19:07 timotimo infix:<~> can't get compiled :(
19:07 FROGGS O.o
19:07 timotimo and since it's so early in the setting i can only assume that there's many more blocks that would fail
19:08 timotimo the line that triggers it is apparently nqp::setelems($res, $alen + $blen) where both $alen and $blen have been turned into locals
19:09 * moritz back from pre-conference meetup
19:09 timotimo hello moritz :)
19:10 timotimo moritz: an intuition what reg_type returning "a" could mean? my lexical->local transformation causes coercion errors in the compiler :(
19:10 timotimo otherwise, see my last gist link for the whole QAST and error message
19:13 timotimo oh, perhaps :decl(var) is wrong for locals?
19:15 timotimo hm, but tthat gets used for other locals, too. like the sink vars
19:15 timotimo moritz: can you confirm that i don't have to move the decls for the local vars up so that it's the parent of all usages of it?
19:16 moritz timotimo: I can't confirm that
19:16 moritz timotimo: so far I thought the first usage of a QAST::Var must have the :decl<var>, :scope<local>
19:16 moritz but I never actually tested that assumption
19:17 rindolf joined #perl6
19:17 timotimo right. that's what it looks like now
19:18 moritz timotimo: and I guess you know the structure that in a QAST::Block, the first element usually contains the declaration, and the second one the actual code?
19:18 dmol joined #perl6
19:18 timotimo in the first stmts of the block, there's a qast::var local $a :decl(var), directly next to it is an op bind for the initial value
19:18 timotimo yes, that's what i gathered
19:19 moritz timotimo: did you dump the QAST tree that failed to compile?
19:20 timotimo yes
19:20 timotimo https://gist.github.com/timo/4991927cc4308937ffaa
19:20 timotimo it's quite big, but the compile error happens pretty early on
19:23 timotimo oh, wait, what
19:23 timotimo INTERNAL ERROR: Execution of block eliminated by optimizer  -  why'd it do that? o_O
19:23 timotimo that can't be right
19:24 timotimo ah, that's because the block was inlined
19:24 timotimo that makes sense now.
19:24 denisboyun joined #perl6
19:29 berekuk joined #perl6
19:32 moritz timotimo: quick idea: maybe the type of natively typed variables aren't carried to the locals properly?
19:33 moritz (it's a bit annoying that the QAST dump doesn't say anything about the type of the vars)
19:36 timotimo right; the code just replaces :scope, so if i have to make sure the type gets in there, it would not have been in the var node before, right?
19:37 moritz I have no idea where the type info comes in
19:37 timotimo perhaps if it's a lexical it used to be in the lexpad, but if it's a local it must be in the var as :returns?
19:37 moritz ah, in .returns
19:39 timotimo it kind of makes sense that the type info wouldn't be in a QAST::Var if it's a lexical; all the other info is in the lexpad, after all
19:39 masak o/
19:40 moritz \o masak
19:40 timotimo moritz: do you know what native type infos look like in the lexpad?
19:40 Rotwang joined #perl6
19:41 moritz timotimo: looking at methods register_lexical and register_local in the QAST compiler, it looks like both use .returns
19:41 moritz timotimo: n (
19:42 moritz *no
19:43 moritz though Perl6::World checks the descriptor.of to see if it's native
19:43 timotimo right, so not touching .returns when changing the var from lexical to local should suffice. hmm.
19:44 timotimo i don't think i can just debug-output the .returns of the var nodes just like that, i don't think i can just stringify those things:|
19:45 moritz timotimo: but you can debug-output nqp::objprimspec(.returns)
19:45 timotimo ah, that sounds great
19:45 moritz it just returns a number, and the QAST compiler has a mapping from that number to the register type
19:45 denis_boyun__ joined #perl6
19:46 timotimo i don't think i can get that from the optimizer, can i?
19:46 moritz seems like 0 => P, 1 => I, 2 => N, 3 => S
19:46 moritz timotimo: it's just four values, won't kill you to duplicate it for debugging
19:47 timotimo oh, good
19:49 * masak is happy because he had kvass
19:50 timotimo ah, interesting: here's one place where the return values of the var nodes are sometimes 0 and sometimes 1; i suppose that's because different values have been bound to it along the way or something?
19:51 moritz what does "return value of the var nodes" mean?
19:51 timotimo what primspec outputs for $var-node.returns
19:52 moritz yes, 0 is PMC and 1 is int
19:52 FROGGS nqp: say(nqp::getobjprimspec("hi"))
19:52 camelia nqp: OUTPUT«Error while compiling block : Error while compiling op call (source text: "nqp::getobjprimspec(\"hi\")"): Error while compiling op getobjprimspec (source text: "nqp::getobjprimspec(\"hi\")"): No registered operation handler for 'getobjprimspec'␤current instr.: '' pc 51451 (s…
19:53 timotimo nqp: say(nqp::getobjprimspec(Str))
19:53 camelia nqp: OUTPUT«Error while compiling block : Error while compiling op call (source text: "nqp::getobjprimspec(Str)"): Error while compiling op getobjprimspec (source text: "nqp::getobjprimspec(Str)"): No registered operation handler for 'getobjprimspec'␤current instr.: '' pc 51451 (src/sta…
19:53 dalek rakudo-star-daily: 63cd012 | coke++ | log/ (5 files):
19:53 dalek rakudo-star-daily: today (automated commit)
19:53 dalek rakudo-star-daily: review: https://github.com/coke/rakudo​-star-daily/commit/63cd012135
19:53 FROGGS nqp: say(nqp::objprimspec("hi"))
19:53 camelia nqp: OUTPUT«0␤»
19:53 FROGGS nqp: say(nqp::objprimspec(123))
19:53 camelia nqp: OUTPUT«0␤»
19:53 FROGGS O.o
19:53 timotimo so, what exactly is the reason for locals to be so much faster than lexicals?
19:53 benabik joined #perl6
19:53 timotimo at least if i get all of this right. which i don't seem to be able to so far ;)
19:53 moritz nqp: say(nqp::objprimsepc(int))
19:53 camelia nqp: OUTPUT«Error while compiling block : Error while compiling op call (source text: "nqp::objprimsepc(int)"): Error while compiling op objprimsepc (source text: "nqp::objprimsepc(int)"): No registered operation handler for 'objprimsepc'␤current instr.: '' pc 51451 (src/stage2/QAST.pir…
19:53 FROGGS nqp: say(nqp::objprimspec(int))
19:53 camelia nqp: OUTPUT«1␤»
19:53 moritz nqp: say(nqp::objprimspec(int))
19:53 camelia nqp: OUTPUT«1␤»
19:54 moritz timotimo: the VM has a much easier time putting locals on the stack, or keeping it only in registers, never in heap memory
19:55 moritz nqp: say(nqp::objprimspec(num))
19:55 camelia nqp: OUTPUT«2␤»
19:55 moritz nqp: say(nqp::objprimspec(str))
19:55 camelia nqp: OUTPUT«3␤»
19:55 timotimo ah. that's what i guessed
19:55 timotimo i think the return value of P for the var comes from binding a value to it
19:56 timotimo logically, the var wouldn't have a return value if it's the first argument of a bind op
19:56 timotimo so maybe it isn't wrong?
19:56 celesta nqp: say(nqp::objprimspec(role))
19:56 camelia nqp: OUTPUT«0␤»
19:57 timotimo is it acceptable for a local var to have a sigil? should be, IMO
19:57 moritz oh
19:57 moritz parrot might not like that
19:58 timotimo well, it's easily corrected.
19:58 moritz because only registers start with $ in parrot
19:58 timotimo mhm
19:58 moritz and locals are just identifier
19:58 timotimo that could trip it up bad, yes
19:59 moritz you can just generate a name for the local
20:00 moritz with $past.uniq('replace') or so
20:00 timotimo will do
20:00 moritz and then update all reading accesses to it too
20:00 timotimo yes, i have a list of all occurences already, i'll just replace the name there
20:01 timotimo if that turns out to be the solution i'll be simultaneously annoyed and happy
20:01 masak I've changed my mind again. I think it's in poor taste for YAPC::EU to have anti-p6 talks.
20:01 timotimo what, are you going to censor the free speech of your fellow yapcians?
20:01 masak somehow though, I'm kinda glad they're there, in the schedule. I hope people show up to stand up for Perl 6.
20:02 timotimo clearly, you must be a terrible person!
20:02 masak even though everyone I've talked to says they're not gonna go for blood-pressure reasons.
20:02 timotimo i can totally see that.
20:06 timotimo oh yay!
20:06 timotimo i would have *never* guessed that would be the culprit! but now it compiles
20:08 timotimo okay, my detection of lexical variable use doesn't seem to work perfectly fine yet.
20:09 masak admitting that you have a problem. first step to recovery ;)
20:11 timotimo judging from the spectests, it seems like it misses a whole bunch of lexicals that shouldn't have been turned into locals
20:16 timotimo i think i know what got messed up
20:16 timotimo i had code in place to prevent any lexicals to be turned into locals in the head if they came before $_, because i thought it would always be the case that $_ comes after all arguments to subs etc
20:17 timotimo turns out if you have block with an implicit signature, those come after the $_. so now i'll have to come up with proper code to figure out how is siggatur formed
20:17 timotimo do i find that out by inspecting $*DISPATCHER perhaps?
20:18 moritz maybe by looking at the signature?
20:19 timotimo i'd love to. where do i find it? :)
20:19 felher hey folks. I think I found a serialization problem: https://gist.github.com/felher/6206656 . Known Problem?
20:20 moritz felher: not known to me. Please submit!
20:20 tadzik felher! \o/
20:20 felher o/ tadzik :)
20:21 cognominal joined #perl6
20:21 felher moritz: will do. Either after $work today or some time tomorrow :)
20:22 timotimo moritz: i can get the signature from a Code object, but how do i get from a QAST:Block to the corresponding Code object? :|
20:22 tadzik after work today! /o\
20:22 tadzik what timezone are you in
20:23 domidumont joined #perl6
20:24 moritz r: sub f($x) { say MY::.keys *; f
20:24 camelia rakudo 2566e7: OUTPUT«[31m===[0mSORRY![31m===[0m Error while compiling /tmp/Cvjgw6OgFtâ�¤Two terms in a rowâ�¤at /tmp/Cvjgw6OgFt:1â�¤------> [32msub f($x) { say MY::.keys *[33mâ��[31m; f[0mâ�¤    expecting any of:â�¤        method argumentsâ�¤        postfixâ�¤        infix stopperâ�¤        infi…
20:24 moritz r: sub f($x) { say MY::.keys }; f
20:24 camelia rakudo 2566e7: OUTPUT«===SORRY!===␤CHECK FAILED:␤Calling 'f' will never work with no arguments (lines 1, 1)␤    Expected: :($x)␤»
20:24 moritz r: sub f($x) { say MY::.keys }; f 42
20:24 camelia rakudo 2566e7: OUTPUT«$x $_ $/ $! $*DISPATCHER &?ROUTINE RETURN␤»
20:25 timotimo r: say { $^a }.WHAT
20:25 camelia rakudo 2566e7: OUTPUT«(Block)␤»
20:25 moritz timotimo: I guess it's too late by the time &?ROUTINE is added?
20:25 felher tadzik: CET. But I was (and still am) ill quite some time and @people are expecting a eMail with an status update tomorrow. So I have to do it now, before I go to bed :)
20:25 moritz oh, and it won't work for blocks either
20:25 timotimo i'm not sure if ROUTINE is actually enough
20:26 moritz anyway, time for sleep here
20:26 tadzik I see :)
20:26 timotimo good night moritz and thanks for your help!
20:26 timotimo can i bother you about this again some time tomorrow?
20:26 felher o/ moritz
20:32 felher Well, I have to leave. Hopefully not for two months again ;) Good night, #perl6
20:32 timotimo good night! :)
20:32 timotimo i'm going to bed now, too.
20:32 celesta godd night #perl6
20:32 celesta good
20:42 pmurias masak: re anti Perl 6 talks what are they trying to achieve?
20:44 masak pmurias: a good question.
20:44 masak pmurias: maybe they figure they're the child who points out that the emperor has no clothes.
20:44 masak pmurias: or maybe they sincerely believe they have a chance with the Perl 7 nonsense.
20:46 pmurias you mean have Perl 6 declared a failure and have a normal Perl 5 release called Perl 7?
20:46 masak pmurias: aye.
20:48 pmurias isn't that something that Larry would have to decide?
20:49 pmurias so they should be sending hate mail rather then appealing to the community?
20:50 * pmurias hopes they don't read #perl6 ;)
20:50 nugged joined #perl6
20:52 masak it's something that Larry would have to decide, yes.
20:54 masak the more I think about it, the more I think they haven't thought things through very well.
20:55 masak they kind of look like they think they're operating with 100% information, whereas in actual fact it's far less than 50%.
21:06 masak 'night, #perl6
21:07 pmurias 'night
21:08 nugged joined #perl6
21:21 raiph joined #perl6
21:25 xenoterracide joined #perl6
21:28 nugged joined #perl6
21:31 nugged_ joined #perl6
21:44 BenGoldberg joined #perl6
21:55 Ulti with the LWP::Simple module what is expected to be passed in as content/data to the .post ?
21:55 lue joined #perl6
21:56 Ulti form encoded stuff like 'field=value'
22:07 berekuk joined #perl6
22:08 census joined #perl6
22:34 FROGGS joined #perl6
23:06 frettled joined #perl6

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

Perl 6 | Reference Documentation | Rakudo