Perl 6 - the future is here, just unevenly distributed

IRC log for #perl6, 2014-05-21

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:05 rurban joined #perl6
00:16 flussence vim points out a missing \n in the statusbar and it's configurable whether it adds one, don't know about vanilla vi
00:28 segomos what branch of panda do i need for moarvm?
00:34 hoelzro joined #perl6
00:38 [Coke] kurahaupo: looks like emacs agrees with ecilpse
00:40 segomos [Coke]: what happens if you do ':set list'
00:41 geekosaur as far as emacs is concerned, newline is just another character. appending after one is perfectly legit
00:45 segomos http://www.linuxquestions.org/questions/linux-s​oftware-2/extra-newline-at-end-of-file-718461/
01:07 klapperl_ joined #perl6
01:10 rurban joined #perl6
01:12 rurban1 joined #perl6
01:37 haroldwu joined #perl6
01:37 fhelmberger joined #perl6
01:49 hoverboard joined #perl6
01:50 Su-Shee_ joined #perl6
01:52 FROGGS_ joined #perl6
01:57 thou joined #perl6
02:07 bjz joined #perl6
02:13 rurban joined #perl6
02:19 bjz joined #perl6
02:25 araujo joined #perl6
02:33 TimToady masak: smartmatching was introduced in A04
02:35 rurban joined #perl6
02:37 TimToady so early 2002
02:39 rurban1 joined #perl6
03:11 aindilis joined #perl6
03:24 thou joined #perl6
03:25 segomos is there a panda branch that works for moarvm or am i installing some of these modules manually for space invaders?
03:36 Alula joined #perl6
03:45 xragnar joined #perl6
03:50 kaare_ joined #perl6
03:52 dwarring segomos: haven't tried space invaders myself yet ...
03:53 dwarring but latest panda does seem to be moar friendly
03:53 dwarring cd ~/git/panda # or whatever
03:53 dwarring perl6-m bootstrap.pl # works for me
03:54 dwarring then to install modules...
03:54 Sqirrel joined #perl6
03:54 dwarring perl6-m ./panda install ACME::Blah
03:57 segomos everytime i run panda i get 'moar vm not supported'
03:57 segomos i tried git reset --hard HEAD; git pull; #rebuild commands here
03:57 segomos and still get the error
03:57 segomos i've also tried blowing away the folder and re-cloning the git repo to no avail
03:59 dwarring hmm
04:05 dwarring are you able to bootstrap?
04:05 dwarring using either bootstrap.pl or rebootstrap.pl
04:06 dwarring segomos: ^^
04:09 segomos it errors out saying moarvm isn't supported
04:16 dwarring it does like an old panda version somehow
04:17 segomos do i need to build it with jvm perl6
04:17 segomos ?
04:18 segomos {tony@boondocks:~/Downloads/panda}% git reset --hard HEAD
04:18 segomos HEAD is now at 05af361 Merge pull request #81 from kanatohodets/master
04:18 segomos that is what i have from a git reset
04:19 dwarring same as mine
04:19 segomos {tony@boondocks:~/Downloads/panda}% perl6 bootstrap.pl
04:19 segomos ==> Bootstrapping Panda
04:19 segomos ==> Fetching File::Find
04:19 segomos ==> Building File::Find
04:19 segomos moar is an unsuppored backend VM.
04:20 dwarring I've just been using: perl6-m ./rebootstrap.pl
04:25 dwarring ...or perl6-j ./rebootstrap.pl  # java
04:28 PerlJam not that I think it'll solve this particular problem, but you might want to use rakudobrew:  https://github.com/tadzik/rakudobrew
04:29 segomos i'll give it a shot, reboostratp didn't work either
04:37 segomos PerlJam: does that need to be a sudo 'rakudobrew build' i fail make install
04:37 PerlJam What OS are you on?  It should try to install in $HOME/.rakudobrew if you're not root
04:38 segomos osx
04:39 segomos i'm not seeing a log file
04:39 PerlJam huh, dunno.  So far I've been using it on various linux with success
04:40 segomos i'll bug timotimo tomorrow
04:42 segomos make: write error
04:42 segomos Failed running make install at /Users/tony/.rakudobrew/bin/rakudobrew line 23.
04:44 rurban joined #perl6
04:46 rurban1 joined #perl6
04:49 bjz_ joined #perl6
04:50 hoverboard joined #perl6
04:58 kaare_ joined #perl6
04:58 Vlavv joined #perl6
05:40 bjz joined #perl6
05:41 rurban joined #perl6
05:45 FROGGS_ segomos: search for "write error" in the irc logs, there seems to be a bug in (g)make on osx
05:46 rurban1 joined #perl6
05:52 latha joined #perl6
06:11 lizmat joined #perl6
06:12 kaleem joined #perl6
06:17 lizmat fwiw, I have been seeing the "make install" error on OSX for a *long* time
06:17 lizmat I just run make install again, and it's fine
06:18 lizmat empirically, it only seems to happen if something in src/Perl6 needs to be compiled
06:18 lizmat those are my datapoints
06:20 lizmat breakfast&
06:28 dayangkun joined #perl6
06:32 masak morning, #perl6
06:32 masak lizmat++ # output bug
06:33 masak TimToady++ # A04
06:41 FROGGS joined #perl6
06:41 shalom1024 joined #perl6
06:48 masak shopping, flight &
06:54 darutoko joined #perl6
06:58 rurban joined #perl6
06:59 pdcawley joined #perl6
06:59 anaeem1_ joined #perl6
07:03 igorsutton joined #perl6
07:05 kurahaupo joined #perl6
07:08 lizmat joined #perl6
07:09 lizmat safe journeys, masak!
07:09 lizmat (and Kathy)
07:10 * moritz still hasn't met Kathy :(
07:10 moritz good morning everybody
07:11 zakharyas joined #perl6
07:14 Ven joined #perl6
07:25 kurahaupo Good ugt moritz
07:28 FROGGS morning #perl6
07:31 Ven 'morning, *.
07:38 fhelmberger joined #perl6
07:38 pdcawley joined #perl6
07:47 sergot morning o/
07:48 dalek roast: 7c27d66 | (Elizabeth Mattijsen)++ | S02-types/ (6 files):
07:48 dalek roast: Add tests for (Set|Bag|Mix)(|Hash).fmt
07:48 dalek roast: review: https://github.com/perl6/roast/commit/7c27d666e8
07:48 lizmat morning everybody!
07:49 hoverboard joined #perl6
07:56 tadzik good morning
08:01 rurban joined #perl6
08:03 dmol joined #perl6
08:06 lizmat tadzik o/
08:18 jnthn morning o/
08:21 FROGGS jnthn: btw, I updated MoarVM/loop_labels about what you mentioned yesterday
08:23 dalek rakudo/nom: a5103c3 | (Elizabeth Mattijsen)++ | src/core/ (2 files):
08:23 dalek rakudo/nom: Remove internal references to $*OS
08:23 dalek rakudo/nom:
08:23 dalek rakudo/nom: So that we don't generate deprecated warnings when just running core functions
08:23 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/a5103c3b93
08:23 lizmat FROGGS jnthn o/
08:23 jnthn FROGGS: nice
08:24 jnthn I'm currently giving my slides another look over for any misteaks, then will get back to labels :)
08:25 lizmat .oO( misteak = illegally procured tropical wood )
08:25 FROGGS *g*
08:28 xiaomiao mi-steak?
08:29 moritz mis-teak
08:34 dalek roast: 5284455 | moritz++ | S32-exceptions/misc.t:
08:34 dalek roast: unfudge tests for RT 121534
08:34 dalek roast: review: https://github.com/perl6/roast/commit/5284455d16
08:35 moritz m: try eval 'my class A {}; (-> &c, $m { A.new()(); CATCH { default { $m } } } )(A, "")'; say $!.perl
08:35 camelia rakudo-moar bc585f: OUTPUT«X::TypeCheck::Binding.new(symbol => "\&c", operation => "binding", got => A, expected => Callable)␤Saw 1 call to deprecated code during execution.␤=====================================​===========================================␤Sub eval (from GLOBAL)…»
08:35 donaldh joined #perl6
08:38 moritz lizmat: there's something wonky with subtests on the JVM
08:39 moritz paste forthcoming
08:40 moritz lizmat: http://perlpunks.de/paste/show/537c6684.362a.1b5
08:42 fhelmberger joined #perl6
08:43 dakkar joined #perl6
08:53 lizmat moritz: fwiw, it more indicates a problem with POST than with the test itsels
08:53 lizmat *itself
08:55 lizmat and because it gets executed twice, the subtest fails because the number of tests is different from the (sub)plan
08:57 moritz but isn't it throws_like that executes the test twice?
08:58 moritz j: my sub a { POST 0 }; a()
08:58 camelia rakudo-jvm bc585f: OUTPUT«(timeout)»
08:58 * lizmat is firing up a perl6-j
08:59 moritz huh, the perl6-j repl prints Postcondition '0' failed twice
08:59 lizmat so the test failure is correct  :-)
09:00 moritz lizmat: I still don't understand how   throws_like $anything, ...; can make the subtests execute twice
09:02 sergot p: my $str; LEAVE { $str ~= '1' }; LEAVE { $str ~= '2'; die 'foo' }
09:02 camelia rakudo-parrot bc585f: OUTPUT«foo␤  in block  at /tmp/Iz3KgdKDPp:1␤␤»
09:03 sergot p: my $str; try { LEAVE { $str ~= '1' }; LEAVE { $str ~= '2'; die 'foo' } }; say $str;
09:03 camelia rakudo-parrot bc585f: OUTPUT«21␤»
09:03 sergot m: my $str; try { LEAVE { $str ~= '1' }; LEAVE { $str ~= '2'; die 'foo' } }; say $str;
09:03 camelia rakudo-moar bc585f: OUTPUT«2␤»
09:05 rurban joined #perl6
09:08 pecastro joined #perl6
09:10 dalek rakudo/nom: d96ad15 | (Elizabeth Mattijsen)++ | src/core/Exception.pm:
09:10 dalek rakudo/nom: X::Assignment::RO thrown correctly on JVM/Parrot
09:10 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/d96ad152e6
09:11 lizmat moritz: found other problem and fixed ^^^
09:13 kurahaupo joined #perl6
09:16 FROGGS lizmat++
09:17 sergot lizmat++
09:26 lizmat moritz: looks like the code is only EVALled once, but throwing twice
09:29 lizmat moritz: suggest to rakudobug it and fudge for jvm
09:31 jnthn FROGGS: Thanks for fixes to MoarVM labels branch
09:31 FROGGS jnthn: well, of course
09:32 jnthn Got two functions I want to more carefully review for GC issues, then will be content :)
09:33 FROGGS k :o)
09:33 lizmat moritz: some more datapoints: it's two different exception objects being thrown
09:33 lizmat of the same type and content, but with different WHICH
09:34 jnthn FROGGS: yeah, it's fine
09:35 jnthn So, that's MoarVM bit reviewed :)
09:35 lizmat $ perl6 -e 'Backtrace.new.DUMP'
09:35 lizmat java.lang.StackOverflowError
09:35 FROGGS jnthn: I guess I should also rename the block_label to label_local in MoarVM/lib/MAST/Nodes.nqp:L599
09:36 jnthn FROGGS: Preferably
09:36 denis_boyun_ joined #perl6
09:36 FROGGS done
09:40 jnthn In NQP, for the Parrot support:
09:40 jnthn 512;513;514
09:41 jnthn those magic numbers are used in a couple of places. May want to just shove them in lexicals at the top of the file
09:42 dayangkun joined #perl6
09:42 jnthn ohh
09:42 jnthn a later commit did it :)
09:43 FROGGS jnthn: why don't you just compare against master?
09:43 FROGGS there is a lot of movement in the commits
09:43 jnthn FROGGS: I prefer to review commit by commit
09:43 FROGGS k
09:43 jnthn Yeah, I'm noticing...
09:43 FROGGS (that is why I wanna squish them)
09:43 jnthn A rebasing/cleaning up mighta been nice pre-review ;)
09:44 FROGGS next time, promised :o)
09:44 FROGGS lol, "next time"
09:46 lizmat moritz: more datapoints: looks like the "exit_handler" is run twice, the number of POST blocks is 1
09:46 lizmat so the POST block did not get push twice to the phasers
09:46 lizmat *pushed
09:47 kaare__ joined #perl6
09:50 lizmat marking as rakudobug now
09:54 jnthn FROGGS: Anyway, don't see anything in NQP patches that worry me
09:55 FROGGS \ö/
09:55 lizmat it's in #121935
09:55 synopsebot Link: https://rt.perl.org/rt3//Publ​ic/Bug/Display.html?id=121935
09:57 dalek roast: b1be572 | (Elizabeth Mattijsen)++ | S32-exceptions/misc.t:
09:57 dalek roast: Fudge POST throws_like test for #121935
09:57 dalek roast: review: https://github.com/perl6/roast/commit/b1be572ab6
09:57 synopsebot Link: https://rt.perl.org/rt3//Publ​ic/Bug/Display.html?id=121935
09:58 sergot m: END { say 1 }
09:58 camelia rakudo-moar a5103c: OUTPUT«1␤»
09:58 sergot m: LEAVE { say 1 }
09:58 camelia rakudo-moar a5103c: OUTPUT«1␤»
09:58 sergot m: my $str; try { END { $str ~= '1' }; END { $str ~= '2'; die 'foo' } }; say $str;
09:58 camelia rakudo-moar a5103c: OUTPUT«(signal )(Any)␤»
09:59 sergot p: my $str; try { END { $str ~= '1' }; END { $str ~= '2'; die 'foo' } }; say $str;
10:00 camelia rakudo-parrot a5103c: OUTPUT«(Any)␤===SORRY!===␤foo␤foo␤current instr.: 'print_exception' pc 140304 (src/gen/p-CORE.setting.pir:59595) (gen/parrot/CORE.setting:11382)␤called from Sub 'throw' pc 413908 (src/gen/p-CORE.setting.pir:173269) (gen/parrot/CORE.setting:11238)␤ca…»
10:00 jnthn FROGGS: In Rakudo, are we really sticking the match object into the Label object?
10:00 FROGGS jnthn: do we O.o?
10:00 FROGGS I'll have a look
10:00 jnthn +    has Mu $!match;
10:01 jnthn And it's being used like on in gist
10:01 sergot m: { LEAVE { say 11 }; END { say 12 } } ; { LEAVE { say 2 } }
10:01 camelia rakudo-moar a5103c: OUTPUT«11␤2␤12␤»
10:01 FROGGS jnthn: look at rakudo/src/Perl6/Grammar.nqp:1108:    token label {
10:01 FROGGS and:
10:01 FROGGS /home/froggs/dev/rakudo/sr​c/Perl6/Actions.nqp:1142:        if $*LABEL {
10:01 FROGGS /home/froggs/dev/rakudo/sr​c/Perl6/Actions.nqp:1143:            $past.push(QAST::WVal.new( :value($*W.find_symbol([$*LABEL])), :named('label') ));
10:02 FROGGS jnthn: but yeah, it keeps a match object, to get line numbers etc
10:03 FROGGS to print that:
10:03 FROGGS rakudo$ perl6-m -e 'FOO: while 0 {}; say FOO'
10:03 FROGGS Label<FOO>(at -e:1, '⏏FOO: while 0 {}; say FOO')
10:03 jnthn FROGGS: Right; that's going to cause the whole Match tree beneath it to be serialized. :(
10:03 FROGGS eww
10:03 jnthn And match objects point to QAST
10:03 jnthn So all of the QAST tree too
10:04 jnthn Well, beneath that point anyway
10:04 FROGGS okay... so I should pull the information that I need out of it in token label
10:04 jnthn So, think that needs to change
10:04 jnthn Just pass in the surrounding strings to the constructor?
10:04 FROGGS yeah
10:04 jnthn Also, I think we should have src/core/Label.pm
10:04 FROGGS jnthn: yes
10:04 jnthn Rather than it going in PseudoStash :)
10:05 FROGGS I think I said that I'll do that when that what I did is not too off :o)
10:05 FROGGS bah, what a crappy sentence :/
10:05 jnthn lol
10:05 mj41 joined #perl6
10:06 * FROGGS .oO( lol: redo lol )
10:06 rurban joined #perl6
10:09 jnthn FROGGS: In MapIter, where the $nextiter is created, you forget to pass on the label
10:09 jnthn my $nextiter := nqp::create(self).BUILD($!listiter, $!block, $!flattens);
10:09 xinming joined #perl6
10:10 jnthn Meaning that once we've nommed the first chunk of the list, the map loses its label...
10:10 jnthn Probably can be tested using a for on a gather/take
10:10 FROGGS ahh!
10:10 FROGGS okay, I'll add tests and the fix
10:11 ivanshmakov joined #perl6
10:11 jnthn \o/
10:11 jnthn That's all I have. :)
10:11 FROGGS O.o
10:11 FROGGS that means \o/?
10:11 FROGGS yay :D
10:12 jnthn Well, means I'm happy enough to merge it once the things I mentioned are fixed.
10:12 FROGGS sure sure
10:12 jnthn Up to you as relesae manager if you want to do it the day before the release ;)
10:12 FROGGS will do that today
10:13 FROGGS I will run star tests on that branch on all three backends beside spectesting it again, and will merge then if nothing pops up
10:13 lizmat joined #perl6
10:13 jnthn Excellent.
10:13 jnthn FROGGS++
10:14 * FROGGS is happy
10:14 lizmat m: END die
10:14 camelia rakudo-moar a5103c: OUTPUT«(signal )»
10:15 lizmat r: END die
10:15 camelia rakudo-jvm a5103c: OUTPUT«(timeout)»
10:15 camelia ..rakudo-moar a5103c: OUTPUT«(signal )»
10:15 camelia ..rakudo-parrot a5103c: OUTPUT«===SORRY!===␤␤No exception handler and no message␤␤current instr.: 'print_exception' pc 140304 (src/gen/p-CORE.setting.pir:59595) (gen/parrot/CORE.setting:11382)␤called from Sub 'throw' pc 413908 (src/gen/p-CORE.setting.pir:173269) (gen/parrot/…»
10:15 jnthn ooh, a SEGV
10:15 lizmat yup
10:15 lizmat apparently you're not allowed to die in the end
10:15 jnthn :P
10:16 lizmat it causes a rift in the space / time continuum
10:16 lizmat sergot++ for finding that one
10:16 lizmat as a comparison: $ perl -e 'END {die}'
10:16 lizmat Died at -e line 1.
10:16 lizmat END failed--call queue aborted.
10:17 jnthn m: END die; exit 1
10:17 camelia rakudo-moar a5103c: OUTPUT«␤  in block  at /tmp/XDwdzgcuE0:1␤␤Unhandled exception: ␤   at <unknown>:1  (/home/p6eval/rakudo-inst-1/languages/perl6/runtim​e/CORE.setting.moarvm:print_exception:4294967295)␤ from src/gen/m-CORE.setting:11459  (/home/p6eval/rakudo-inst-1/langua…»
10:18 sergot :)
10:18 sergot btw. I'm working on #121530 - could you give me some clues?
10:18 synopsebot Link: https://rt.perl.org/rt3//Publ​ic/Bug/Display.html?id=121530
10:20 lizmat S04:1406
10:20 synopsebot Link: http://perlcabal.org/syn/S04.html#line_1406
10:20 sergot $phasers are added correctly - I checked this. So it's something wrong with handling exceptions ( FROGGS++ )
10:20 sergot He also suggested to delay that "die" after all LEAVE phasers. Where should we do this?
10:21 lizmat so parrot gets it right (the comment is a bit unclear)
10:21 jnthn yeah.
10:26 sergot someone? :)
10:26 donaldh joined #perl6
10:26 jnthn It segfaults while checking a guard
10:26 jnthn 'cus a real NULL sneaks in somewhere
10:28 jnthn That shouldn't happen, but seems we get it now and then. So for the sake of getting the Moar release more robust, I'll throw in checks for it
10:28 lizmat $ MVM_SPESH_DISABLE=1 perl6 -e 'END die'
10:28 lizmat ===SORRY!===
10:28 lizmat Unhandled exception:
10:28 lizmat indeed, disabling SPESH fixes the pb
10:29 lizmat well, the segfault  :-)
10:29 jnthn yeah
10:30 jnthn Well, it's easy to make spesh guards robust enough to survive it.
10:30 jnthn I'll do that for now because I think this won't be the only case we see this issue.
10:30 jnthn And I'd rather we don't have a segfaulty release
10:32 jnthn yeah, tht does is
10:32 jnthn *that, it
10:35 lizmat jnthn: the following sometimes works, sometimes segfaults and sometimes gives:
10:35 lizmat await do for ^1000 { start { 1 for ^10000; .print } }
10:36 lizmat When invoking max, Provided outer frame 0x7fac74606660 (MVMStaticFrame max) does not match expected static frame type 0x7fac74600650 (MVMStaticFrame )
10:36 jnthn lizmat: Yeah, that error looks familiar; I've got other examples that produce it.
10:37 lizmat lunch&
10:38 jnthn Pushed a Moar patch for the sergot segfault
10:40 lizmat_ joined #perl6
10:43 mr-foobar joined #perl6
10:45 ivanshmakov joined #perl6
10:47 moritz "the sergot segfault"
10:47 * moritz likes it
10:47 moritz named bugs
10:47 sergot ;D
10:47 moritz much like the "double bacon bug"
10:48 tadzik oh yes :D
10:49 tadzik and a snowman comet
11:02 mr-foobar hey all, any idea about how peg's are different from perl6 rules ?
11:08 SamuraiJack__ joined #perl6
11:08 rurban joined #perl6
11:18 FROGGS mr-foobar: since I never played with PEGs, I can't tell
11:47 lizmat_ joined #perl6
11:48 lizmat_ joined #perl6
11:48 virtualsue joined #perl6
11:48 hoverboard joined #perl6
11:49 lizmat jnthn is on!
11:50 lizmat Learning by Porting Perl 5 modules to Perl 6
11:50 lizmat (first edition)
11:50 FROGGS hmmm??
11:51 FROGGS that is a new talk :o)
11:51 FROGGS (and a very awesome one most likely, in several ways)
11:51 tadzik "first edition" made me think it's a book :D
11:52 lizmat (first showing) then  :-)
11:52 lizmat it's about CSS::Tiny
11:52 lizmat remove "use strict"
11:52 lizmat s/package/class/
11:53 * FROGGS .oO( done )
11:53 lizmat almost  :-)
11:54 lizmat s/sub/method/
11:55 lizmat and self is there :-)
11:57 lizmat get rid of unpacking parameters in favour of using a signature
12:01 lizmat custom error structure can go
12:01 dmol joined #perl6
12:03 lizmat try to slurp :-)
12:08 Ven `method ! for_valid_years ( YearlyStatistics : & thing_to_do ) {̀` why do you need to specify the receiver here ?
12:09 lizmat not sure you *need* it, but maybe it is needed to select the right candidate ?
12:13 rurban joined #perl6
12:16 timotimo o/
12:17 lizmat timotimo  o/
12:17 timotimo Ven: the proper word for it is "invocant"
12:17 Ven timotimo: good. still, why so, in the role itself ?
12:17 LLamaRider joined #perl6
12:18 timotimo where do i find that code again?
12:18 Ven hum; one of jnthn's slides
12:18 timotimo mhm
12:18 timotimo i seem to recall that example
12:20 timotimo well, dunno
12:20 timotimo maybe it's just there for clarity
12:21 FROGGS it is just an alias for 'self', no?
12:21 timotimo not in this case
12:21 lizmat sometimes you need to name the invocant
12:22 lizmat e.g. if you want to use it as the left hand side of a pair  :-)
12:22 timotimo mhm
12:22 timotimo or if you have a method inside of a method and you want to disambiguate which "self" you are refering to
12:22 lizmat r: <[a..z]>.say   # shouldn't this be syntactic sugar for ("a".."z").say ?
12:22 Ven www.jnthn.net/papers/2014-fosdem-perl6-today.pdf
12:22 camelia rakudo-jvm d96ad1: OUTPUT«(timeout)»
12:22 camelia ..rakudo-{parrot,moar} d96ad1: OUTPUT«[a..z]␤»
12:22 mj41 joined #perl6
12:23 Ven lizmat: seems ambigous
12:23 Ven www.jnthn.net/papers/2014-fosdem-perl6-today.pdf  slide 52
12:24 btyler joined #perl6
12:25 lizmat r: /<[a..z]>/.WHAT.say   # it means that range in a char class
12:25 camelia rakudo-{parrot,jvm,moar} d96ad1: OUTPUT«(Regex)␤»
12:26 lizmat r: say "a" ~~ /<[a..z]>/, say "A" ~~ /<[a..z]>/
12:26 camelia rakudo-{parrot,jvm,moar} d96ad1: OUTPUT«Nil␤「a」␤True␤»
12:27 lizmat r: say "a" ~~ /<[a..z]>/; say "A" ~~ /<[a..z]>/
12:27 camelia rakudo-{parrot,jvm,moar} d96ad1: OUTPUT«「a」␤␤Nil␤»
12:29 FROGGS lizmat: <...> in regexes is not just about <[...]> cclasses..., you can also do <[a..z]+[A..F]-:Lo>
12:29 timotimo <[a..z]> could become syntactic sugar, i don't see any conflicts off-hand ...
12:29 lizmat I know  :-)
12:29 timotimo the < > syntax is supposed to be somewhat magical anyway
12:30 FROGGS so when we would make <[...]> equal in regexes and outside, then others might ask about all the other forms of assertions
12:30 lizmat I was just wondering: for symmetry it would make sense
12:30 lizmat wonder what TimToady's thoughts would be
12:31 mj41 Hi. My slides https://github.com/mj41/Perl6-Analytics-results ... jnthn, lizmat you are my heroes :-). Thanks for your work.
12:31 timotimo ooooh way cool
12:32 FROGGS mj41++
12:32 lizmat mj41: you're welcome and thanks!
12:32 lizmat mj41++ indeed
12:32 Ven mj41++
12:34 jnthn mr-foobar: http://perlcabal.org/syn/S05.html#Overview explains Perl 6 grammars/PEGs
12:35 jnthn Sheesh, time went fast in that talk...
12:35 lizmat yes, you took 45 mins
12:35 lizmat :-)
12:35 jnthn Yeah...didn't feel like it at all
12:35 lizmat and only did 2/3 of the slides ?
12:35 jnthn lizmat: I figured I may not get into the grammar transform.
12:36 lizmat indeed ....  and maybe that would be better in a separate presentation
12:36 FROGGS slide 15 is very interesting
12:36 guru joined #perl6
12:36 jnthn lizmat: It probably needs a whole hour to do that too. But it's better to be overprepared than underprepared. :)
12:36 Ven (I get that slides aren't available atm :P ?)
12:37 lizmat indeed... could source material for a book, actually  :-)
12:37 jnthn lizmat: ooh, yes
12:40 FROGGS mj41: that feature matrix is impressive!
12:41 mr-foobar jnthn: perl6 has these concepts of infix, prefix, postfix, circumfix, post circumfix ... are these native to peg or are they specific to rules ?
12:41 mj41 FROGGS: there is already link at http://perl6.org/compilers/features
12:41 mj41 including Niecza
12:42 FROGGS mj41: I know that one, but yours are nicer :o)
12:42 jnthn mr-foobar: Those are protoregexes - which are just another way to write an alternation that interacts well with inheritance.
12:42 mj41 FROGGS: I mean "Summary chart" link above "Legend" https://raw.githubusercontent.com/mj41/P​erl-6-GD/master/export/Summary%20-%20Com​pilers%27%20features%20-%20GoodData.png
12:42 jnthn They work using the normal longest token and other tie-breaking rules
12:44 mr-foobar jnthn: just wondering how token postfix:sym<[ ]> translates to peg/rules
12:45 timotimo that means that the rule postfix has, among others, a rule named "postfix:sym<[ ]>" in which "<sym>" refers to "[ ]"
12:45 FROGGS mj41: ahh, this thingy is not very visible, missed it
12:45 timotimo they are meaningful to the EXPR parser, i believe
12:46 timotimo not really a "native" thing, as the EXPR parser itself is part of perl6's grammar (more exact: inside HLL)
12:46 jnthn mr-foobar: If you think of postfix as an alternation, then postfix:sym<[ ]> is contributing an alternative.
12:46 timotimo but it's not expressed in perl6 rules, it's a method that operates on Cursor objects directly
12:46 jnthn mr-foobar: There's also an operator precedence parser, but it's just a consumer of these
12:46 rurban joined #perl6
12:47 jnthn mr-foobar: That is, it does a methodcall like .postfix, which then tries all of the alternatives
12:47 timotimo jnthn: does it seem like a worthwhile optimization whatsoever to know that in a submethod, the type of self eqv $?CLASS?
12:48 jnthn Better to leave spesh to "know" that...
12:48 timotimo fair enough.
12:48 jnthn There's nothing to stop somebody actually grabbing it out of the submethod table and doing evil.
12:49 jnthn Since spesh is dynamic opt it can survive that.
12:49 timotimo so we just log the value of typeof self and see it's the very same type object 5 times in a row and the trace log thingie specializes for that?
12:50 jnthn 4 times, but yes
12:50 timotimo that seems fair :)
12:52 jnthn I build this presentation in a rather different way to usual; can find it at https://github.com/jnthn/css-tiny-presentation
12:52 FROGGS lol, someone put a label in asyncops.pm O.o
12:53 timotimo i'll be out renovating again today, maybe i'll have a bit of leftover brain space to crunch some questions
12:53 timotimo jnthn: got suggestions what i could be thinking about?
12:53 FROGGS git log --reverse -p --grep="^[^[][^m][^e][^t][^a]" <--- hehe
12:53 jnthn :P
12:54 Ven jnthn++ # no gh-pages yet :P ?
12:55 jnthn Ven: oh, that might make more sense than a PDF
12:55 * jnthn wonders how to set that up..
12:55 Ven I think github has tutorial with a button
12:55 timotimo jnthn: you didn't actually put an index.html into the presentation dir :)
12:56 jnthn oh...
12:56 jnthn oh yeah
12:56 jnthn 'cus it's a generated file
12:56 jnthn d'oh
12:56 Ven yea
12:56 lizmat FROGGS: was it me?
12:56 mj41 jnthn: My parser of https://github.com/mj41/Git-Repository-LogRaw/​blob/master/lib/Git/Repository/LogRaw.pm#L175 is a bit bigger :-). But not Perl 6 yet.
12:56 Ven hence the demand for a generated file in gh-pages :)
12:57 jnthn mj41: Yeah, mine does the bits I needed ;)
12:57 timotimo wow, that tool runs fast
12:57 FROGGS lizmat: no idea, just was a bit unexpected for me :o)
12:57 lizmat ah, yes
12:57 lizmat I put that there, so that I can optimiza that when we have labels
12:57 lizmat this was from the time were labels were already parsed, not too long ago
12:58 jnthn timotimo: Actually added index.html now
12:58 jnthn timotimo: Yes, couple of seconds for me :)
12:59 jnthn I'd be happy to see the tool taken and used by others :)
13:11 Ven jnthn: should I dl rakudo & clone the repo to build the index.html, or is it available somewher ,
13:12 Ven e?*
13:12 timotimo one of the slides is too tall for my screen :\
13:12 timotimo well, barely
13:12 jnthn Ven: Oh, I pushed the index.html already
13:13 jnthn just get lates
13:13 jnthn But any recent Rakudo should do it
13:13 timotimo lots of space above the title, but the code box touches the bottom
13:13 jnthn If you want to re-generate
13:13 jnthn timotimo: yeah...was first time I tried out using something != PowerPoint.
13:13 jnthn timotimo: Was useful given I wanted to generate the slides from the repo history
13:14 jnthn timotimo: But I'm not especially sold. :)
13:14 timotimo aye
13:16 timotimo nice slides :)
13:16 moritz URL?
13:16 Ven yay :) thanks jnthn
13:16 * moritz behind on backloggin
13:17 * Ven would still love a git checkout -b gh-pages && git push -u origin gh-pages :P
13:18 FROGGS moritz: https://github.com/jnthn/css-tiny-presentation
13:18 jnthn Ven: Done that :)
13:19 jnthn Sould be at http://jnthn.github.io/css-ti​ny-presentation/presentation but can take 10 mins or so
13:20 Ven yep
13:21 Ven thankies :)
13:21 cognominal joined #perl6
13:22 telex joined #perl6
13:26 skids joined #perl6
13:27 masak hello from back-in-Sweden :)
13:28 mj41 hello masak And thanks for visiting us.
13:29 FROGGS hi masak :o)
13:31 lizmat jnthn: after signal(SIGINT).tap.close, Control-C should not be caught anymore, should it ?
13:32 lizmat or are we missing the "closing" logic on the signal tap still ?
13:32 masak mj41: my pleasure.
13:33 jnap joined #perl6
13:33 jnthn lizmat: Indeed
13:33 jnthn I think may be missing in MoarVM *and* the thing to call nqp::cancel in Rakudo.
13:33 lizmat ok, that explains
13:34 lizmat was going to do a lightning talk about using signal to have a loop iteration finish
13:35 jnthn hmm
13:35 lizmat I will avoid the issue
13:35 * jnthn debating whether to show his slide making from git diff tool in a lightning talk
13:36 jnthn Ven: Be happy: http://jnthn.github.io/css-ti​ny-presentation/presentation/
13:36 Ven jnthn: hehe, I was actually reading them from a zip, but it's better with css and images :)
13:36 timotimo jnthn: it would be cool if you did
13:37 lizmat https://gist.github.com/li​zmat/48b2c6e3a246eb9f0e25
13:37 cognominal joined #perl6
13:38 mj41 time perl6 -e 'say $_ for 1..2_000_000;' > /dev/null
13:38 mj41 real0m49.057s
13:38 mj41 time perl -MMoose -e 'print "$_\n" foreach 1..2_000_000' > /dev/null
13:38 mj41 real0m0.622s
13:39 lizmat clearly we have optimisation to do with say
13:39 lizmat mj41: what does "time perl -MMoose -e1" say ?
13:40 tadzik jnthn: s/distnace/distance/ on slide 19 :)
13:40 mj41 time perl -MMoose -e"say"
13:40 mj41 real0m0.228s
13:40 pmichaud good morning, #perl6
13:40 yoleaux 12 Apr 2014 03:02Z <raiph> pmichaud: I've tweaked a rakudo.org link per average++'s comment at http://irclog.perlgeek.de/​perl6/2014-04-12#i_8575582
13:40 mj41 time perl6 -e 'say'
13:40 mj41 real0m0.354s
13:41 lizmat pmichaud!
13:41 lizmat how are the robots?
13:41 moritz taking over the world!
13:41 pmichaud we're finally done with the season.  :)
13:41 FROGGS hi pmichaud
13:42 Ven hai :)
13:42 pmichaud at the world championship, the team ended up with 2nd place in Programming, and 6th place in the robot game.
13:42 pmichaud we're.... quite pleased.
13:42 jnthn o/ pmichaud :)
13:42 lizmat pmichaud++ and team ++
13:42 moritz pmichaud: congratulations to your team
13:43 jnthn lizmat: Yes, the say is certainly to blame
13:43 pmichaud I'm trying to build rakudo for parrot and getting an icu error.  known?  Do I need to go read docs?  ;-)
13:43 masak pmichaud! \o/
13:44 jnthn pmichaud: First that I've heard of it.
13:44 lizmat is icu installed?
13:44 jnthn pmichaud: Where are you getting it?
13:44 lizmat is it on OS X?
13:44 FROGGS pmichaud: add this symlink:
13:44 FROGGS ll /usr/include/unicode
13:44 FROGGS lrwxrwxrwx 1 root root 37 Nov 24 10:06 /usr/include/unicode -> /usr/include/x86_64-linux-gnu/unicode/
13:44 pmichaud kubuntu 14.04... afaik libicu is installed
13:44 jnthn FROGGS++ # knowing stuff
13:44 masak why the heck is that needed?
13:44 masak and what can we do about it?
13:44 pmichaud FROGGS: okay... that sounds like solving the wrong problem.
13:45 masak +1
13:45 jnthn masak: Use MoarVM :P
13:45 FROGGS masak: parrot uses icu-config to locate it, and icu-config tells that there would be a /usr/include/unicode which is not true anymore
13:45 FROGGS instead, parrot should use pkg-config to query libicu details
13:45 pmichaud FROGGS: so, it's a debian package bug?
13:45 jnthn Ugh, so icu-config gives wrong answers?
13:45 sergot m: Bla::Bla.new
13:45 camelia rakudo-moar d96ad1: OUTPUT«===SORRY!===␤Could not find symbol '&Bla'␤»
13:45 FROGGS no
13:46 FROGGS pmichaud: only pkg-config can give correct results, because the include paths depend on arch, which icu-config can't handle
13:46 timotimo jnthn: i seem to recall seeing that we do a wait for the output file descriptor to be "available" again after printing stuff
13:46 sergot I got this:
13:46 sergot $ perl6 -e 'Bla::Bla.new'
13:46 sergot No such method 'throw' for invocant of type 'Any'
13:46 pmichaud FROGGS: so, it's a parrot bug
13:46 FROGGS so, parrot should first look for pkg-config, and fall back to icu-config
13:46 timotimo i *think* we do that twice for the say, because we print the "\n" separately
13:47 FROGGS pmichaud: correct, and there is already an issue
13:47 sergot Ok, I know why,nvm
13:47 timotimo lizmat: could you benchmark print "$_\n" instead of say "$_"?
13:47 lizmat will do
13:47 pmichaud https://github.com/parrot/parrot/issues/1014   # okay, got it
13:48 * pmichaud wonders if it's worth tracking that bug down or if he should just ignore Parrot.
13:48 FROGGS timotimo / lizmat: say is 34s here, print is 24s
13:48 masak jnthn: :P
13:48 lizmat timotimo: print "$_\n" about twice as fast
13:48 * lizmat goes off to tweak &say
13:49 timotimo lizmat: but be careful; if the string is very long, the string concatenation operation may be super expensive, too
13:49 timotimo that's worth benchmarking, too.
13:49 FROGGS jnthn: that way of sliding is very cool!
13:49 masak pmichaud: I think it's worth it to the extent people (a) still care about Parrot, (b) still depend on Parrot. but those two are unknowns to me.
13:49 jnap joined #perl6
13:50 pmichaud masak: those are unknown to me also :)
13:50 pmichaud lots of things are unknown to me at the moment... I've been away too long :)
13:50 masak pmichaud: it's really nice to have you back.
13:50 jnthn lizmat: https://gist.github.com/jnthn/41dbb7ab7150f6cfd41c
13:50 timotimo sadly due to the fact that $*OUT is dynamic, we can't turn a say into a print at compile time when the last bit of the string is constant and just put a \n into the string constant
13:50 jnthn lizmat: That gets about 1/3 of the time off
13:51 jnthn timotimo: This is all rather silly in so far as at the VM level we have a sayfh op
13:51 jnthn timotimo: Which I guess we are not using...
13:51 timotimo oh, right.
13:51 FROGGS hehe
13:52 FROGGS pmichaud: it could take a while to read all the changelogs :o)
13:52 FROGGS especially because they get longer and longer these days
13:53 treehug88 joined #perl6
13:53 timotimo jnthn: good idea to fetch the $*OUT only once
13:53 jnthn Grr, the C profiler I use doesn't support redirecting the output to NULL
13:53 jnthn uh, NUL
13:54 FROGGS just don't look at the output :P
13:56 jnthn So, some of it is costly IO, but even with it actually spewing the output to the console for real, 8.76% of the time is spent in MVM_string_replace o.O
13:57 FROGGS huh
13:57 pmichaud FROGGS: oh, I've been keeping up with a good bit of the commit messages.
13:58 pmichaud Stage parse      :  52.588
13:58 pmichaud wow
13:58 pmichaud that's... good.
13:58 FROGGS if you would enable CGOTO in the Makefile.in, it would drop a few more seconds
13:58 pmichaud moarvm++
13:59 cognominal pmichaud, what is a fate edge in a NFA?
13:59 FROGGS I've seen 43s once
13:59 pmichaud cognominal: I have no idea.
13:59 FROGGS (and without CGOTO I am usually between 48s and 50s)
13:59 pmichaud cognominal: I've been absent for almost a year, so don't expect me to have detailed answers right now :)
14:00 pmichaud anyone going to yapc::na, ooc?
14:00 FROGGS me not
14:00 jnthn pmichaud: My box at home gets that in around 35s ;)
14:00 * jnthn refrains from pointing out that pmichaud++ implemented fate edges in NFA :P
14:00 cognominal pmichaud: well, you may have it in mind.  In https://github.com/perl6/nqp/b​lob/master/src/QRegex/NFA.nqp   fate edges seem special cased.
14:01 thou joined #perl6
14:01 cognominal pmichaud++ anyway
14:01 * pmichaud refrains from pointing out that the past year has been... well, the past year.  :)
14:01 jnthn cognominal: Fate edges mean "we have reached a match point"
14:01 cognominal ok
14:01 jnthn pmichaud: That and I've probably hacked on NFA sufficiently that memory may not help ;)
14:02 jnthn cognominal: That is, that particular path through the NFA was a success
14:02 jnthn cognominal: May happen many times for a given candidate if there's stuff like quantifiers involved
14:03 pmichaud iirc, "fate" just means this is a point where the current NFA could be spliced onto another subsequent one
14:05 virtualsue joined #perl6
14:06 colomon pmichaud!  \o/
14:07 [Coke] anyone want to be co-admin on planeteria?
14:07 PerlJam gutentag #perl6
14:07 PerlJam pmichaud! LTNS!
14:08 pmichaud PerlJam: indeed
14:08 xenoterracide joined #perl6
14:08 PerlJam [Coke]: What does "co-admin" mean for the prospective victim^Wvolunteer?
14:08 moritz [Coke]: me
14:09 moritz PerlJam: it probably means that he/she can add and remove feeds
14:13 nwc10 good *, Pm
14:13 kaleem joined #perl6
14:15 lizmat looking at a lightning talk about log4perl...   now eh...  isn't that a Supply ?   :-)
14:16 autark joined #perl6
14:16 lizmat with stuff added, granted that
14:17 jnthn lizmat: sounds kinda right :)
14:18 rindolf joined #perl6
14:21 [Coke] (coadmin) you add or update feeds when some asks you.
14:23 masak "LTNS" sounds like a network protocol... :)
14:23 [Coke] moritz: now in the club.
14:23 PerlJam masak: it is ... kinda
14:24 FROGGS sounds oraclish
14:26 spider-mario joined #perl6
14:27 PerlJam [Coke]: Sounds low maintenance enough that I too volunteer. :)
14:37 dalek joined #perl6
14:42 rindolf left #perl6
14:42 jnthn lizmat: Here's a slightly more radical patch https://gist.github.com/jnthn/cd062dfa6bccf8f95e2d
14:44 jnthn (Which makes further savings.)
14:45 btyler joined #perl6
14:48 * lizmat will look later, after breaking up the workshop  :-)
14:48 jnthn nooooo....don't break up the workshop! :P
14:49 lizmat :-)
14:50 masak lizmat broke the workshop?
14:50 masak maybe you can get a refund...
14:51 lizmat haven't done it yet  :-)
14:54 cognominal r:  grammar A { token TOP { <x> }; proto token x {*}; token x:sym<a> { a }; token x:sym<b> { b }; };  $/ := A.parse("a"); say(?$/); my %h := $/<x>.hash(); say(+%h); for %h.keys { say($_) }
14:54 camelia rakudo-{parrot,jvm,moar} d96ad1: OUTPUT«True␤0␤»
14:54 masak m: my %h = foo => 1, bar => 2; say (-<< %h).perl
14:54 camelia rakudo-moar d96ad1: OUTPUT«("foo" => -1, "bar" => -2).hash␤»
14:54 lizmat Richard Jellinek at the CZPW just announce that PetaMem will convert the Word2Num and Num2Word modules to Perl 6 in the coming months
14:55 FROGGS \o/
14:55 FROGGS Convert all the things! /o/
14:55 lizmat end of CZPW&
14:56 jnthn PetaMem++ \o/
14:57 masak Richard++
15:01 * PerlJam looks at https://metacpan.org/source/PETAMEM/Lingua-EN​G-Word2Num-0.0682/lib/Lingua/ENG/Word2Num.pm
15:01 jnthn eow &
15:02 PerlJam ah, it uses Parse::RecDescent, so they should be used to not-very-fast performance  ;-)
15:02 PerlJam anyway, if they all have a similar structure, then the conversion shouldn't take too long.
15:03 dalek rakudo/loop_labels_test: 2ede82a | (Tobias Leich)++ | src/core/MapIter.pm:
15:03 dalek rakudo/loop_labels_test: pass along labels to $nextiter
15:03 dalek rakudo/loop_labels_test: review: https://github.com/rakudo/rakudo/commit/2ede82a5d4
15:03 dalek rakudo/loop_labels_test: 6ab9ccd | (Tobias Leich)++ | src/ (2 files):
15:03 dalek rakudo/loop_labels_test: refactor Label to not keep an NQPMatch
15:03 dalek rakudo/loop_labels_test: review: https://github.com/rakudo/rakudo/commit/6ab9ccd6aa
15:04 PerlJam (heck, I bet if someone had organized a hackathon around it, they probably could have gotten it done immediately after czpw)
15:04 masak probably :)
15:04 masak anyway, when it happens, I think #perl6 will be happy to review the result ;)
15:04 PerlJam yep!
15:05 PerlJam I'm half tempted to do the english one myself just 'cuz
15:14 masak PerlJam: I'm sure they wouldn't mind ;)
15:16 cognominal r:  grammar A { token TOP { <x> }; proto token x {*}; token x:a { a }; token x:b { b }; };  $/ := A.parse("a"); say(?$/); for %($/) { say($_.key) }
15:16 camelia rakudo-{parrot,jvm,moar} d96ad1: OUTPUT«True␤x␤»
15:17 btyler joined #perl6
15:18 cognominal When matching a proto regex, is there a standard way to know from the match value which regex  matched? Here:  x:a
15:19 igorsutton joined #perl6
15:19 Ulti those PetaMem modules already appear to be doing Perl6esk things http://cpansearch.perl.org/src/PETAMEM/Lingua-​ENG-Word2Num-0.0682/lib/Lingua/ENG/Word2Num.pm
15:20 Ulti oh thats for exports
15:25 masak dinner &
15:35 FROGGS joined #perl6
15:41 kaare_ joined #perl6
15:48 mj41 joined #perl6
15:49 sjohnson joined #perl6
15:49 guru joined #perl6
15:53 cognominal bbl&
16:04 btyler joined #perl6
16:06 kaleem joined #perl6
16:11 REPLeffect joined #perl6
16:14 SamuraiJack__ joined #perl6
16:27 FROGGS[mobile] joined #perl6
16:35 mj41 jnthn: http://www.ceskypivnifestiv​al.cz/en/czech/prague-2014/ ... sorry for noticing this so late :-(
16:36 guru joined #perl6
16:39 ivanshmakov joined #perl6
16:41 hoverboard joined #perl6
16:41 Rotwang joined #perl6
16:45 molaf joined #perl6
16:47 ivanshmakov joined #perl6
16:49 FROGGS Exception in thread "Timer-571" java.lang.OutOfMemoryError: GC overhead limit exceeded # :o(
16:50 ppabian joined #perl6
16:58 denis_boyun joined #perl6
17:03 tadzik what
17:03 tadzik :D
17:04 tadzik "I'm the emulator of infinite memory, I'll throw an OOM for you"
17:05 tadzik or is it "GC took too long, so I'll just kill your program so you don't have a prolonged GC pause?" :P
17:05 Guest32241 joined #perl6
17:08 vendethiel joined #perl6
17:11 flussence .oO( "Halting problem preempted" )
17:11 denis_boyun_ joined #perl6
17:13 denis_boyun joined #perl6
17:18 denis_boyun__ joined #perl6
17:22 sjohnson joined #perl6
17:23 zamolxes joined #perl6
17:25 mj41 joined #perl6
17:31 denis_boyun joined #perl6
17:35 SamuraiJack__ joined #perl6
17:41 shalom1024 joined #perl6
17:43 guru joined #perl6
17:44 hoverboard joined #perl6
17:50 FROGGS jnthn: there is a regression in r-m*, LWP::Simple fails t/get-w3-latin1-utf8.t
17:50 kaleem joined #perl6
17:50 ajr_ joined #perl6
17:56 btyler joined #perl6
18:05 denis_boyun_ joined #perl6
18:05 FROGGS again some jvm gc weirdness (with a backtrace) https://gist.github.com/FR​OGGS/9453c10577b1b729acf2
18:06 treehug88 joined #perl6
18:15 denis_boyun_ joined #perl6
18:20 raiph joined #perl6
18:22 dmol joined #perl6
18:23 FROGGS jnthn: spesh bug that causes the r-m* regression: https://gist.github.com/FR​OGGS/9228162347e3b4c03a18
18:24 guru joined #perl6
18:40 hoverboard joined #perl6
18:45 btyler joined #perl6
18:45 mj41 joined #perl6
18:52 dalek nqp: 1783628 | (Tobias Leich)++ | / (11 files):
18:52 dalek nqp: implement labeled loops and throwing of labels as payload
18:52 dalek nqp:
18:52 dalek nqp: Labels are lexcially installed as instances of type NQPLabel, and are glued to
18:52 dalek nqp: the exception handlers of 'while', 'until' and 'for' loops. When an exception
18:52 dalek nqp: with a label as payload is thrown, the handler that holds the identical label
18:52 dalek nqp: will be in charge.
18:52 dalek nqp: review: https://github.com/perl6/nqp/commit/1783628e66
18:58 FROGGS m: for 1 { say &?BLOCK }
18:58 camelia rakudo-moar d96ad1: OUTPUT«[31m===[0mSORRY![31m===[0m Error while compiling /tmp/HgIBwtRZNaâ�¤Undeclared routine:â�¤    &?BLOCK used at line 1â�¤â�¤Â»
19:03 dwarring joined #perl6
19:03 dalek rakudo/nom: 196b4ff | (Tobias Leich)++ | / (11 files):
19:03 dalek rakudo/nom: implement labeled loops and throwing of labels as payload
19:03 dalek rakudo/nom:
19:03 dalek rakudo/nom: Labels are lexcially installed as instances of type Label, and are glued to the
19:03 dalek rakudo/nom: exception handlers of e.g. 'while', 'until' and 'for' loops. When an exception
19:03 dalek rakudo/nom: with a label as payload is thrown, the handler that holds the identical label
19:03 dalek rakudo/nom: will be in charge. Introspecting the labels of a block is NYI, since we do not
19:03 dalek rakudo/nom: have &?BLOCK to yet, see S06:3047.
19:03 synopsebot Link: http://perlcabal.org/syn/S06.html#line_3047
19:03 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/196b4ff55e
19:08 dalek roast: 3ef752a | (Tobias Leich)++ | S04-statements/ (2 files):
19:08 dalek roast: add more tests for labels
19:08 dalek roast: review: https://github.com/perl6/roast/commit/3ef752aa4e
19:08 dalek roast: 31ccb4c | (Tobias Leich)++ | S04-statements/ (2 files):
19:08 dalek roast: unfudge now passing label tests
19:08 dalek roast: review: https://github.com/perl6/roast/commit/31ccb4c7df
19:11 mj41 joined #perl6
19:22 bartolin joined #perl6
19:28 berekuk_ joined #perl6
19:37 kivutar joined #perl6
19:39 FROGGS k, running jvm spectests now without the evalserver...
19:42 fhelmberger joined #perl6
19:42 flussence std: / <-cntrl -[ \s \" \% \' \< \> \\ \` \{ \| \} ]> /; # I've ended up writing this in my code... any ideas how I can pretty it up?
19:42 camelia std ec3d853: OUTPUT«[31m===[0mSORRY![31m===[0m�Unsupported use of curly brackets; in Perl 6 please use square brackets at /tmp/0BJ8477_Zw line 1:�------> [32m/ <-cntrl -[ \s \" \% \' \< \> \\ \` \{[33m�[31m \| \} ]> /; # I've ended up writing thi[0m�Parse failed�FA…»
19:43 flussence m: / <-cntrl -[ \s \" \% \' \< \> \\ \` \{ \| \} ]> /;
19:43 camelia rakudo-moar d96ad1: ( no output )
19:43 flussence (stdbug?)
19:45 FROGGS m: say 'abc{' ~~ / <-cntrl -[ \s " % ' < > \\ ` { | } ]>+ /;
19:45 camelia rakudo-moar d96ad1: OUTPUT«「abc」␤␤»
19:46 FROGGS std: say 'abc{' ~~ / <-cntrl -[ \s " % ' < > \\ ` { | } ]>+ /;
19:46 camelia std ec3d853: OUTPUT«ok 00:01 126m␤»
19:46 FROGGS flussence: you don't need to escape them
19:46 flussence I feel dumb now :)
19:46 FROGGS hehe, you should not :o)
19:47 FROGGS but the error message of std feels a bit off anyway
19:47 FROGGS it should not complain about that in character classes me thinks
19:48 flussence std: / <[ \s \" \' \\ '%<>`{|}' ]> /
19:48 camelia std ec3d853: OUTPUT«ok 00:01 123m␤»
19:49 flussence that works, keeps vim's syntax highlighting happy too :)
19:49 FROGGS but it is possible that it will warn/throw in future
19:50 FROGGS because that could be an unintentional use of quotes
19:50 kaare_ joined #perl6
19:51 flussence good point...
19:58 vendethiel I wonder how I could get something with multi-line blocks from masak++'s ws-parsing stuff..
19:59 masak mine?
19:59 masak oh, the indent stuff.
20:00 masak well, the multi-line block would just end up in the same Suite, no?
20:00 dalek roast: a835db1 | masak++ | / (4 files):
20:00 dalek roast: chase spec change about .later/.earlier and TimeUnit
20:00 dalek roast:
20:00 dalek roast: This makes roast up-to-date with spec change
20:00 dalek roast: 337f433398a070884e3258fc724c3b5f775fe085.
20:00 dalek roast: review: https://github.com/perl6/roast/commit/a835db1c08
20:00 dalek nqp: 8d37d8c | (Tobias Leich)++ | t/nqp/19-file-ops.t:
20:00 dalek nqp: adjust lseek test because of a change in lseek itself
20:00 dalek nqp:
20:00 dalek nqp: '3' is not an invalid 'whence' anymore on some platforms, see:
20:00 dalek nqp: http://man7.org/linux/man-pages/man2/lseek.2.html
20:00 dalek nqp: "SEEK_DATA and SEEK_HOLE are nonstandard extensions also present in
20:00 dalek nqp: Solaris, FreeBSD, and DragonFly BSD; they are proposed for inclusion
20:00 dalek nqp: in the next POSIX revision (Issue 8)."
20:00 dalek nqp: review: https://github.com/perl6/nqp/commit/8d37d8cbb8
20:01 dalek rakudo/nom: f244c39 | masak++ | src/core/Temporal.pm:
20:01 dalek rakudo/nom: [Temporal.pm] implement later/earlier
20:01 dalek rakudo/nom:
20:01 dalek rakudo/nom: Also kill off TimeUnit and change the API for .truncated-to, all
20:01 dalek rakudo/nom: according to spec change 337f433398a070884e3258fc724c3b5f775fe085.
20:01 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/f244c39245
20:01 masak I wanted to get this one in before tomorrow's release. glad I did.
20:01 FROGGS masak++
20:01 masak this gets the basic thing in. a few comments, though:
20:01 FROGGS and so did I sneak something in too :P
20:02 masak (a) I didn't deprecate .delta, I just replaced it. someone wants to do better -- feel free.
20:03 masak (b) .truncated-to handles the 'minute' form but not the 'minutes' form. this is a bug, and it currently has no spectest coverage. I will fix if no-one beats me to it.
20:04 masak hm. that's it, I think.
20:04 masak oh, here, let me update the ChangeLog, too.
20:05 FROGGS k, I'll simulate a rakudo-star on these changes later today or tomorrow
20:05 flussence grr... I keep getting a "use of uninitialized value of type Any in string context" with no line info :(
20:06 flussence oh, wait a minute...
20:06 * flussence turns Grammar::Tracer on and finds it instantly
20:06 vendethiel masak: yeah, it'd, but I need to make a difference between a rule and selector
20:06 vendethiel (basically for a css preprocessor)
20:07 dalek rakudo/nom: f5e98b3 | masak++ | docs/ChangeLog:
20:07 dalek rakudo/nom: [ChangeLog] mention removal of .delta and TimeUnit
20:07 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/f5e98b34b2
20:08 vendethiel I'll need to override line, that much is obvious
20:09 masak I would like to implement .squish(:expires), too, but it unlikely I'll make it before the release, because I'm teaching tomorrow.
20:09 dwarring r: my $value = True but False; say $value
20:09 camelia rakudo-jvm 196b4f: OUTPUT«(timeout)»
20:09 camelia ..rakudo-{parrot,moar} 196b4f: OUTPUT«False␤»
20:10 timotimo line numbers with warningsbwould he fantastic before the mvm release
20:10 masak rakudo-jvm is all "WARNING. PARADOX. MUST OVERHEAT."
20:11 * dwarring heh
20:11 FROGGS not everything can happen before this release :o)
20:12 dwarring I'll put in an rakudobug
20:12 FROGGS so, let us just take it as "after the release is before the release" and do things whenever it fits
20:18 masak dwarring: just be aware, camelia has been known to timeout on rakudo-jvm.
20:19 masak dwarring: so it might just be an artifact.
20:21 FROGGS n: my $value = True but False; say $value
20:21 camelia niecza v24-109-g48a8de3: OUTPUT«True␤»
20:21 FROGGS m: my $value = True but False; say $value
20:21 camelia rakudo-moar 196b4f: OUTPUT«False␤»
20:21 FROGGS I guess it is about that
20:23 dwarring this expects 'True' - http://perl6advent.wordpress.com​/2010/12/19/day-19-false-truth/
20:24 masak I kind of expect True, too.
20:25 dwarring r: my $value = True but False; say ?$value
20:25 camelia rakudo-{parrot,jvm,moar} 196b4f: OUTPUT«False␤»
20:25 masak because the *value* is still True, kind of. it's just the boolean aspect of it that has been overridden.
20:25 FROGGS n: my $value = True but False; say ?$value
20:25 camelia niecza v24-109-g48a8de3: OUTPUT«False␤»
20:25 FROGGS niecza++
20:26 FROGGS masak: there are no star regressions due to your patch btw
20:27 masak I suspected that.
20:28 guru joined #perl6
20:31 berekuk joined #perl6
20:32 FROGGS gnight #perl6
20:32 masak 'n8, FROGGS
20:51 raiph joined #perl6
20:53 dagurval joined #perl6
20:59 dalek roast: 2cee534 | (David Warring david.warring@gmail.com)++ | integration/advent2010-day (2 files):
20:59 dalek roast: adding 2010 advent days 19 and 21
20:59 dalek roast: review: https://github.com/perl6/roast/commit/2cee534e54
20:59 masak 'night, #perl6
21:00 vendethiel when you read all the advents post in one time (which I pretty much did, 2 times) you notice how great the difference it
21:00 vendethiel is*, between 2009 and 2013.
21:03 colomon vendethiel: it's easy for those of us who were here all that time to get blase because the changes happened little by little.
21:04 vendethiel yeah, I guess :] more stuff to talk about
21:07 dagurval I'm getting "Spesh: failed to fix up handlers" with moarvm on Time::Duration tests. Should I report that somewhere?
21:12 colomon hmmm, wonder what the current timings of http://perl6advent.wordpress.com/​2009/12/17/day-17-making-snowmen/ are like...
21:16 PerlJam colomon: I await your blog post that tells us ;
21:16 eternaleye joined #perl6
21:16 PerlJam er ;)
21:17 dayangkun joined #perl6
21:21 PerlJam The Gtk one could be ported to use Gtk::Simple probably and then it'd work on moar and parrot (maybe?) and not just jvm.
21:25 btyler joined #perl6
21:27 BenGoldberg joined #perl6
21:29 donaldh_ joined #perl6
21:35 lizmat joined #perl6
21:37 colomon …. you mean and not just niecza.  ;)
21:37 colomon Is Gtk::Simple actually up and running?
21:40 raiph colomon: http://jnthn.net/papers/201​4-nlpw-reactive.pdf#page=40 # jnthn's very cute recent announce of GTK::Simple
21:40 yoleaux 13 May 2014 06:49Z <FROGGS> raiph: Hi, are you still working on the script that parses mirrored.by, or should I use one of these as a base? https://gist.github.com/raiph/63508a5f4ade000acc7f / https://gist.github.com/raydiak/11382643
21:41 colomon raiph: yes, I saw the announcement, and I was all ready to rip the Gtk::Simple code out of that and make it a module when I utterly failed to successfully install the relevant version of Gtk on my Mac.
21:48 raiph colomon: I imagine the 2014 advent calendar will have several speed focused entries; an update then of 2009's "Making Snowmen" sounds perfect as one of them :)
21:49 tadzik it'll contain at least one game :)
21:49 huf jnthn: typo on slide 19, distnace
21:49 timotimo there once was a tetris game, ISTR
21:50 tadzik there was
21:50 sjn_mob joined #perl6
22:07 timotimo ooooh, Test is more colorful now
22:07 timotimo nice
22:08 timotimo panda didn't get updated for the latest TAP things we have?
22:09 tadzik we have TAP things? :D
22:09 timotimo https://gist.github.com/timo/f1cfec5a1c91cd793fba - who knows what's up here?
22:09 timotimo tap parse errors
22:10 tadzik uh, wtf
22:11 timotimo i'm glad you're up :)
22:11 tadzik reproducible?
22:12 timotimo let me try.
22:12 timotimo i don't think the tests used to be loud tests
22:13 timotimo the weird thing is
22:13 timotimo ok 1 - what should pass, passes
22:13 timotimo this line is red
22:13 timotimo and yes, i can reproduce it
22:15 tadzik is dies_ok running in a different thread or what? :O
22:17 timotimo no clue.
22:18 tadzik is that moar head?
22:19 timotimo yes
22:19 timotimo and nqp head and rakudo head
22:19 tadzik oh, hm
22:19 tadzik feel like bisecting something? :D
22:19 timotimo :|
22:19 donaldh_ jnthn: is there a way to cancel an async listen? Seems not, unless I am missing something.
22:20 timotimo it should return a cancellation handler somewhere
22:20 timotimo or is that only for other stuff?
22:21 donaldh_ It returns a supply of new connections.
22:22 timotimo oooh
22:22 timotimo my panda was dirty
22:22 timotimo tadzik: i think it was all my fault
22:22 timotimo could we get an environment variable to make panda run tests loudly?
22:23 timotimo oh
22:23 timotimo i know why that would fail
22:23 timotimo it tests the tester
22:23 timotimo i manipulated the tester to test loudly
22:23 timotimo it spews its output during testing
22:24 timotimo and prove gets massively confused
22:25 dalek joined #perl6
22:26 perltricks joined #perl6
22:26 tadzik ah, there we go :) dirty panda
22:27 timotimo aye, dirty panda
22:27 timotimo panda could warn about that if it fails to rebootstrap from a dirty commit :)
22:27 DarthGandalf joined #perl6
22:27 perltricks hey all, am writing a Test file. Does the Test module has use_ok, can_ok etc? error message suggests not, but some online docs say yes
22:28 ppabian_ joined #perl6
22:28 lee__ joined #perl6
22:28 salv01 joined #perl6
22:29 tadzik no, it does not
22:29 tadzik which online docs say that?
22:29 avuserow2 joined #perl6
22:29 retupmoc1 joined #perl6
22:29 perltricks Thanks Tadzik. See here: http://feather.perl6.nl/~markstos/Test.pm.html
22:29 Ben_Goldberg joined #perl6
22:29 Juerd_ joined #perl6
22:30 tadzik ...how did you find that/
22:30 frettled_ joined #perl6
22:30 tadzik this is from 2006 :D
22:30 perltricks Googling for Perl 6 test articles ... ah yeah ancient history then ;)
22:30 tadzik google at its best again ;)
22:31 tadzik I'm sure I can find some more up-to-date docs for you
22:31 DarthGandalf joined #perl6
22:31 perltricks Is there an idiomatic way to do use_ok? would it be: "use module || fail; "
22:31 brother joined #perl6
22:31 larks joined #perl6
22:32 tadzik if use fails, an exception willl be throws
22:32 tadzik so you can juts do 'use Module; pass "module loaded"
22:32 tadzik '
22:32 tadzik ok, it seems that there are no fresh Test docs
22:32 JimmyZ_ joined #perl6
22:32 perltricks what about testing for methods? Is there a "can" function?
22:33 Tene_ joined #perl6
22:34 donaldh__ joined #perl6
22:34 ribasushi joined #perl6
22:34 sftp_ joined #perl6
22:34 tadzik every object has a can() method
22:34 tadzik so you can do this:
22:35 tadzik r: use Test; ok Int->can('gist'); ok Int->can('fibo')
22:35 camelia rakudo-{parrot,jvm,moar} f5e98b: OUTPUT«[31m===[0mSORRY![31m===[0m Error while compiling /tmp/tmpfile�Unsupported use of -> as postfix; in Perl 6 please use either . to call a method, or whitespace to delimit a pointy block�at /tmp/tmpfile:1�------> [32muse Test; ok Int->…»
22:35 tadzik eeh?
22:35 araujo_ joined #perl6
22:35 tadzik oh, of course
22:35 tadzik r: use Test; ok Int.can('gist'); ok Int.can('fibo')
22:35 camelia rakudo-{parrot,jvm,moar} f5e98b: OUTPUT«ok 1 - ␤not ok 2 - ␤»
22:35 tadzik nnah
22:35 amkrankruleuen joined #perl6
22:35 tadzik oh, ok :)
22:35 Exodist joined #perl6
22:36 ivanshma` joined #perl6
22:36 perltricks wonderful. Thank you
22:36 __sri joined #perl6
22:36 tadzik you're welcome
22:36 yeltzooo joined #perl6
22:37 yeltzooo joined #perl6
22:37 hoelzro_ joined #perl6
22:38 Celelibi joined #perl6
22:38 mhasch joined #perl6
22:38 timotimo er
22:38 timotimo "use" works at compile time
22:38 timotimo you need to do it in an eval if you want to put it into tests
22:38 timotimo EVAL, even.
22:40 ivanshmakov joined #perl6
22:43 yeltzooo4 joined #perl6
22:43 effbiai_ joined #perl6
22:43 lizmat joined #perl6
22:43 araujo joined #perl6
22:47 btyler joined #perl6
22:47 lizmat joined #perl6
22:47 xinming_ joined #perl6
22:47 breinbaa1 joined #perl6
22:48 Tene joined #perl6
22:50 yoleaux joined #perl6
22:55 xragnar joined #perl6
22:56 BenGoldberg joined #perl6
22:59 BenGoldberg joined #perl6
23:02 perltricks timotimo, thanks runtime would be better. but "EVAL use module;" returns undeclared name error.
23:04 timotimo aye, we have typed exceptions (output the value of $!.WHAT)
23:05 kurahaupo joined #perl6
23:06 perltricks is EVAL documented anywhere?
23:06 timotimo in the synopses surely
23:07 timotimo https://www.google.com/search?ie=UTF-8&am​p;oe=UTF-8&amp;domains=perlcabal.org&amp;​sitesearch=perlcabal.org%2Fsyn%2F&amp;q=E​VAL&amp;btnG=Google+Search+the+Synopses
23:08 perltricks found it, thanks
23:11 perltricks ok got it now: BEGIN { EVAL('use module') }
23:13 berekuk joined #perl6
23:13 colomon joined #perl6
23:14 BenGoldberg joined #perl6
23:25 timotimo er ... no.
23:25 timotimo what are you trying to achieve?
23:26 timotimo NativeCall gives a whole bunch of deprecation messages; are we going to change that up for the release or something?
23:43 fhelmberger joined #perl6
23:43 skids joined #perl6
23:45 sftp_ joined #perl6
23:48 woolfy joined #perl6
23:53 ppabian joined #perl6
23:55 timotimo i went ahead and pushed jnthn's Simple.pm6 into perl6/gtk-simple/lib/GTK/Simple.pm6
23:55 timotimo and added a META.info
23:58 timotimo my class Queue is repr('ConcBlockingQueue') { }; my $!queue := nqp::create(Queue) - does this have a more canon spelling yet?
23:59 timotimo apparently that's exactly how the setting does it

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

Perl 6 | Reference Documentation | Rakudo