Camelia, the Perl 6 bug

IRC log for #perl6, 2012-11-20

Perl 6 | Reference Documentation | Rakudo | Niecza | Specs

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

All times shown according to UTC.

Time Nick Message
00:16 bapa joined #perl6
00:26 kcwu joined #perl6
01:06 anuby joined #perl6
01:10 hypolin joined #perl6
01:14 ponbiki joined #perl6
01:15 atrodo joined #perl6
01:39 Chillance joined #perl6
01:40 xilo is there any documentation on how to make c/c++ bindings for perl6?
01:43 shachaf Presumably C and C++ bindings are two very different things.
01:43 xilo i suppose so
01:45 xilo but either way
01:45 xilo is there a way to do it? or is that still being worked on
01:54 am0c joined #perl6
02:00 geekosaur the question is not entirely meaningful.  "perl 6" does not have C/C++ bindings; particular implementations may.
02:00 geekosaur as I understand it, rakudo doesn't because of limitations in Parrot.  not sure about niecza
02:02 raiph joined #perl6
02:02 raiph xilo: hello
02:03 xilo hello
02:03 xilo geekosaur: ie is there anything like XS
02:03 colomon xilo: what direction do you mean?
02:04 xilo perl calling C++ libraries
02:04 diakopter ahhh
02:04 geekosaur point still remains.  perl5 is a single implementation with a single backend, so it can have a single XS
02:04 geekosaur what mechanism do you propose for bindings that work both on parrot and .net?
02:04 geekosaur and haskell (pugs)?
02:05 gootle joined #perl6
02:05 geekosaur I should say ghc for the latter
02:05 gfldex xilo: https://github.com/jnthn/zavolaj/
02:05 xilo well all .net languages inherently gain the ability to
02:05 sorear sure there is.  it's called NativeCall, it's currently Rakudo only but one of my next-year goals is to make it run on Niecza too
02:06 xilo gotcha
02:06 xilo good to know
02:07 xilo how does that work with objects?
02:08 raiph star: use NativeCall; sub fork() returns Int is native("libc.so.6") {*}; fork() # not objects, but shows the basics
02:08 p6eval star 2012.10:  ( no output )
02:08 geekosaur NativeCall isn't quite the same thing, is it?  (note that I have had various people *here* insist that NativeCall is not the same thing...)
02:09 geekosaur and I don't mean randoms and I suppose I should try to find the exact discussion in my archives, except they're spread over multuple machines I don't necessarily have access to so forget I said anything
02:09 xilo ah
02:09 xilo yeah it's not quite the same thing
02:10 raiph xilo: p6 has the notion of separating an object from its representation. so you can have a p6 object that maps to a cstruct
02:10 sorear geekosaur: there are logs online going back to well before you had that nick
02:10 xilo neat
02:10 geekosaur I knwo but they're even harder to search usefully when I don't have many keywords to focus the search :/
02:12 xilo been wanting to get into perl6, just not sure what to do
02:13 raiph star: use NativeCall; sub readline(Str) returns Str is native('libreadline.so.5') { ... }; say readline('foo:') # another example found by searching #perl6 logs
02:13 p6eval star 2012.10: OUTPUT«foo:Land der Berge, Land am Strome,␤Land der Berge, Land am Strome,␤»
02:14 raiph star: use NativeCall; sub SHA1(Str, Int, OpaquePointer) returns CArray[int] is native('libssl.so') { ... }; my @a := SHA1("foo\n", 4, Any); say @a[0] # one last example
02:14 p6eval star 2012.10: OUTPUT«-103623951␤»
02:15 xilo_ joined #perl6
02:16 raiph xilo: fyi irc logs are at: http://irclog.perlgeek.de/perl6/today (yesterday's summary is at http://irclog.perlgeek.de/out.pl?cha​nnel=perl6;date=yesterday;summary=1)
02:16 xilo ah
02:16 xilo kk
02:16 xilo thanks
02:17 raiph xilo: there's 7 years worth of logs; i used search to find those examples: http://irclog.perlgeek.de/search.pl?nic​k=;channel=perl6;q=nativecall;offset=20
02:17 xilo 7 years of logs...holy crap
02:17 raiph thousands of lines per day
02:18 xilo i logged all my chats once
02:18 xilo after about a year it got to 20 gigs so i stopped lol
02:18 xilo for irc that is
02:19 raiph xilo: do you know perl 5?
02:20 xilo yeah
02:20 xilo lets say at work
02:20 xilo we had
02:20 raiph d'uh ("anything like XS")
02:20 xilo 20k lines of perl userspace code with XS bindings that called into lower level OS code...
02:23 raiph xilo: zavolaj (NativeCall) is already sweet, but it's not mature and it's specific to Rakudo, which is not the only Perl 6 compiler (though arnsholt has talked of working on a solution that works for both Rakudo and Niecza)
02:24 xilo what's the difference between rakudo and niecza?
02:24 xilo oh
02:24 xilo clr
02:25 xilo clr inherintly gains the ability to do all that and use pretty much any library
02:28 raiph xilo: http://perl6.org/compilers/
02:29 tokuhiro_ joined #perl6
02:29 raiph xilo: is your near term interest for work or play?
02:29 xilo play
02:30 xilo perl6 isn't supported on my job's hardware lol
02:30 raiph heh
02:31 raiph feel free to play (nicely) on channel, for example:
02:31 raiph rn: my $name = "xilosay "hello
02:31 raiph oops
02:31 p6eval niecza v22-33-gda13155: OUTPUT«[31m===[0mSORRY![31m===[0m��Two terms in a row at /tmp/gvUjDHSmOA line 1:�------> [32mmy $name = "xilosay "[33m�[31mhello[0m��Parse failed��»
02:31 p6eval ..rakudo bf472b: OUTPUT«===SORRY!===␤Confused␤at /tmp/cGgMNijemw:1␤»
02:31 raiph rn: my $name = "xilo"; say "hello $name"
02:31 p6eval rakudo bf472b, niecza v22-33-gda13155: OUTPUT«hello xilo␤»
02:32 xilo ah neat
02:32 xilo shame no archlinux niecza package
02:32 raiph and /msg rn: say 1 # for a private window
02:32 xilo onry rakudo
02:33 xilo guess i could make a git package
02:37 Chillance joined #perl6
02:40 raiph xilo: seems you are gravitating toward niecza. is that just because of the way it impacts calling native libs? a general preference for a CLR based solution?
02:40 xilo probably a little of both
02:41 xilo that's one thing i liked about CLR languages
02:41 xilo you get a lot of freebies
02:41 xilo and you don't need language specific libraries
02:41 xilo what's the performance difference between the two?
02:43 sorear niecza used to be substantially faster, but the gap is closing rapidly and may already be closed
02:43 sorear want to do a niecza archlinux package?  *wink*
02:44 xilo sorear: that's what i'm working on :P
02:44 xilo anything special i need to do for make?
02:44 FROGGS_ joined #perl6
02:45 sqirrel_ joined #perl6
02:46 sorear xilo: just "make" should work, although it is somewhat less than ideal for packaging because it uses wget
02:46 xilo k
02:47 xilo what about dependency versions
02:48 sorear what do you mean?
02:49 sorear niecza is best tested on mono 2.6.7
02:49 flightrecorder joined #perl6
02:51 xilo k
03:12 xilo hmm bulid error
03:14 xilo sorear: i'm getting cp run/Run.Kernel.dll obj/Run.Kernel.dll make: *** [obj/Run.CORE.dll] Error 128
03:27 xilo well this sucks
03:32 hmmhesays joined #perl6
03:32 xilo damn sorear needs to come back lol
03:38 cognominal joined #perl6
03:38 am0c joined #perl6
03:44 xilo there was a "fata: no names found, cannot describe anything" in there too
03:47 kaleem joined #perl6
03:47 sorear xilo: ...what are you trying to build?
03:47 xilo niecza...
03:48 xilo pulled from git
03:48 sorear that sounds like a pretty broken pull
03:48 sorear I mean you should have tags
03:49 sorear (please package v22, not HEAD; HEAD is in a less than ideal state at the moment)
03:51 orafu joined #perl6
03:51 xilo that explains it
03:57 xilo hmm makefile has no install?
04:19 xilo sorear: you should create an install section in Makefile :X
04:23 sorear Install what where?
04:42 rurban_ joined #perl6
04:46 dayangkun joined #perl6
05:10 GlitchMr joined #perl6
05:28 moritz \o
05:28 sorear o/
05:29 sorear xilo: I'm not sure how meaningful "install" is for niecza in its current form, because it cannot be run as a unix executable
05:31 sorear xilo: and the conventions for shell wrapper scripts vary by distribution, so I wouldn't necessarily be doing you any favors
05:31 xilo i'm anal about things being in proper places... like packages being installed instead of just somewhere in directory lol
05:31 xilo ah
05:32 moritz $ cat `which niecza`
05:32 moritz #!/bin/sh
05:32 moritz mono ~/p6/niecza/run/Niecza.exe "$@"
05:33 xilo oh wells
05:34 TimToady I find I can use a shebang line of #!/home/larry/perl6/niecza/run/Niecza.exe
05:34 TimToady and it works
05:35 moritz it works if the kernel knows about CLR files
05:35 moritz I had that too with some kernels
05:35 erkan joined #perl6
05:35 erkan joined #perl6
05:35 sorear xilo: look at http://pkg-mono.alioth.debian.org/cli-policy/
05:36 sorear Debian has extremely specific rules about how CLI packages are installed
05:36 sorear I'm having trouble finding Arch's packaging policy document
05:36 xilo debian is anal about everything
05:36 * sorear hopes the rumors about it being a free-for-all are not true
05:38 xilo sorear: https://wiki.archlinux.org/index.php/Arc​h_Packaging_Standards#Package_etiquette
05:38 xilo er
05:38 xilo ignore the #
05:38 xilo but that's the page
05:40 sorear you have Go standards but no Mono standards?
05:41 xilo lol
05:42 xilo https://wiki.archlinux.org/ind​ex.php/CLR_Package_Guidelines
05:42 sorear oh, it exists, it's just not linked from anywhere
05:43 xilo yeah
05:43 xilo i guess i could take care of all this in pkgbuild
05:45 xilo_ joined #perl6
05:45 sorear a note on paths
05:45 xilo though i'm not sure about the stuff in the lib directory
05:46 xilo and docs
05:47 sorear Niecza v22+Mono expects to find modules in ../lib relative to the location of Niecza.exe, the compiler's support modules in the same directory as Niecza.exe, and puts compiled versions of user modules in $HOME/.local/share/NieczaModuleCache
05:48 dalek perl6-bench: 1f67eba | (Geoffrey Broadwell)++ | analyze:
05:48 dalek perl6-bench: Untabify analyze
05:48 dalek perl6-bench: review: https://github.com/japhb/pe​rl6-bench/commit/1f67eba8c0
05:48 dalek perl6-bench: 2001684 | (Geoffrey Broadwell)++ | analyze:
05:48 dalek perl6-bench: Factor out load and decode of timing file
05:48 dalek perl6-bench: review: https://github.com/japhb/pe​rl6-bench/commit/2001684930
05:48 dalek perl6-bench: 64a48f9 | (Geoffrey Broadwell)++ | analyze:
05:48 dalek perl6-bench: Initial support in analyze for comparing results across multiple benchmarking runs
05:48 dalek perl6-bench: review: https://github.com/japhb/pe​rl6-bench/commit/64a48f9b8d
05:49 xilo ick
05:49 xilo kinda a problem
05:49 sorear which?  how?
05:49 xilo the expected ../lib
05:50 sorear I would expect the install location to be $PREFIX/lib/niecza/run/Niecza.exe, $PREFIX/lib/niecza/lib/CORE.setting
05:51 * sorear wonders if there's a good way to embed configure-time information like paths
05:52 sorear I guess we could embed a "resource file" with path info if it were a big problem
05:52 xilo or
05:52 xilo stick it in /usr/lib/perl6
05:52 xilo :3
05:53 xilo or /usr/lib/niecza
05:53 xilo and use that path
05:53 xilo oh nvm
05:54 xilo preventing specific stuff
05:55 xilo getting tired
05:58 lust4life joined #perl6
06:07 birdwindupbird joined #perl6
06:21 SamuraiJack joined #perl6
06:25 imarcusthis joined #perl6
06:33 wamba joined #perl6
07:06 sorenso joined #perl6
07:10 lust4life left #perl6
07:14 Woodi good morning today :)
07:15 Woodi lastly I found nice VM :)  http://fabiensanglard.net/quake3/qvm.php  it compiles C code via LCC compiler to bytecode and then execute (of course :) ) code is opensource and githubbed
07:16 Woodi I do not exactly know how about thread support in qvm
07:27 Woodi xilo: like special service members say: we must be cruel becouse opossitions is :)
07:28 Woodi problems starts (in RL world) when oppositions stops (or is eliminated...) and "system" produce new enemy...
07:30 Woodi anyway few times happens to me googling for configuration of sth and best answer was on Arch wiki :)
07:34 Woodi hmm, there is no BLFS for Perl6... http://www.linuxfromscratch.org/blfs/view/svn/
07:38 domidumont joined #perl6
07:39 jnthn morning
07:39 sorear morning jnthn
07:41 Woodi o/
07:42 * jnthn tries to drink enough coffee before @student arrive
07:42 sorear yay students
07:42 jnthn :)_
07:43 sorear is that a drool finger?
07:43 jnthn no, it's a demonstration of my pre-coffee keyboard skills :P
07:43 sorear or maybe jnthn is a vampire, but he lost one of his teeth in a tragic accident
07:43 flightrecorder joined #perl6
07:49 Woodi so what "contextualizer" is ?
07:49 sorear Boolean.
07:49 sorear like !! in other languages :D
07:49 Woodi oo
07:50 Woodi so simple when you know :) like 0 and 1 :)
07:51 sorear well, True and False
07:51 sorear but they numify to 0 and 1
07:51 sorear +?$foo is like $foo ?? 1 !! 0
07:52 Woodi so far Junctions are like: any('a', 'b', 'd') ?
07:53 jnthn sorear: I don't think a hemophobic vampire would be good for much... :)
07:54 sorear where did hemophobia come in?
07:54 jnthn sorear: Me :)
07:54 jnthn Well, more :/ than :)
07:54 Woodi so in such simple "context" autothreading have anything to do... and didn't saw more complicated examples...
07:55 jnthn I suspect it's hard to be a vampire if you feel rather faint at the sight of blood... :)
07:55 Woodi s/have/have not/...
07:55 jnthn ...unless you drink through a really long, opaque straw :)
07:57 sorear note to self: avoid bleeding at yapcna20123
07:57 Woodi and autothreading is implemented now ? (I hear yes...) but threads arent in place... so maybe it is my MM (mind-mess)...
07:57 FROGGS joined #perl6
07:58 FROGGS guten morgen
07:58 sorear Woodi: autothreading and threads have nothing to do with one another
07:58 jnthn sorear: yes, please :)
07:58 Woodi hi FROGGS :)
07:58 jnthn sorear: You can to do 2013? :)
07:58 sorear I know it's confusing, sorry
07:58 * jnthn is pondering making his first trip to YAPC::NA this year...
07:59 sorear jnthn: well, I want to make yapc::na 2013, but at this rate the dates won't be released until the week after the conf
07:59 Woodi but junctions are for better concurency (done *somehow*) ?
07:59 sorear I don't think so.
08:00 sorear The primary function of junctions is more natural code
08:00 Woodi ok
08:00 sorear if $foo eq any <aleph beth gimel> { ... }
08:00 Su-Shee vampires? here? will there be a rakudo twilight? ;)
08:00 Woodi no idea how I imagined I read this :)
08:01 atrodo joined #perl6
08:01 Woodi so maybe Niecza is ancient name of someone ? :)
08:01 sorear now, junctions are delibrately specced in a loose way so that that code can be well optimized
08:01 sorear which may, in some cases, include parallelism
08:02 sorear but I'd call that "fringe benefit"
08:02 jnthn sorear: I saw prelim dates on TPF site, I thought...
08:02 jnthn OK, teaching time :)
08:02 jnthn bbl
08:02 Woodi but calculating 'a' || 'b' will gain from not-doing it concurently... and nowhere more complicated examples
08:03 Woodi can we smuggle promises into this somehow pls ? :)
08:04 sorear Woodi: exactly, doing concurrency of that sort on current systems is.. dubious
08:05 sorear @Larry takes the long view here and imagines a future with so many cores that we can afford to spend some on speculative execution
08:06 sorear which works at the silicon level today (superscalar logic requires an insane amount of area, but nobody wants to program for a machine with 100 486s, except in some restrictive niches that CUDA fills now)
08:08 sorear Niecza's philosophy for the 2010s is that parallelism should happen on user request only
08:09 sorear this may include pragmatic parallelism, "use parallel hyper => (chunksize => 1000)"
08:09 am0c joined #perl6
08:11 sorear phenny: tell jnthn I still have not found dates for 2013.  tpf's site still lists the 2012 dates
08:11 phenny sorear: I'll pass that on when jnthn is around.
08:28 wamba joined #perl6
08:36 kaleem joined #perl6
08:40 Kharec joined #perl6
08:52 am0c joined #perl6
08:53 kaleem joined #perl6
08:54 sisar joined #perl6
09:07 xinming joined #perl6
09:08 fhelmberger joined #perl6
09:14 kresike joined #perl6
09:14 kresike hello all you happy perl6 people
09:14 jnthn sorear: http://news.perlfoundation.org/2012/​10/yapcna-2013-call-for-papers.html
09:14 phenny jnthn: 08:11Z <sorear> tell jnthn I still have not found dates for 2013.  tpf's site still lists the 2012 dates
09:18 sorear wow
09:18 sorear buried :/
09:18 sorear jnthn++
09:18 jnthn yeah, I mostly ran into it by accident...
09:32 jnthn Seems the Kiev one will be at a nice venue :)
09:36 dakkar joined #perl6
09:44 zjmarlow joined #perl6
10:27 wamba joined #perl6
10:32 masak good antenoon, #perl6
10:33 FROGGS hi masak
10:34 FROGGS masak: can close that one? I'm not allowed to... https://rt.perl.org/rt3/Tic​ket/Display.html?id=114246
10:35 am0c joined #perl6
10:35 masak FROGGS: closed.
10:35 FROGGS thanks!
10:35 FROGGS just a few hundret left ;o)
10:36 masak let's just hope some jerk doesn't open up a bunch of new ones... :P
10:36 FROGGS no, that won't happen^^
10:36 FROGGS nevar
10:38 masak ;)
10:38 FROGGS is there a way to search for RT tickets where I commented on?
10:40 masak what's your username at RT?
10:40 FROGGS FROGGS or FROGGS.de
10:40 FROGGS FROGGS.de as it seems
10:41 domidumont joined #perl6
10:43 masak hm. I've managed to do a search where a ticket turns up with you as requestor.
10:43 masak but commented on, that one is not immediate.
10:44 FROGGS ya, looks like it's not possible..
10:46 SamuraiJack joined #perl6
10:46 masak no, I just succeeded.
10:47 FROGGS cool
10:47 masak "Edit Search" -> clear all fields -> Content matches "FROGGS" -> Queue is perl6 -> Add and Search
10:48 masak turned up four tickets for me.
10:48 FROGGS cool, thanks
10:50 bbkr joined #perl6
11:05 Su-Shee_ joined #perl6
11:12 FROGGS masak: I'd like to add a testcase for a ticket, can you please have a look and tell me if I can add it? https://gist.github.com/ed6f7e50beecc2ed7303
11:13 FROGGS dont wanna break anything (nicza, pugs, rakudo on another platform than linux, dunno)
11:19 masak I was gonna complain that that test will randomly fail sometimes due to the random stars lining up.
11:19 masak but then I counted and the chance of that is short of one in 1e10. so, yeah.
11:19 masak I think the solution looks sane.
11:20 masak it's "heavyweight", as KyleHa points out, but that's because we need to test things at startup, so we need to spawn processes.
11:21 FROGGS right, there is no other way IMO
11:21 FROGGS k, so I will commit
11:31 domidumont joined #perl6
11:36 GlitchMr joined #perl6
11:42 zjmarlow joined #perl6
12:30 tokuhiro_ joined #perl6
12:36 Psyche^ joined #perl6
12:52 zjmarlow r: my $line; for < one two three >.values -> $line { if True { .say } }
12:52 p6eval rakudo bf472b: OUTPUT«Null PMC access in find_method('say')␤  in block  at /tmp/IkKBtNdUQQ:1␤  in method reify at src/gen/CORE.setting:5488␤  in method reify at src/gen/CORE.setting:5390␤  in method reify at src/gen/CORE.setting:5390␤  in method gimme at src/gen/CORE.setting:5768␤  in m…
13:01 wamba joined #perl6
13:04 larks joined #perl6
13:17 masak huh.
13:18 masak r: for < one two three >.values -> $line { if True { .say } }
13:18 p6eval rakudo bf472b: OUTPUT«Null PMC access in find_method('say')␤  in block  at /tmp/dCjZ5WyCfu:1␤  in method reify at src/gen/CORE.setting:5488␤  in method reify at src/gen/CORE.setting:5390␤  in method reify at src/gen/CORE.setting:5390␤  in method gimme at src/gen/CORE.setting:5768␤  in m…
13:18 larks joined #perl6
13:19 masak r: for < one two three >.values -> $line { .say }
13:19 p6eval rakudo bf472b: OUTPUT«Any()␤Any()␤Any()␤»
13:20 masak r: for 1 -> $a { if 1 { .say } }
13:20 p6eval rakudo bf472b: OUTPUT«Null PMC access in find_method('say')␤  in block  at /tmp/KEgz4tUkJF:1␤  in method reify at src/gen/CORE.setting:5488␤  in method reify at src/gen/CORE.setting:5390␤  in method reify at src/gen/CORE.setting:5390␤  in method gimme at src/gen/CORE.setting:5768␤  in m…
13:22 masak we may have this in RT already, actually.
13:24 masak r: for 1 -> $ { if 1 { .say } }
13:24 p6eval rakudo bf472b: OUTPUT«Null PMC access in find_method('say')␤  in block  at /tmp/rjqBOJhJYJ:1␤  in method reify at src/gen/CORE.setting:5488␤  in method reify at src/gen/CORE.setting:5390␤  in method reify at src/gen/CORE.setting:5390␤  in method gimme at src/gen/CORE.setting:5768␤  in m…
13:27 masak yes, here: https://rt.perl.org/rt3/Tic​ket/Display.html?id=113904
13:30 masak though this particular case has an 'if', not a 'when'.
13:31 masak r: $_ = 42; .say
13:31 p6eval rakudo bf472b: OUTPUT«42␤»
13:31 masak r: $_ = 42; for 1 { .say }
13:31 p6eval rakudo bf472b: OUTPUT«1␤»
13:31 masak r: $_ = 42; for 1 -> $p { .say }
13:31 p6eval rakudo bf472b: OUTPUT«42␤»
13:31 masak r: $_ = 42; for 1 -> $p { if 1 { .say } }
13:31 p6eval rakudo bf472b: OUTPUT«Null PMC access in find_method('say')␤  in block  at /tmp/8_I6yPoJpp:1␤  in method reify at src/gen/CORE.setting:5488␤  in method reify at src/gen/CORE.setting:5390␤  in method reify at src/gen/CORE.setting:5390␤  in method gimme at src/gen/CORE.setting:5768␤  in m…
13:31 masak this one illustrates it fairly well. I'll paste it into the ticket.
13:33 masak r: $_ = 42; for 1 { if 1 { .say } }
13:33 p6eval rakudo bf472b: OUTPUT«1␤»
13:37 jnthn urgh, that one
13:38 jnthn never figured out what was going on there...
13:39 masak the for loop does something unspeakable to $_ when binding to $p. for some reason, an inner block is needed to expose the unspeakableness.
13:40 masak r: $_ = 42; for 1 { { .say } }
13:40 p6eval rakudo bf472b: OUTPUT«1␤»
13:40 masak the inner block needs to be a when or an if.
13:40 masak r: $_ = 42; for 1 { (-> { .say })() }
13:40 p6eval rakudo bf472b: OUTPUT«1␤»
13:40 masak r: $_ = 42; for 1 { (-> $_ { .say })($_) }
13:40 p6eval rakudo bf472b: OUTPUT«1␤»
13:40 masak r: $_ = 42; for 1 -> $p { (-> $_ { .say })($_) }
13:40 p6eval rakudo bf472b: OUTPUT«42␤»
13:41 masak r: $_ = 42; for 1 -> $p { (-> { .say })() }
13:41 p6eval rakudo bf472b: OUTPUT«Null PMC access in find_method('say')␤  in block  at /tmp/USC7UEV1rX:1␤  in method reify at src/gen/CORE.setting:5488␤  in method reify at src/gen/CORE.setting:5390␤  in method reify at src/gen/CORE.setting:5390␤  in method gimme at src/gen/CORE.setting:5768␤  in m…
13:41 jnthn masak: If you have it locally, also maybe check out if --optimize=0 changes the answer
13:41 masak nope; the inner block needs to be a pblock.
13:41 jnthn I doubt it though
13:41 masak me too.
13:41 dalek roast: 6320c7c | (Tobias Leich)++ | S32-list/roll.t:
13:41 dalek roast: test that we get different results when re-running interpreter
13:41 dalek roast:
13:41 dalek roast: Random number generator wasnt initialized with a random seed.
13:41 dalek roast: See https://rt.perl.org/rt3/Ti​cket/Display.html?id=89972
13:41 dalek roast: review: https://github.com/perl6/roast/commit/6320c7c2de
13:42 masak --optimize=0 does not change l'answer.
13:43 jnthn ok, good
13:43 kborer joined #perl6
13:45 masak r: BEGIN { $_ = 42 }
13:45 p6eval rakudo bf472b: OUTPUT«===SORRY!===␤Cannot assign to a non-container␤»
13:45 masak huh.
13:46 jnthn hm, where are you expecting to get a $_ from?
13:46 jnthn Should a BEGIN declare one?
13:47 jnthn Are are you expecting something to happen involving its surrounding scope?
13:47 jnthn (The answer it gives looks wrong but I've no idea what right is...)
13:56 grondilu joined #perl6
13:56 * grondilu is surprised there is no Perl6 entry for:  http://rosettacode.org/wiki/E​xtreme_floating_point_values
13:56 masak hm, what am I expecting? I'm expecting if $_ is (invisibly) declared in the mainline scope, it should be assignable at BEGIN time.
13:57 am0c joined #perl6
13:57 masak grondilu: I'm not sure minus zero is distinct from plus zero in either of the Perl 6 implementations.
13:57 masak rn: say 0e1 == -0e1
13:57 p6eval rakudo bf472b, niecza v22-33-gda13155: OUTPUT«True␤»
13:58 masak rn: say 1 / -Inf
13:58 p6eval rakudo bf472b: OUTPUT«-0␤»
13:58 p6eval ..niecza v22-33-gda13155: OUTPUT«0␤»
13:58 masak ooh
13:58 masak Rakudo will at least print it differently... :)
14:01 crab2313 joined #perl6
14:02 atrodo joined #perl6
14:04 grondilu well I added a section with the {{incomplete}} banner.  Hope it's ok.
14:04 grondilu r: say my int $;
14:04 p6eval rakudo bf472b: OUTPUT«0␤»
14:04 grondilu oops
14:04 * grondilu was expecting NaN
14:05 grondilu n: say my int $;
14:05 p6eval niecza v22-33-gda13155: OUTPUT«[31m===[0mSORRY![31m===[0m��Malformed my at /tmp/sTylZFiTrT line 1:�------> [32msay my[33m�[31m int $;[0m��Parse failed��»
14:06 grondilu r: say my int $ = 0/0;
14:06 p6eval rakudo bf472b: OUTPUT«Divide by zero␤  in sub infix:<div> at src/gen/CORE.setting:3122␤  in sub DIVIDE_NUMBERS at src/gen/CORE.setting:8346␤  in sub infix:</> at src/gen/CORE.setting:8478␤  in block  at /tmp/MVXoGeprD4:1␤␤»
14:07 FROGGS r: say my int $;
14:07 p6eval rakudo bf472b: OUTPUT«0␤»
14:07 FROGGS r: say my int $; say my int $;
14:07 p6eval rakudo bf472b: OUTPUT«===SORRY!===␤Unsupported use of $; variable;  in Perl 6 please use real multidimensional hashes␤at /tmp/zYfpilA7Um:1␤»
14:07 grondilu weird
14:07 FROGGS ya
14:07 masak grondilu: the 'int' variety doesn't NaN.
14:07 grondilu lol
14:07 masak it's too close to the metal to do that.
14:08 grondilu I meant 'num' of course
14:08 grondilu silly of m
14:08 grondilu e
14:08 grondilu n: say my num $;
14:08 p6eval niecza v22-33-gda13155: OUTPUT«[31m===[0mSORRY![31m===[0m��Malformed my at /tmp/vVYjY3TWuK line 1:�------> [32msay my[33m�[31m num $;[0m��Parse failed��»
14:08 grondilu r: say my num $;
14:08 p6eval rakudo bf472b: OUTPUT«NaN␤»
14:08 masak why are you using the lowercase types at all?
14:08 masak this is all much easier to show with the normal boxed types.
14:09 grondilu masak: I just forgot there is a Num type :)
14:09 grondilu r: say my Num $;
14:09 p6eval rakudo bf472b: OUTPUT«Num()␤»
14:09 grondilu hum
14:10 masak that is correct.
14:10 masak it's undefined.
14:10 bluescreen10 joined #perl6
14:10 PacoAir joined #perl6
14:10 masak r: say (my Num $) == NaN
14:10 p6eval rakudo bf472b: OUTPUT«===SORRY!===␤Unsupported use of $) variable;  in Perl 6 please use $*EGID␤at /tmp/FHWgCZwBBw:1␤»
14:10 grondilu r: say my Num $ = 0/0;
14:10 p6eval rakudo bf472b: OUTPUT«Divide by zero␤  in sub infix:<div> at src/gen/CORE.setting:3122␤  in sub DIVIDE_NUMBERS at src/gen/CORE.setting:8346␤  in sub infix:</> at src/gen/CORE.setting:8478␤  in block  at /tmp/P0Ys7lXFnP:1␤␤»
14:10 masak r: say (my Num $a) == NaN
14:10 p6eval rakudo bf472b: OUTPUT«Parameter '' requires an instance, but a type object was passed␤  in method Bridge at src/gen/CORE.setting:3307␤  in sub infix:<==> at src/gen/CORE.setting:2964␤  in block  at /tmp/BYUwrfPQO0:1␤␤»
14:10 masak r: say (my Num $a) == 0
14:10 p6eval rakudo bf472b: OUTPUT«Parameter '' requires an instance, but a type object was passed␤  in method Bridge at src/gen/CORE.setting:3307␤  in sub infix:<==> at src/gen/CORE.setting:2964␤  in block  at /tmp/4SviHNE5_R:1␤␤»
14:10 grondilu r: say (my Num $ = 0)/0;
14:10 p6eval rakudo bf472b: OUTPUT«Type check failed in assignment to '$'; expected 'Num' but got 'Int'␤  in block  at /tmp/Ie4g9QmKZh:1␤␤»
14:10 grondilu r: say (my Num $ = 0.0)/0;
14:10 p6eval rakudo bf472b: OUTPUT«Type check failed in assignment to '$'; expected 'Num' but got 'Rat'␤  in block  at /tmp/EQabR92a6A:1␤␤»
14:11 masak :)
14:11 masak 0e1
14:11 grondilu r: say (my Num $ = 0e1)/0;
14:11 p6eval rakudo bf472b: OUTPUT«Divide by zero␤  in sub infix:</> at src/gen/CORE.setting:3576␤  in sub infix:</> at src/gen/CORE.setting:2956␤  in block  at /tmp/2ib5D93FRu:1␤␤»
14:11 grondilu damn
14:11 masak no sense in complaining about *any* result of a 0/0 ;)
14:11 masak if demons came flying out your nose, that'd still be within the rulebook.
14:11 FROGGS would be a good case to return 42
14:12 grondilu why not NaN?
14:12 FROGGS 42
14:12 masak grondilu: NaN would be fine, too, I guess.
14:12 masak I believe that's what Niecza does...
14:12 masak n: say 0e1/0e1
14:12 p6eval niecza v22-33-gda13155: OUTPUT«NaN␤»
14:12 masak yep.
14:13 grondilu anyway 1e0/0e0 should not raise the same exception as 0e0/0e0
14:13 masak I believe that's more in line with IEEE 754, too.
14:14 larks joined #perl6
14:19 grondilu hum I just read in the french wikipedia that NaN == NaN is always false, and that NaN is the only value that has this property (not being equal to itself).  Interesting.
14:20 grondilu nr:  say NaN == NaN
14:20 p6eval rakudo bf472b, niecza v22-33-gda13155: OUTPUT«False␤»
14:20 grondilu lol, P6 agrees.
14:21 hash_table joined #perl6
14:21 masak that's definitely IEEE 754.
14:21 masak it's not as silly as it may first seem.
14:21 masak since there are several ways of getting a NaN value, chances are they are actually not "the same" NaN.
14:21 masak so the conservative default is assuming they're not.
14:21 * grondilu will have to read IEEE 754 one of these days
14:22 masak and even though we do expect equality between numbers to be a symmetric relation (that is, x == x), NaN is not a number, so it's fine.
14:23 masak sorry, "reflexive relation" :)
14:23 masak "symmetric" is a == b <=> b == a
14:27 GlitchMr std: 2__000
14:27 p6eval std d38bbd0: OUTPUT«[31m===[0mSORRY![31m===[0m�Only isolated underscores are allowed inside numbers at /tmp/BzldOu3gsV line 1:�------> [32m2[33m�[31m__000[0m�Whitespace is required between alphanumeric tokens at /tmp/BzldOu3gsV line 1:�------> [32m2[33m�[31m__000[0m�Two term…
14:27 Woodi rn: for <a b c>.values -> my $a { say $a }
14:27 p6eval niecza v22-33-gda13155: OUTPUT«[31m===[0mSORRY![31m===[0m��In parameter declaration, typename 'my' must be predeclared (or marked as declarative with :: prefix) at /tmp/EWI9KRBA8X line 1:�------> [32mfor <a b c>.values -> my[33m�[31m $a { say $a }[0m��Parse failed��»…
14:27 p6eval ..rakudo bf472b: OUTPUT«===SORRY!===␤Invalid typename in parameter declaration at line 2, near " $a { say "␤»
14:27 GlitchMr Even that has specific error O_o?
14:28 Woodi std: for <a b c>.values -> my $a { say $a }
14:28 p6eval std d38bbd0: OUTPUT«[31m===[0mSORRY![31m===[0m�In parameter declaration, typename 'my' must be predeclared (or marked as declarative with :: prefix) at /tmp/f_I0QS6dR5 line 1:�------> [32mfor <a b c>.values -> my[33m�[31m $a { say $a }[0m�Parse failed�FAILED 00:00 43m�»…
14:30 masak r: class my {}; my @a = my.new xx 3; for @a -> my $v { say "hep!" }
14:30 p6eval rakudo bf472b: OUTPUT«===SORRY!===␤Malformed my␤at /tmp/gw0T0SoKls:1␤»
14:30 masak getting my hopes up, and then I can't use 'my' as a type... :P
14:34 GlitchMr rn: say 6.7e-11 * 80_000 ** 2 / 50 ** 2
14:35 p6eval niecza v22-33-gda13155: OUTPUT«0.0001715200000000002␤»
14:35 p6eval ..rakudo bf472b: OUTPUT«0.00017152␤»
14:35 GlitchMr Does Perl 6 have G constant?
14:37 masak what G constant?
14:37 GlitchMr gravitional
14:38 GlitchMr https://en.wikipedia.org/w​iki/Gravitational_constant
14:38 masak oh, that one.
14:38 masak no, Perl 6 doesn't "have" that one. :)
14:38 masak but adding it to your program is a one-line fix.
14:39 GlitchMr gravitational*
14:41 Chillance joined #perl6
14:45 haybend joined #perl6
14:46 haybend hello
14:46 masak hay, haybend
14:47 Woodi hmm, for %cfg.values -> $a { say "A: $a" }; returns "A: string with hash keys" when %cfg comes from Config::INI. in script.
14:47 Woodi o/
14:47 masak rpn: say "hello, haybend!"
14:47 p6eval rakudo bf472b, niecza v22-33-gda13155, pugs: OUTPUT«hello, haybend!␤»
14:48 masak Woodi: do not understand. could you gist the exact script and exact output?
14:50 Woodi k
14:50 masak haybend left :/
14:52 Woodi http://pastebin.com/GhEi2CEB
14:54 FROGGS maybe the $a's are Pairs?
14:54 masak looks to me like it's another Hash.
14:55 masak a Hash in a Hash.
14:55 Woodi hmm
14:56 FROGGS hmmm, does that ini file have sections?
14:57 masak print $a.WHAT to find out, perhaps?
14:57 skids joined #perl6
14:58 Woodi adding: my $b = %cfg.values;  say $b.WHAT;  printed: List() additionally
14:59 FROGGS can you paste %cfg.gist ?
15:01 Woodi .perl on %cfg says:  ("_" => {"host" => "localhost", ...
15:01 tadzik there you go
15:01 [particle] joined #perl6
15:01 FROGGS so it looks like there is a section [_]
15:03 tadzik that means no section
15:03 tadzik toplevel stuff is held in imaginary section [_]
15:06 rindolf joined #perl6
15:07 FROGGS ahh
15:07 masak hm, I skimmed Config::INI, and even saw that, but didn't draw the appropriate conclusion...
15:07 masak so, working as intended.
15:07 Woodi tadzik: so how %cfg<port> get port number ? :)
15:07 tadzik er, what? :)
15:07 FROGGS %cgf<_><port>
15:07 FROGGS or so
15:07 tadzik you got the entire hash
15:07 Woodi works for me :)
15:07 tadzik ah, I see :)
15:08 tadzik yeah, that's how it's done
15:11 kaare_ joined #perl6
15:11 Woodi so pls tell me why my tests are passing ????
15:12 tadzik are they?
15:12 tadzik they aren't failing because you didn't run any ;)
15:12 tadzik "Looks like you planned 4 tests, but ran 0"
15:12 GlitchMr std: $_=*&!""%''+-();my@:=?\.[]^{}|<!>,#`||
15:13 p6eval std d38bbd0: OUTPUT«[31m===[0mSORRY![31m===[0mâ�¤"^" and "|" are non-associative and require parens at /tmp/b12sWHncsf line 1:â�¤------> [32m$_=*&!""%''+-();my@:=?\.[]^{}​|[33mâ��[31m<!>,#`||[0mâ�¤Opening bracket is required for #` comment at /tmp/b12sWHncsf line 1:â�¤------> [32m$_=*&!""…
15:13 Woodi tadzik: thats becouse of 'exit;' for testing tests... but when I put them in they wild they work :)
15:13 GlitchMr std: $_=*&sin!""%''^-();my@:=?\.[]+{}|<!>,#`[]
15:13 p6eval std d38bbd0: OUTPUT«[31m===[0mSORRY![31m===[0mâ�¤Unsupported use of bare 'sin'; in Perl 6 please use .sin if you meant $_, or use an explicit invocant or argument at /tmp/S4yEskBGgl line 1:â�¤------> [32m$_=*&sin[33mâ��[31m!""%''^-();my@​:=?\.[]+{}|<!>,#`[][0mâ�¤Unsupported use of . to c…
15:14 tadzik well, I can't help you if I don't see the code
15:14 Woodi probably EINCOMPLETETESTSUITE :)
15:15 stopbit joined #perl6
15:18 GlitchMr Just wondering, how could $_=*&!""%''^-();my@:=?\.[]|+{}<>,#`[] work
15:19 GlitchMr Or even better, $_=*&!""%''^-();my@:=?\.<>|+{},#`[
15:19 GlitchMr ]
15:22 wamba joined #perl6
15:35 xilo joined #perl6
15:38 hash_table joined #perl6
15:41 Woodi for me should it should be syntax error just for visual uglines. thes days compilers should catch such things !
15:41 jnthn What do you want us to do, detect more than N non-ascii chars in a row and say "==SORRY==\nThat's bloodly ugly!"? :)
15:41 * Woodi wonders when Woodi will learn to use English properly..
15:42 jnthn Woodi: Just hang around here long enough; our good examples will learn you an English in no time. :)
15:43 Woodi jnthn: to catch all strings being random collection of ascii characters :)
15:46 cognominal joined #perl6
15:49 Ulti Woodi have you seen perlcritic
15:53 Woodi Ulti: a very little of it :) but was scare to try it on my code :)
15:58 MayDaniel joined #perl6
16:00 kresike bye folks
16:06 masak Woodi: your concern is not significant enough. please find more important problems. :)
16:06 masak er, sorry. s/Woodi/GlitchMr/
16:07 masak GlitchMr: if you make up crazy ASCII and then complain that it doesn't work... that's your problem, not Rakudo's.
16:09 zjmarlow joined #perl6
16:18 tokuhiro_ joined #perl6
16:19 Woodi in last days I had a lot of complains about bugs in NativeCall; module... but today I must say that all that complains was a programmer error... now, from my perspective, NativeCall works works buglessy, it even operate in network with invalid uris and port numbers...
16:20 masak cool.
16:21 Woodi looks defaults was perfect on both sides :)
16:22 * Woodi disappers on Oblivion border &
16:23 spanner joined #perl6
16:23 spanner joined #perl6
16:25 rurban_ joined #perl6
16:30 perigrin joined #perl6
16:34 kaleem joined #perl6
16:35 perigrin joined #perl6
16:39 thou joined #perl6
16:54 GlitchMr masak: I'm complaining it does work
16:54 GlitchMr I don't know why exactly my@:'blah'; works
16:54 sftp joined #perl6
16:54 GlitchMr I meant
16:54 GlitchMr my@:='blah',;
16:55 masak I see nothing unusual about that.
16:55 moritz just a distinict lack of spaces
16:55 masak it's just `my @ := 'blah';` with all the spaces removed and an extraneous comma inserted.
16:55 Kharec joined #perl6
16:55 moritz which makes things harder to understand for the programmer, but not for the compiler
16:55 masak GlitchMr: my point is, why do you make up lots of ASCII crap without spaces, and then complain about it?
16:56 GlitchMr What my @ := 'blah'; makes anyway?
16:56 masak it binds 'blah' to an anonymous array.
16:56 GlitchMr http://codegolf.stackexchange.com/questi​ons/8915/write-a-program-that-uses-all-p​rintable-non-alphanumeric-ascii-symbols
16:56 moritz r: my @ := 'blah';
16:56 p6eval rakudo bf472b: OUTPUT«Type check failed in binding; expected 'Positional' but got 'Str'␤  in block  at /tmp/NWDcjWpt9k:1␤␤»
16:56 masak an anonymous positional variable, I should say.
16:56 moritz well, it tries to. And fails.
16:56 moritz r: my @ := 'blah', ;
16:56 p6eval rakudo bf472b:  ( no output )
16:56 moritz which is why you need the comma
16:57 moritz to construct a parcel
16:57 masak ah.
16:57 masak I retract my description "extraneous".
16:58 masak GlitchMr: though if it's brevity you want, 0 is shorter than 'blah'
16:59 masak r: my@:=0,
16:59 p6eval rakudo bf472b: OUTPUT«===SORRY!===␤Confused␤at /tmp/eMOmDTd0ml:1␤»
16:59 masak hm. I bet some of those spaces are required.
16:59 masak r: my @ := 0,
16:59 p6eval rakudo bf472b: OUTPUT«===SORRY!===␤Confused␤at /tmp/2RU2HI3bfH:1␤»
16:59 masak huh.
16:59 masak r: my @ := 0, ;
16:59 p6eval rakudo bf472b:  ( no output )
16:59 masak that looks like a bug to me, actually.
17:00 masak you can't end the file with a comma?
17:03 flightrecorder joined #perl6
17:04 FROGGS joined #perl6
17:04 FROGGS hi pals, long time no see \o/
17:05 masak FROGGS! \o/
17:05 masak r: my @array = 1, 2, 3,
17:05 p6eval rakudo bf472b: OUTPUT«===SORRY!===␤Confused␤at /tmp/7gpm1NFCDe:1␤»
17:05 masak r: my @array = 1, 2, 3, ;
17:05 p6eval rakudo bf472b:  ( no output )
17:05 * masak submits rakudobug
17:06 FROGGS meh, I try to get them closed! ;o)
17:06 masak eval: my @array = 1, 2, 3,
17:06 buubot_backup masak: 3
17:06 * masak thought so
17:06 FROGGS eval is perl5?
17:07 buubot_backup FROGGS: ERROR: Search pattern not terminated or ternary operator parsed as search pattern at (eval 20) line 1.
17:07 FROGGS well, thanks buubot_backup
17:07 masak FROGGS: that's not valid Perl 5 :P
17:07 * masak refers to http://perldoc.perl.org :)
17:07 masak r: { my @array = 1, 2, 3, }
17:07 p6eval rakudo bf472b:  ( no output )
17:08 geekosaur it's valid perl5, just doesn't do what you wish
17:08 masak r: 1, 2, 3,
17:08 p6eval rakudo bf472b: OUTPUT«===SORRY!===␤Confused␤at /tmp/WRiysxuok0:1␤»
17:08 masak r: 0,
17:08 geekosaur (with -w, "Useless use of a constant in void context")
17:08 p6eval rakudo bf472b: OUTPUT«===SORRY!===␤Confused␤at /tmp/PdOrQQTrg4:1␤»
17:08 masak shortest bug... ever? :)
17:09 FROGGS r: ,
17:09 p6eval rakudo bf472b: OUTPUT«===SORRY!===␤Confused␤at /tmp/mt5sXvR601:1␤»
17:09 FROGGS r: ;
17:09 p6eval rakudo bf472b:  ( no output )
17:09 geekosaur but that;s not a bug.  unless you coult LTA
17:09 FROGGS k
17:09 geekosaur count
17:09 FROGGS why is LTA ?
17:09 FROGGS what
17:10 geekosaur "less than awesome" error messages
17:10 geekosaur "Confused" is kinda uninformative
17:10 moritz std: ,
17:10 p6eval std d38bbd0: OUTPUT«[31m===[0mSORRY![31m===[0m�Preceding context expects a term, but found infix , instead at /tmp/qiLW17EyIB line 1:�------> [32m<BOL>[33m�[31m,[0m�Parse failed�FAILED 00:00 41m�»
17:10 masak well, STD wins in terms of awesome error message. :)
17:13 domidumont joined #perl6
17:13 FROGGS "less than awesome"?? really?
17:14 masak you must be new here :)
17:14 masak search RT for "LTA".
17:14 FROGGS ya, hundrets of times
17:15 FROGGS but you cant google for that, you only find crab
17:15 FROGGS crap
17:16 masak why would you google for it?
17:17 masak it's a local term around here.
17:17 FROGGS just to know what it means
17:17 masak I've only seen it used in #perl6.
17:17 FROGGS well, google should know and tell me ;o)
17:17 moritz but if you don't know what it is, you don't know it's local
17:17 masak troo.
17:17 FROGGS I guess they already know that I'm here
17:19 [Coke] FROGGS: why "leg" in your example, and not "neq" (for random seed)
17:19 masak s/neq/ne/
17:20 FROGGS [Coke]: just innocence
17:20 masak hm, I missed that.
17:20 masak `ne` would be clearer.
17:20 FROGGS its just that I remembered leg, and I thought ne was gone
17:20 moritz or !eq
17:20 [Coke] er, yes, sorry, my coldfusion is peeking through there with the NEQ.
17:20 [Coke] http://doc.perl6.org/langu​age/operators#infix%20leg - this fails on IE8 to take me to infix leg
17:21 masak here in Chrome as well.
17:21 FROGGS because of the space
17:21 FROGGS s/%20/+/
17:21 [Coke] the id is "infix+leg", not "infix leg"
17:21 masak http://doc.perl6.org/language/operators#infix+leg seems to be the actual anchor.
17:22 masak I see a patch in someone's future... :)
17:22 masak kudos to whoever fixes it.
17:22 [Coke] I leave it to FROGGS, as I'm in a no commit zone.
17:22 FROGGS well, I'll change it, because leg isnt the right, really
17:22 masak oh, that, too.
17:23 masak I meant the doc.perl6.org issue.
17:23 masak I bet moritz will be pleased if someone fixes it for him... :)
17:24 dalek roast: c5f5026 | (Tobias Leich)++ | S32-list/roll.t:
17:24 dalek roast: 'ne' operator instead of 'leg', [Coke]++
17:24 dalek roast: review: https://github.com/perl6/roast/commit/c5f5026b05
17:25 masak ah, here: https://github.com/perl6/doc/blob/m​aster/lib/Perl6/Documentable.pm#L29
17:25 masak that %20 there should be a +
17:26 * masak fixes
17:27 dalek doc: 3d6ca6b | (Carl Mäsak)++ | lib/Perl6/Documentable.pm:
17:27 dalek doc: [Documentable] fixed url: +, not %20
17:27 dalek doc:
17:27 dalek doc: See discussion at <http://irclog.perlgeek.de/​perl6/2012-11-20#i_6170204>
17:27 dalek doc: review: https://github.com/perl6/doc/commit/3d6ca6b266
17:27 brrt joined #perl6
17:30 rgrau joined #perl6
17:30 domidumont joined #perl6
17:40 japhb Anyone happen to know specific constructions that got faster in Rakudo between 2011.06 and now?  (I'm curious for Niecza as well, but I have not yet determined the cutoff date there, so "somewhat recently" I guess.)
17:40 japhb I need to make sure perl6-bench is giving me sane, comparable results from release to release.
17:41 timotimo are you working on benchmarks for rakudo and niecza?
17:42 japhb timotimo, Yes.  All the Perl family compilers, actually (from perl5 to Perlito to nqp to Rakudo and Niecza, and more variants between).
17:43 timotimo sweet! i'll be interested to see that
17:43 colomon_ joined #perl6
17:44 japhb timotimo, Right now I only have a few small benchmark *tests* in place, just so that I can build out the structure for comparing across compilers (done) and across releases of a compiler (WIP).  But now I'm getting to the stage of needing to see some real differences so I can confirm all my math is right.
17:44 masak japhb: there are five commits in Rakudo's commit log containing the substring "speed" between 2011.06 and now.
17:44 colomon joined #perl6
17:46 japhb masak, thank you, I had been checking the Changelog, and not finding it specific enough.  But you're right, the git log seems to be specific enough (at least for a few cases).
17:47 colomon joined #perl6
17:48 masak it's hard to tell how much it omits.
17:49 masak "fast" as a substring seems to get some hits, too.
17:51 jnthn If the ChangeLog contained every detail the commit log does, there's be little point to it :)
17:51 grondilu joined #perl6
17:51 jnthn Typically, it contains added features and notable fixes and speedups. Minor speedups and bug fixes don't cut it.
17:51 rgrau left #perl6
17:51 japhb jnthn, Oh, no argument there.  I'm just such a speed nut that it didn't occur to me that the Changelog wouldn't be shouting performance wins from the rooftops, as it were.  :-)
17:51 grondilu do you guys have a recommended pastebin here?
17:52 japhb grondilu, gist
17:52 jnthn japhb: When it's a 10% improvement, probably. When it's a 2% improvement, probably not :)
17:52 japhb jnthn, that's totally fair.
17:53 jnthn Yeah. Really though, exactly what makes it in is kinda fuzzy :)
17:56 * grondilu tries to solve rosalind.info/problems/nwck with a Perl6 grammar:  https://gist.github.com/4119616
17:57 grondilu ^ doesn't work has expected, though.  Any advice?
17:57 grondilu (it does not parse the '(dog,cat);' line)
18:05 jnthn grondilu: Don't immediately spot anything wrong, though I note that TOP doesn't anchor the match
18:05 grondilu 'anchor'?
18:06 jnthn ^
18:06 jnthn grondilu: wait, are you expecting it to parse all the lines?
18:07 jnthn heredocs don't split
18:07 grondilu no, just the one that should match.
18:07 grondilu oh yeah
18:07 jnthn OK, but it did
18:07 jnthn :)
18:07 grondilu I forgot to split
18:08 jnthn Well, or lines :)
18:08 jnthn Seems that it matches then :)
18:08 grondilu cool
18:11 cognominal joined #perl6
18:13 grondilu damn it it does not work anymore if I use stdin  (my @data = lines)
18:13 grondilu 'lines' does chomp, right?
18:15 jnthn yes
18:16 grondilu then something's wrong
18:21 grondilu ok.  lines returns me a single, multiline string.  :/
18:23 grondilu {echo foo; echo bar; } |perl -e 'say join ":", lines'
18:23 grondilu ^ this returned "foo\nbar".  I expected "foo:bar"
18:23 tadzik do you have perl6 aliased for perl?
18:24 grondilu no.  Bad copy-paste
18:24 * grondilu first wrote perl by mistake
18:24 grondilu {echo foo; echo bar; } |perl6 -e 'say join ":", lines'
18:25 grondilu also, forgot a space at the beginning:
18:25 grondilu { echo foo; echo bar; } |perl6 -e 'say join ":", lines'
18:25 tadzik works for me
18:26 grondilu you get foo:bar ??
18:26 tadzik yes !!
18:26 tadzik (:
18:26 grondilu weird
18:26 grondilu I don't
18:26 tadzik unless I use bash
18:26 tadzik then it doesn't work at all :)
18:26 tadzik (I use zsh otherwise)
18:27 jnthn dinner, bbl
18:27 grondilu what about:  echo -e "foo\nbar" |perl6 -e 'say join ":", lines'
18:27 grondilu ?
18:28 tadzik same
18:28 grondilu wtf
18:28 tadzik :)
18:28 leont joined #perl6
18:28 grondilu cal|perl6 -e 'say join ":", lines'
18:29 grondilu Am I missing something or what??
18:29 tadzik apparently
18:29 tadzik it all seems fine for me
18:29 grondilu :(
18:29 tadzik make it print lines.perl
18:29 tadzik and keepinvestigating
18:30 grondilu ("   November 2012      \nSu Mo Tu We Th Fr Sa  \n             1  2  3  \n 4  5  6  7  8  9 10  \n11 12 13 14 15 16 17  \n18 19 _\b2_\b0 21 22 23 24  \n25 26 27 28 29 30     \n                      ",).list
18:30 grondilu This is annoying
18:30 tadzik huh
18:30 tadzik what platform is that?
18:31 grondilu linux debian sid
18:31 tadzik I have no idea why it is so
18:31 moritz grondilu: what parrot version do you use?
18:31 tadzik as if your lines() didn't split
18:32 grondilu This is perl6 version 2012.10-151-g112307b built on parrot 4.8.0 revision RELEASE_4_8_0
18:34 moritz that's known to cause trouble; which is why we now recommend parrot 4.4.0 :/
18:35 grondilu That's quite a downgrade
18:36 tadzik we'll think about using newer when (if) Parrot gets threads :)
18:36 tadzik at least I'll think
18:38 grondilu Nevermind.  I'll slurp the file and split it.
18:39 * moritz does mind
18:40 masak yeah. regressions in Parrot aren't funny.
18:46 moritz r: m{ / }
18:46 p6eval rakudo bf472b: OUTPUT«===SORRY!===␤Unrecognized regex metacharacter / (must be quoted to match literally) at line 2, near " }"␤»
18:46 moritz r: m{ # }
18:46 p6eval rakudo bf472b: OUTPUT«===SORRY!===␤Regex not terminated at line 2, near ""␤»
18:46 moritz std: m{ # }
18:46 p6eval std d38bbd0: OUTPUT«[31m===[0mSORRY![31m===[0m�Regex not terminated at /tmp/Nb92L6EWhM line 1 (EOF):�------> [32mm{ # }[33m�[31m<EOL>[0m�Parse failed�FAILED 00:00 41m�»
18:46 dalek perl6-bench: 99cf729 | (Geoffrey Broadwell)++ | TODO:
18:46 dalek perl6-bench: Add TODO items for tests targetting Rakudo performance wins since 2011.06
18:46 dalek perl6-bench: review: https://github.com/japhb/pe​rl6-bench/commit/99cf72981d
18:58 zjmarlow joined #perl6
19:05 rurban_ joined #perl6
19:10 brrt left #perl6
19:18 sorear good * #perl6
19:19 FROGGS hi sorear
19:19 masak sorear! \o/
19:20 leont left #perl6
19:22 dalek perl6-roast-data: 4d24097 | coke++ | / (4 files):
19:22 dalek perl6-roast-data: today (automated commit)
19:22 dalek perl6-roast-data: review: https://github.com/coke/perl6​-roast-data/commit/4d2409740a
19:23 [Coke] S32-str/sprintf.rakudo aborted 125 test(s)
19:29 fgomez joined #perl6
19:32 masak [Coke]: unable to reproduce that.
19:33 masak here it runs all 125.
19:39 [Coke] masak - using the same roast version listed in https://github.com/coke/perl6​-roast-data/commit/4d2409740a ?
19:40 masak where do I see the roast version in that commit?
19:41 masak oh, is it the 6320c7c?
19:42 masak no, I seem to be one commit ahead of that. but the new commit only touches S32-list/roll.t, so it shouldn't matter.
19:45 [Coke] hokay.
19:45 [Coke] masak++
19:46 [Coke] hopefully it'll de-fluke tomorrow.
19:46 masak yes. holler if it doesn't.
19:47 FROGGS rakudo: say [leg] <a b c>
19:47 p6eval rakudo bf472b: OUTPUT«Increase␤»
19:47 [Coke] ah. if I run it on feather, it segfaults.
19:47 FROGGS is that right? two years ago you got -1
19:47 [Coke] (in the checkout used to do the roast test.)
19:47 [Coke] FROGGS: -1 is to Increase like 1 is to True
19:47 FROGGS hmmm
19:47 FROGGS so its still wrong
19:48 [Coke] it's a builtin enum for comparisons that I think only rakudo implements yet.
19:48 FROGGS I dont understand what I should get instead by reading https://rt.perl.org/rt3/Ti​cket/Display.html?id=79116
19:48 [Coke] r: say +Increase
19:48 p6eval rakudo bf472b: OUTPUT«-1␤»
19:48 [Coke] r: say +Decrease
19:48 p6eval rakudo bf472b: OUTPUT«1␤»
19:48 FROGGS ya, I know that
19:48 FROGGS zero is equal
19:49 FROGGS r: say +Same
19:49 p6eval rakudo bf472b: OUTPUT«0␤»
19:49 [Coke] that ticket was opened by colomon; have him tell you the expected output.
19:49 [Coke] (or, better, write a test)
19:52 [Coke] n: say [leg] <a b c>
19:52 p6eval niecza v22-33-gda13155: OUTPUT«[31m===[0mSORRY![31m===[0mâ�¤â�¤Cannot reduce with leg because structural infix operators are diffy and not chaining at /tmp/4iSXLyh5do line 1:â�¤------> [32msay [leg][33mâ��[31m <a b c>[0mâ�¤â�¤Unhandled exception: Check failedâ�¤â�¤  at /home/p6eval/niecza/boot/…
19:52 [Coke] r: say a leg b
19:52 p6eval rakudo bf472b: OUTPUT«===SORRY!===␤CHECK FAILED:␤Undefined routine '&b' called (line 1)␤Undefined routine '&leg' called (line 1)␤Undefined routine '&a' called (line 1)␤»
19:52 [Coke] r: say 'a' leg 'b'
19:52 p6eval rakudo bf472b: OUTPUT«Increase␤»
19:53 [Coke] r: say [<] 1, 3, 10
19:53 p6eval rakudo bf472b: OUTPUT«True␤»
19:53 masak FROGGS: I think in that ticket, colomon was expecting Increase, but when he got -1 he thought that was wrong.
19:53 [Coke] n: say [leg] <a q e>
19:53 p6eval niecza v22-33-gda13155: OUTPUT«[31m===[0mSORRY![31m===[0mâ�¤â�¤Cannot reduce with leg because structural infix operators are diffy and not chaining at /tmp/VUQuDzmJn1 line 1:â�¤------> [32msay [leg][33mâ��[31m <a q e>[0mâ�¤â�¤Unhandled exception: Check failedâ�¤â�¤  at /home/p6eval/niecza/boot/…
19:53 [Coke] r: say [leg] <a q e>
19:53 p6eval rakudo bf472b: OUTPUT«Increase␤»
19:54 masak oh! maybe leg is non-associating.
19:54 [Coke] I think maybe leg isn't supposed to be amenable to meta-ing in that fashion, perhaps.
19:54 masak that might be what the ticket is hinting at.
19:54 [Coke] er, what masak said. :)
19:54 masak it certainly doesn't say it outright.
19:54 [Coke] std: say [leg] <a q e>
19:54 p6eval std d38bbd0: OUTPUT«[31m===[0mSORRY![31m===[0m�Cannot reduce with leg because structural infix operators are diffy and not chaining at /tmp/pt4GA9QKBk line 1:�------> [32msay [leg][33m�[31m <a q e>[0m�Check failed�FAILED 00:00 42m�»
19:55 [Coke] so, I think std and n have what the ticket is looking for here.
19:55 masak but S03 agrees; infix:<leg> is non-associating.
19:55 masak [Coke]: *nod*
19:55 * masak adds this to the ticket
19:55 kurahaupo joined #perl6
19:55 [Coke] masak++
19:56 [Coke] FROGGS++
19:57 [Coke] masak - do you still think rakudo should provide a --target=pbc ?
19:58 [Coke] (RT #74386)
19:58 benabik joined #perl6
19:58 [Coke] nwc10: do you have an opensolaris box?
19:59 masak [Coke]: no. feel free to reject that ticket.
20:00 FROGGS [Coke]: I've got one somewhere... but I need to check if that vm is still healty
20:01 [Coke] FROGGS: there are 3 or 4 opensolaris tickets in the queue.
20:01 [Coke] even a "yes, this still occurs" would be helpful.
20:01 FROGGS k, I'll check
20:02 [Coke] rakudo: my @a = 1..10; say @a.PARROT #RT74430 fragment
20:02 p6eval rakudo bf472b: OUTPUT«No such method 'PARROT' for invocant of type 'Array'␤  in block  at /tmp/pU5NV7vbNT:1␤␤»
20:04 [Coke] r: sub foo(@items is copy) { @items.splice(0,1); } ; my @items = 'a'..'g'; foo(@items); say @items;
20:04 p6eval rakudo bf472b: OUTPUT«b c d e f g␤»
20:06 kurahaupo joined #perl6
20:08 masak the above might well be correct.
20:08 masak for objects, what's copied is the reference to the object.
20:10 bowtie joined #perl6
20:13 zby_home_ joined #perl6
20:14 [Coke] masak: ticket is RT#74430
20:14 masak I already looked at it :)
20:15 masak I dunno -- we seem pretty convinced in the past.
20:15 masak maybe it is a bug after all.
20:18 azawawi joined #perl6
20:18 azawawi hi
20:18 FROGGS hi
20:18 azawawi star: say "Hello world";
20:18 p6eval star 2012.10: OUTPUT«Hello world␤»
20:19 azawawi how can i benchmark code in perl 6?
20:19 tadzik use Benchmark :)
20:19 moritz https://github.com/perlpilot/benchmark/
20:19 masak it's on http://modules.perl6.org/
20:19 masak as are many other modules.
20:20 moritz star: use Benchmark;
20:20 p6eval star 2012.10: OUTPUT«===SORRY!===␤Could not find Benchmark in any of: /home/p6eval/star/lib/parrot​/4.6.0/languages/perl6/lib, /home/p6eval/star/lib/parrot/4.​6.0/languages/perl6/vendor/lib, /home/p6eval/star/lib/parrot/4​.6.0/languages/perl6/site/lib, /home/p6eval/.perl6/2012.10/lib, /hom…
20:20 azawawi is it known that $file-name eq any(@excluded) is way too slow? :)
20:21 jnthn The auto-threader is slow.
20:21 jnthn Probably because it was written in about an hour and nobody touched it since... :)
20:22 jnthn Maybe I should revisit it soonish :)
20:22 azawawi okay i was playing with find-file in farabi6
20:22 azawawi and it was way too slow...
20:23 azawawi so i started taking it apart and it was any(@excluded) # the one that excludes ['.git', '.svn'] that was too slow on folder with 200+ files
20:23 azawawi star: dir(cwd)
20:24 p6eval star 2012.10:  ( no output )
20:24 azawawi star: my @files = dir(cwd)
20:24 p6eval star 2012.10:  ( no output )
20:24 azawawi star: cwd
20:24 p6eval star 2012.10:  ( no output )
20:24 jnthn Missing a say? :)
20:24 benabik_ joined #perl6
20:25 azawawi http://paste.debian.net/211061/   # optimized version or so i think :)
20:27 azawawi http://paste.debian.net/211064/  # very slow but elegant version
20:28 azawawi star: say dir(cwd)
20:28 p6eval star 2012.10: OUTPUT«src lib bin include share version man␤»
20:28 azawawi star: say dir('/')
20:28 p6eval star 2012.10: OUTPUT«sys lost+found restoresymtable lib .webtermrc bin srv usr sbin run tmp media initrd proc boot etc mnt opt var dev selinux home root␤»
20:33 sorear star: say slurp('/etc/shadow')
20:33 p6eval star 2012.10: OUTPUT«Unable to open filehandle from path '/etc/shadow'␤  in method open at src/gen/CORE.setting:7354␤  in sub open at src/gen/CORE.setting:7601␤  in sub slurp at src/gen/CORE.setting:7626␤  in block  at /tmp/jRNRdVGKTC:1␤␤»
20:34 sorear star: say slurp('/etc/passwd').lines>>.subst(/\:.*/,'',:g)
20:34 bruges joined #perl6
20:34 p6eval star 2012.10: OUTPUT«root daemon bin sys sync games man lp mail news uucp proxy www-data backup list irc gnats nobody sshd azawawi runpugs andara munin tene japhb infinoid libuuid moritz tewk coke diakopter cygx mysql ash szabgab snarkyboojum tryrakudo flussence p6eval syslog klog drain…
20:35 FROGGS nice & handy ;o)
20:36 sorear ...I clearly should not be messing with p6eval right now
20:38 eternaleye joined #perl6
20:40 FROGGS gnight so far
20:40 cotto jnthn, you picked good time to bring up threads.  Parrot's got a threads branch that's ready for merging once nqp and rakudo are happy with it.
20:40 jnthn cotto: I...brought up threads? :)
20:41 tadzik cotto: well, the thing is that nqp is not happy :(
20:41 * jnthn thought it was tadzik who mentioned 'em earlier...
20:41 tadzik I mention them from time to time to see if people still remember :)
20:42 cotto tadzik, that's one of the things to fix
20:42 cotto http://niner.name/Hybrid_Th​reads_for_the_Parrot_VM.pdf
20:45 azawawi cool, green threads...
20:48 bluescreen10 joined #perl6
20:50 azawawi the best rakudo error message is "Confused. Please use std/viv -c" :)
20:51 cotto Could someone with an nqp commit bit change "typeid" to "type_id" in src/ops/nqp_dyncall.ops?
20:51 cotto gcc 4.7 doesn't like "typeid"
20:52 dalek nqp: 4f52b8c | rurban++ | src/ops/nqp_dyncall.ops:
20:52 dalek nqp: rename typeid variable to type_id
20:52 dalek nqp:
20:52 dalek nqp: gcc-4.7 and 4.8 reserve typeid
20:52 dalek nqp: review: https://github.com/perl6/nqp/commit/4f52b8c4d5
20:52 masak that was fast!
20:53 cotto I asked earlier in #parrot
20:54 rurban_ joined #perl6
20:55 masak yeah, I guessed that ;)
20:56 azawawi i have been reading quite a bit about parrot lately. Is PIR going away in favor of winxed and nqp? for a newbies parrot intro that is.
20:57 sorear rurban_! \o/
21:02 cotto azawawi, winxed and nqp are both much easier to be productive in than PIR.  It'll be hard to completely get rid of PIR, but higher-level languages are the recommended interface.
21:03 masak I, for one, welcome our new non-PIR overlords.
21:04 sorear underlords?
21:04 azawawi cotto: more productive but slower :)
21:05 masak it's only slower if you assume that humans are better at compiling than programs, in the long run.
21:05 sorear n: say Increase
21:05 p6eval niecza v22-33-gda13155: OUTPUT«Increase␤»
21:05 sorear n: say 2 leg 4
21:05 p6eval niecza v22-33-gda13155: OUTPUT«Increase␤»
21:05 sorear n: say 2 cmp 4
21:05 masak "slower" was a common argument against compilers a few decades ago.
21:05 p6eval niecza v22-33-gda13155: OUTPUT«Increase␤»
21:06 sorear humans are *still* better at activities requiring creative engineering
21:07 sorear there's a reason gmp and openssl have lots of CPU-specific assembly implementations of core functions
21:07 masak *nod*
21:08 masak sorear: let's meet again by the end of this century and see how humans stack up against programs wrt creative engineering. ;)
21:09 masak I'm not making any bets, just suggesting it'll be an interesting century.
21:13 sorear masak: did you see that jnthn++ found dates for yapc na 2013?
21:13 tipdbmp What's the difference between the parens and the brackets in a regex?
21:13 tipdbmp Something to do with the match object?
21:13 sorear Parens capture.
21:14 moritz tipdbmp: parens capture, brackets don't
21:14 sorear [] is the new (?:)
21:14 tipdbmp Oh, okay.
21:14 moritz nr: say 'ab' ~~ /(.)[.]/; say ~$0, ~$1
21:14 p6eval niecza v22-33-gda13155: OUTPUT«#<match from(0) to(2) text(ab) pos([#<match from(0) to(1) text(a) pos([].list) named({}.hash)>].list) named({}.hash)>␤Use of uninitialized value in string context␤  at /home/p6eval/niecza/lib/CORE.setting line 1295 (warn @ 5) ␤  at /home/p6eval/niecza/lib/…
21:14 p6eval ..rakudo bf472b: OUTPUT«「ab」␤ 0 => 「a」␤␤use of uninitialized value of type Any in string context  in block  at /tmp/RGfLbaAChZ:1␤␤a␤»
21:14 tipdbmp Tnx =).
21:14 moritz nr: 'ab' ~~ /(.)[.]/; say ~$0, ~$1
21:15 p6eval rakudo bf472b: OUTPUT«use of uninitialized value of type Any in string context  in block  at /tmp/6dKnQhR06g:1␤␤a␤»
21:15 p6eval ..niecza v22-33-gda13155: OUTPUT«Use of uninitialized value in string context␤  at /home/p6eval/niecza/lib/CORE.setting line 1295 (warn @ 5) ␤  at /home/p6eval/niecza/lib/CORE.setting line 266 (Mu.Str @ 15) ␤  at <unknown> line 0 (ExitRunloop @ 0) ␤  at /tmp/SytCMDkGoq line 1 (mainline @ …
21:15 moritz nr: 'ab' ~~ /(.)[.]/; say ~$0, defined $1
21:15 p6eval rakudo bf472b, niecza v22-33-gda13155: OUTPUT«aFalse␤»
21:15 azawawi_ joined #perl6
21:16 azawawi_ masak: every language can be productive if the supporting editing/compiling tools provide aids for it.... (i disconnected... :)
21:16 azawawi_ masak: try writing a Java program with and without eclipse and you'll see the difference in productivity
21:17 gaussblurinc_ joined #perl6
21:17 masak heh -- I wrote Java long before I started using Eclipse. I was in love with Eclipse for a little while, but now I prefer to go without it.
21:18 sorear masak: planning to come?  I hear visas can be a real drag
21:18 masak azawawi_: but I really thought you meant "slow" as in program performance.
21:18 jnthn .oO( visas are a drag, but for everything else there's mastercard... )
21:18 [Coke] jnthn: I think you'll Discover we don't like those kind of puns here.
21:18 azawawi_ masak: once you get used to eclipse quick fixes and assists... you'll never go back. Same with textmate snippets.
21:19 masak sorear: it would be fun to go to YAPC::NA sometime in the future, but I doubt it'll be in 2013. too much non-Perl 6 going on here right now. :)
21:19 jnthn [Coke]: eek, I promise never to make them in the Diners over there...
21:19 sorear masak: not even in June?
21:19 * [Coke] will try harder to get to yapc next year if others will be around.
21:19 masak sorear: correct.
21:19 masak I *think* I'll make it to YAPC::EU 2013.
21:19 jnthn masak: Best had, it's in Kiev :P
21:19 jnthn [Coke]: I'm pondering doing NA for the first time this year.
21:20 masak [Coke]: do many Americans call YAPC::NA "yapc", and are they aware they are doing that? :)
21:21 sorear I call yapcs yapc when it's clear which one I'm talking about
21:21 [Coke] masak: somewhat, and probably.
21:22 sorear I've been known to call Sacramento the capital...
21:23 [Coke] jnthn: hurm, 17 hour drive.
21:23 sorear [Coke]: I will definitely be at NA 2013.  undecided about EU 2013
21:27 masak will YAPC::NA 2013 be in Austin?
21:30 jnthn masak: yeah
21:34 [Coke] Austin? whoops, that's a lot more than 17 hours.
21:35 jnthn [Coke]: I'm sure however far it is for you, it's further for me :P
21:35 [Coke] jnthn: no doubt. But anything I can drive to, I'm more likely to go to than if I have to fly.
21:35 [Coke] and Austin is far enough that I'm guessing flying is the only sane option.
21:36 * [Coke] sadly cannot expense anything yapc related for work.
21:42 sorear [Coke]: you're in OR, right?
21:51 azawawi http://paste.debian.net/211107/   # OS.readdir benchmarked... perl6 vs winxed vs pir ... silly i know but fun
21:55 sorear azawawi: what about you, are you convenient to austin tx us june 2013?
21:57 azawawi I cannot travel atm
21:58 azawawi given how much my country is having revolutions and such...
22:02 * azawawi sleep &
22:03 xilo you live in austin sorear ?
22:04 sorear xilo: no, san diego
22:05 xilo ah
22:05 grondilu_ joined #perl6
22:05 grondilu_ left #perl6
22:05 xilo what's going on in austin then
22:05 sorear xilo: yapc::na 2013
22:05 xilo ah
22:06 sorear you coming?
22:06 * grondilu proposed an idea for fighting spam on RC:  http://rosettacode.org/wiki/Rosetta_C​ode:Village_Pump/Fight_spam#What_abou​t_a_programming-related_Turing_test.3F
22:06 xilo i live in austin
22:06 xilo maybe
22:08 sorear if you don't, we could still meet up
22:14 tokuhiro_ joined #perl6
22:14 broquaint joined #perl6
22:14 kcwu joined #perl6
22:15 snarkyboojum joined #perl6
22:15 tokuhir__ joined #perl6
22:15 bbkr joined #perl6
22:16 jnthn 'night o/
22:16 [particle]1 joined #perl6
22:19 sorear night jnthn
22:20 steven___ joined #perl6
22:20 moritz joined #perl6
22:23 tokuhir__ joined #perl6
22:27 tipdbmp I have a token sum { <sum> '+' <digit> | <digit> } # which gets into an infinitve loop =), how to avoid that?
22:27 masak don't write methods which call themselves first thing they do :P
22:27 masak or, in grammar terms, don't do left-recursion.
22:28 masak token sum { <digit>+ % '+' }
22:28 sorear Don't treat LL(infinity) grammar engines as if they were LALR(1) grammar engines
22:28 masak if you understand sorear's abbreviations, what sorear++ said ;)
22:29 sorear yacc and p6 use very different parsing technology.  what's optimal for one will make the other throw up.
22:29 tipdbmp sorear, this explains why this worked in Parse::Yapp module for Perl5 =).
22:31 bowtie joined #perl6
22:40 masak 'night, #perl6
22:40 gdey joined #perl6
22:42 sorear gdey: yapc na 2013 dates have been leaked: June 3-7
22:43 gdey Oh, nice. Where is it going to be held in 2013, again?
22:44 bluescreen10 joined #perl6
22:44 sorear Austin
22:44 thou joined #perl6
22:54 bluescreen10 joined #perl6
22:55 ifim joined #perl6
22:59 xilo joined #perl6
23:00 Pompel joined #perl6
23:13 xilo joined #perl6
23:13 whiteknight joined #perl6
23:19 xilo_ joined #perl6
23:40 Rix joined #perl6
23:51 aindilis joined #perl6
23:56 skids joined #perl6

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

Perl 6 | Reference Documentation | Rakudo | Niecza | Specs