Perl 6 - the future is here, just unevenly distributed

IRC log for #perl6, 2014-03-25

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:13 grep0r joined #perl6
00:18 kurahaupo joined #perl6
00:18 jnap joined #perl6
00:33 colomon_ joined #perl6
00:40 colomon joined #perl6
00:41 hoverboard joined #perl6
01:19 kbaker joined #perl6
01:24 aindilis joined #perl6
01:35 jnap joined #perl6
01:38 lizmat joined #perl6
01:59 japhb joined #perl6
02:04 baest joined #perl6
02:07 grondilu joined #perl6
02:07 grondilu r: say 0.0001 * 2.83e-16
02:07 camelia rakudo-parrot ffa572: OUTPUT«2.83e-20␤»
02:07 camelia ..rakudo-jvm ffa572: OUTPUT«2.83E-20␤»
02:07 camelia ..rakudo-moar ffa572: OUTPUT«2.83e-2␤»
02:08 grondilu r: say 0.0001 * 2.83e-16 > 1e-5
02:08 camelia rakudo-parrot ffa572, rakudo-jvm ffa572, rakudo-moar ffa572: OUTPUT«False␤»
02:11 grondilu m: say $_ * 2.8e-16 for 0.1, 0.01, 0.001, 0.0001;
02:11 camelia rakudo-moar ffa572: OUTPUT«2.8e-17␤2.8e-18␤2.8e-19␤2.8e-2␤»
02:11 grondilu m: say 2.8e-20;
02:11 camelia rakudo-moar ffa572: OUTPUT«2.8e-2␤»
02:14 BenGoldberg r: say 2.8e-19
02:14 camelia rakudo-parrot ffa572, rakudo-moar ffa572: OUTPUT«2.8e-19␤»
02:14 camelia ..rakudo-jvm ffa572: OUTPUT«2.7999999999999995E-19␤»
02:15 BenGoldberg r: say 2.8e-20 <=> 2.8e-5
02:15 camelia rakudo-parrot ffa572, rakudo-jvm ffa572, rakudo-moar ffa572: OUTPUT«Less␤»
02:15 grondilu it's just the display that's messed up apparently
02:16 BenGoldberg A sprintf bug, I suppose.
02:16 lustlife joined #perl6
02:19 baest_ joined #perl6
02:20 grondilu it seems that my complain earlier about half_pi was not the issue.  The glitch I saw was rather because of this bug.   My bad.
02:22 * grondilu was generating a polar graph with P6 and viewing the result with Gnuplot.  There was a dicontinuity around pi/2.
02:28 xragnar joined #perl6
02:30 btyler joined #perl6
02:34 * grondilu will use round before feeding anything to Gnuplot from now on.
02:41 klapperl_ joined #perl6
02:44 FROGGS_ joined #perl6
03:33 woosley joined #perl6
04:09 SamuraiJack joined #perl6
04:15 jnap joined #perl6
04:52 rurban1 joined #perl6
05:16 jnap joined #perl6
05:32 renormalist joined #perl6
05:46 kaare_ joined #perl6
06:12 dmol joined #perl6
06:17 jnap joined #perl6
06:20 lizmat joined #perl6
06:22 rurban1 joined #perl6
06:24 kaleem joined #perl6
06:43 dayangkun joined #perl6
06:51 denisboyun joined #perl6
07:17 darutoko joined #perl6
07:18 jnap joined #perl6
07:23 rurban1 joined #perl6
07:38 kaare_ joined #perl6
07:40 * lizmat is considering reverting timotimo++ 's last commit as it makes the spectest hang
07:44 zakharyas joined #perl6
08:10 moritz +                if nqp::isstr(@error[0]) {
08:10 moritz +                    nqp::die(@error[0]);
08:10 moritz +                } else {
08:10 moritz +                    @error[0].throw();
08:10 moritz +                }
08:10 moritz that looks dangerous
08:11 moritz might be better to say   if  nqp::can(@error[0], 'throw') { @error[0].throw(); } else { nqp::die(@error[0]); }
08:12 xfix left #perl6
08:12 xfix joined #perl6
08:12 moritz lue: which test hangs?
08:13 moritz sorry, meant lizmat
08:15 broquaint joined #perl6
08:18 jnap joined #perl6
08:21 FROGGS_ moritz: IIRC jnthn proposed it that way yesterday
08:24 * moritz feels validated
08:24 moritz ... and a bit stupid for not backlogging :-)
08:33 slavik joined #perl6
08:40 lizmat moritz: t/spec/S02-literals/listquote.t test #6
08:40 lizmat is the first one
08:40 pdcawley joined #perl6
08:41 lizmat it looks to me that line 246 in src/Perl6/Metamodel/BOOTSTRAP.nqp is causing an exception itself
08:42 lizmat $error[0] := nqp::atkey(%ex, 'X::TypeCheck::Binding')($oval.WHAT, $nom_type.WHAT, $varname);
08:42 terrencehan joined #perl6
08:42 moritz still hangs with my patch
08:43 sergot morning o/
08:43 FROGGS_ morning
08:44 lizmat morning all!
08:44 lizmat maybe nqp::atkey(%ex, 'X::TypeCheck::Binding') does not contain what everybody think it contains?
08:44 lizmat :q
08:44 * hugme hugs lizmat, good vi(m) user!
08:45 woosley joined #perl6
08:46 moritz %c_ex{'X::TypeCheck::Binding'} := sub ($got, $expected, $symbol?) is hidden_from_backtrace {
08:46 moritz X::TypeCheck::Binding.new(:$got, :$expected, :$symbol).throw;
08:46 moritz };
08:47 moritz that's the initialization
08:47 moritz I wonder if that needs some Mus
08:47 moritz m: sub f($x) { say $x.^name }; f Mu
08:47 camelia rakudo-moar af8d42: OUTPUT«(timeout)»
08:51 moritz now I get
08:52 moritz Type check failed in binding $a; expected 'Any' but got 'Junction'
08:52 jnthn Uh...I thought that it was meant to construct the exception but leave it for the binder to throw?
08:52 moritz well, that's not the approach we took in parrot land
08:52 moritz where the P6EX comes from
08:53 jnthn I know most P6EX things don't look that way.
08:53 moritz so I guess that timotimo++ copy&pasted it like that, or something
08:53 jnthn I wasn't saying they all should. I was saying this one should, if we're binding it into $error[0]
08:54 jnthn Maybe, yeah.
08:54 moritz agreed
08:54 jnthn Anyway, note that the binder will run to bind the call to that sub.
08:54 fhelmberger joined #perl6
08:54 jnthn And so if it fails, it will recursviely call it, and so on... :)
08:54 moritz yes, I figured
08:55 moritz in parrot land, we mostly passed type names
08:55 jnthn *nod*
08:55 moritz which is why we got away with not typing them as Mu
08:55 jnthn Makes sense.
08:57 dalek rakudo/nom: 0ff5ff6 | moritz++ | src/ (2 files):
08:57 dalek rakudo/nom: more robust error reporting
08:57 dalek rakudo/nom:
08:57 dalek rakudo/nom: If a thing is not a string it is not automatically an Exception,
08:57 dalek rakudo/nom: so check nqp::can($possible_ex, throw)
08:57 dalek rakudo/nom:
08:57 dalek rakudo/nom: Also be more liberal in what the subs in P6EX accept. In parrot land,
08:57 dalek rakudo/nom: we mostly passed around type names, but in moar we use actual types,
08:57 dalek rakudo/nom: so the signatures must accept Mu
08:57 dalek rakudo/nom:
08:57 dalek rakudo/nom: Junction authothreading still seems broken; I hope timotimo++ fixes it.
08:57 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/0ff5ff6490
08:58 moritz [Coke]: I havne't done a full spectest, but it fixed the one hang you mentioned
08:58 vendethiel Also, I wanted to ask. What's `sub stuff(T $o:, $otherparam)` ? The signature an `is export` would have ?
08:58 vendethiel If `sub stuff(T $o: $otherparam)` was the base signature?
09:00 lizmat moritz: pulled, building and then spectest
09:00 rindolf joined #perl6
09:00 dayangkun joined #perl6
09:03 jnthn That signature doesn't make much sense on a sub...
09:04 lizmat but it fixes the hang
09:04 vendethiel jnthn: might be a method, then.
09:04 lizmat oops, wrong reference  :-)
09:04 jnthn vendethiel: On a method, it means you want self to also be bound into $o, and that it'd better have type T.
09:05 jnthn vendethiel: Typing the invocant explicitly is a very weird thing to be doing, though.
09:05 vendethiel I remember it from the last synopsis, I think
09:05 vendethiel well, from S32
09:06 vendethiel `     multi method does ($self:, $type --> Bool ) {...}`
09:06 jnthn Taht's just saying "put self into $self also"
09:06 jnthn That extra , after the : is probably a syntax error.
09:06 lizmat moritz: ok, the spectest does not hang anymore, but there are *many* more test failures
09:07 vendethiel jnthn: That's from S32/Basics, if that matters
09:07 jnthn You did remove the .throw, yes?
09:07 lizmat more specifically: t/spec/S02-literals/listquote.t now fails
09:07 vendethiel also that ` multi method clone (::T $self --> T --> Any )`
09:07 moritz jnthn: I did not, because rakudo-p needs it
09:07 jnthn Because if not...well yeah, you're gonna bust auto-threading, 'cus it relies on *not* throwing until later.
09:07 moritz right, I just turned the bust into a bust that returns instead of hanging :-)
09:08 lizmat seems like there is an #if parrot
09:08 jnthn *nod*
09:08 lizmat needed
09:08 moritz not necessary
09:08 jnthn Oh, there's a better way to do this I think
09:08 moritz for one we could just have another hash entry
09:08 jnthn Don't build the exception *at all* at the point things go wrong
09:08 jnthn $error[0] := { closure that builds it };
09:08 jnthn And then nqp::isinvokable(...) to decide whether to throw it
09:09 jnthn Then it can still .throw
09:09 jnthn And we don't pay the cost of constructing the exception in the junction fail-over case.
09:13 moritz I'm going offline for a few hours; I might try that (but don't wait for me, Argentina)
09:14 FROGGS_ moritz: is today the day or tomorrow?
09:19 daniel-s joined #perl6
09:19 jnap joined #perl6
09:24 rurban1 joined #perl6
09:33 dakkar joined #perl6
09:38 Alina-malina joined #perl6
09:38 dalek rakudo/nom: de78943 | (Elizabeth Mattijsen)++ | src/Perl6/Metamodel/BOOTSTRAP.nqp:
09:38 dalek rakudo/nom: Delay throwing of error, as suggested by jnthn++
09:38 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/de789437a2
09:39 lizmat this fixes the bust, and returns to previous levels of errors in spectest
09:39 lizmat preparing for commute to Hannover
09:42 jnthn lizmat++
09:50 denis_boyun joined #perl6
09:52 zakharyas joined #perl6
10:02 dayangkun joined #perl6
10:06 slavik joined #perl6
10:08 rindolf joined #perl6
10:09 dalek roast: e81b345 | (Elizabeth Mattijsen)++ | S05-mass/charsets.t:
10:09 dalek roast: Unfudge now passing test on parrot
10:09 dalek roast: review: https://github.com/perl6/roast/commit/e81b3458ce
10:09 lizmat verified spectest on parrot was also ok and found a passing todo
10:20 jnap joined #perl6
10:20 sqirrel_ joined #perl6
10:25 lizmat commute to Hannover&
10:25 rurban1 joined #perl6
10:25 tadzik two steps from hangover :)
10:26 tadzik one, even
10:36 kivutar joined #perl6
10:38 woolfy1 left #perl6
10:42 aborazmeh joined #perl6
10:47 timotimo i copypasted wrong? =o
10:47 tadzik you did?
10:48 FROGGS_ where am I?
10:48 tadzik what is love?
10:48 FROGGS_ is jnthn just a four letter word?
10:49 tadzik why are polar bears left handed?
10:50 FROGGS_ why do have octopus a favourite arm?
10:51 timotimo oh!
10:51 timotimo d'oh!
10:51 timotimo P6EX has a .throw inside it
10:51 timotimo >_<
10:51 tadzik Has Anyone Really Been Far Even as Decided to Use Even Go Want to do Look More Like?
10:52 timotimo good question, has anyone really ever used Go?
10:52 tadzik yep
10:52 tadzik at work even
10:53 timotimo that would clearly explain how what i did was wrong
10:53 cognominal joined #perl6
10:55 timotimo the only thing i can think of is to pass a closure to $error[0] and call that
10:55 timotimo so i can close over the parameters i want to pass
10:55 timotimo otherwise i'd have to pull out the .throw; or alternatively $error[0] := try %ex<foobar>($args)
10:57 timotimo not sure how to go on
11:02 jnthn timotimo: lizmat already did it in https://github.com/rakudo/rakudo/commit/de789437a2
11:06 kaleem joined #perl6
11:17 timotimo i don't think i understand
11:17 timotimo isn't the problem that the subs that are assigned to P6EX will already call .throw?
11:17 timotimo and thus $error[0] := %ex<foo::bar> will immediately throw rather than assign the exception?
11:19 kurahaupo joined #perl6
11:21 jnap joined #perl6
11:22 jnthn timotimo: The patch wraps the thing assigned to $error[0] in a closure, so we run itlater on if needed.
11:24 timotimo oh!
11:24 timotimo oops :)
11:24 timotimo thank you in any case!
11:26 rurban1 joined #perl6
12:00 telex joined #perl6
12:14 brrt joined #perl6
12:21 jnap joined #perl6
12:27 rurban1 joined #perl6
12:34 zakharyas joined #perl6
12:40 jnap joined #perl6
12:42 guru joined #perl6
12:46 kbaker joined #perl6
12:53 Alina-malina joined #perl6
13:15 skids joined #perl6
13:19 kurahaupo joined #perl6
13:27 rurban1 joined #perl6
13:32 sjn joined #perl6
13:49 btyler joined #perl6
13:52 [Coke] [A
13:54 timotimo quantifier quantifier sonthing
13:54 [Coke] screen reconnect session whoopsie
13:59 bluescreen10 joined #perl6
14:00 colomon joined #perl6
14:03 jnap joined #perl6
14:06 thou joined #perl6
14:08 sjn joined #perl6
14:22 dalek rakudo-star-daily: ee45f04 | coke++ | log/ (5 files):
14:22 dalek rakudo-star-daily: today (automated commit)
14:22 dalek rakudo-star-daily: review: https://github.com/coke/rakudo-star-daily/commit/ee45f04ae0
14:28 salv0 joined #perl6
14:28 [Coke] daily eval server based run failing tests again today.
14:28 [Sno] joined #perl6
14:29 [Coke] looks like it started with S10-packages/basic.rakudo.jvm, passed 2 more after than, then aborted every test from that point on.
14:33 [Coke] and it's not even failing fast at this point. :|
14:34 [Coke] It's taking 1.33GB and 1.75 CPUs to spin.
14:35 [Coke] Anyone have any diagnostic suggestions?
14:43 timotimo diagnose java using killall -KILL KILL KILL!!!!
14:44 [Coke] that... is not entirely helpful.
14:44 * [Coke] is trying to spin up jvisualvm.
14:44 [Coke] ... as soon as he reinstalls X.
14:45 jnthn What version, ooc?
14:45 jnthn Normally when I've seen this it's 'cus it hit an out of memory conditoin.
14:45 jnthn *condition
14:45 jnthn But 1.33GB doesn't sound like that.
14:46 [Coke] $ java -version
14:46 [Coke] java version "1.7.0_51"
14:46 [Coke] Java(TM) SE Runtime Environment (build 1.7.0_51-b13)
14:46 [Coke] Java HotSpot(TM) 64-Bit Server VM (build 24.51-b03, mixed mode)
14:47 [Coke] (out of memory), yes, I've seen that in the past. if the tests run individually but not via the eval server, that indicates a memory leak in the eval server, neh?
14:48 jnthn It'd suggest so, though normally I saw it due to running many tests in parallel
14:49 [Coke] jnthn: i'm running one job at a time.
14:49 [Coke] (to preserve test ordering in output.)
14:50 jnthn [Coke]: Yeah, that's what makes it a little more surprising.
14:57 [Coke] wow, is it slow to jvisual vm to the roast machine.
14:57 [Coke] s/to/from/
14:57 [Coke] I'm not going to be able to do this from dayjob. too slow.
15:13 timotimo :(
15:14 timotimo i thought recently we got a nice fix in place for the out of memory condition for the evalserver
15:22 woolfy joined #perl6
15:29 lizmat joined #perl6
15:30 * FROGGS tries to write something committable since the slides do not want to improve any further
15:31 * lizmat made it to the hotel in Hanover
15:36 FROGGS lizmat: are you far away from the venue?
15:36 lizmat ~12 km
15:36 FROGGS ohh wow
15:36 lizmat it was *hard* to get a hotel this late
15:37 lizmat all fully booked or a place we didn't want to go to
15:37 FROGGS yes, hannover is always like thaht
15:37 FROGGS that*
15:39 lizmat and with public transport on strike, we need to take the car to the social / venue tomorrow
15:39 lizmat the last 20km today took us ~ 1 hour
15:40 lizmat so that's at least a 30 minute drive
15:40 SamuraiJack joined #perl6
15:40 lizmat ah welll...
15:40 lizmat there are worse things  :-)
15:41 FROGGS are you talking about the wifi? :o)
15:41 lizmat since Lyon, I've decided to use my 3G connection all the time
15:41 lizmat at 10 euro / 500 MB, that's ok
15:42 FROGGS yeah
15:42 woolfy left #perl6
15:42 lizmat no hassle, always works
15:42 lizmat (well, almost)
15:42 FROGGS I have no problem this time too, because I have mobile broadband in germany :o)
15:43 FROGGS okay, I try to convince my brane now to continue to work on PAUSE :/
15:43 * lizmat projects good thoughts about PAUSE your way
15:43 Alina-malina joined #perl6
15:44 bbkr joined #perl6
15:44 FROGGS it is not that hard in theory, I just have to put some information from the tarball and META6.json into a database table
15:44 lizmat going off to see some of Hanover before the social&
15:45 FROGGS (have fun)
15:45 Alina-malina joined #perl6
15:48 Alina-malina joined #perl6
15:50 Alina-malina joined #perl6
16:01 jnap joined #perl6
16:04 hoelzro https://github.com/showcases/projects-that-power-github
16:04 hoelzro I like which one's at #1 =P
16:17 segomos github emoji
16:18 vendethiel joined #perl6
16:18 xybre I think the order changes because the first one here is "linguist".
16:26 hoelzro yeah, I was being facetious =)
16:26 hoelzro I find it amusing how linguist ends up at #1
16:26 hoelzro not that it's a bad library, but they don't listen to contributors at all
16:29 jnap1 joined #perl6
16:29 dalek nqp: 8ccf96b | moritz++ | src/ (2 files):
16:29 dalek nqp: First shot at Match.prune
16:29 dalek nqp: review: https://github.com/perl6/nqp/commit/8ccf96b6d5
16:29 dalek nqp: e952c7c | moritz++ | src/ (3 files):
16:29 dalek nqp: prune some matches in Actions.pm
16:29 dalek nqp: review: https://github.com/perl6/nqp/commit/e952c7c48f
16:29 dalek nqp: e183e7b | moritz++ | src/ (4 files):
16:29 dalek nqp: Merge branch 'match-prune'
16:29 dalek nqp:
16:29 dalek nqp: Speeds up compilation of Rakudo's Actions.nqp on the MoarVM backend by 1.8%
16:29 dalek nqp: review: https://github.com/perl6/nqp/commit/e183e7b109
16:30 nwc10 moritz++ # hacking
16:30 moritz timotimo: the day was meant to be tomorrow, but it's postponed by another week
16:31 nwc10 so who is going to the German Perl Workshop, other than FROGGS (speaking), daxim_ (speaking about other things) timotimo, wendy, liz and me?
16:35 Ulti is %hash.exists($key) now meant to be %hash<$key>:exists ?
16:36 jnthn no
16:36 jnthn %hash{$key}:exists
16:36 Ulti k k thank
16:36 Ulti s
16:36 kivutar joined #perl6
16:38 FROGGS nwc10: quite a few others I know, but nobody from this channel
16:39 jnthn Ulti: The <...> form is fine for literal keys.
16:39 [Coke] <> would work if you have a literal key, ay?
16:39 nwc10 quite a few others *I* know too :-)
16:39 [Coke] ... too slow!
16:40 xybre hoelzro: you mean because there's so many open issues?
16:40 * nwc10 boards
16:40 hoelzro yeah
16:40 FROGGS nwc10: but will you enjoy talks given in german?
16:40 hoelzro and they don't respond to PRs/issues
16:40 hoelzro I've had a PR open for 2 months
16:40 hoelzro and there's the time I added Perl 6 support...
16:40 * [Coke] points at rakudo's RT queue.
16:40 hoelzro I think that was open for 4/5
16:41 [Coke] we are in no position to throw stones.
16:41 [Coke] ObLHF: Help us prune the RT queue! don't need to be a Perl 6 expert, feel free to ping me with questions about what to look at!
16:43 guru joined #perl6
16:49 jnap joined #perl6
16:50 jnap joined #perl6
17:03 adu joined #perl6
17:16 klapperl joined #perl6
17:25 * [Coke] kills and restarts a daily run without the eval server.
17:25 raiph joined #perl6
17:30 colomon [Coke]: you're killing and then running?  what is this, the Fugitive?
17:32 raiph p6: lines.say # are parrot and niecza right (ie this is supposed to work)?
17:32 camelia rakudo-moar de7894: OUTPUT«(timeout)»
17:32 camelia ..rakudo-parrot de7894, niecza v24-109-g48a8de3: OUTPUT«There were three men came out of the West Their fortunes for to try And these three men made a solemn vow John Barleycorn must die  They've ploughed, they've sewn, they've harrowed him in Threw clouds upon his head And these thre…»
17:32 camelia ..rakudo-jvm de7894: OUTPUT«␤»
17:34 raiph (well, work ignoring stripping of \n)
17:34 jnthn The stripping is right too; it auto-chomps
17:34 ajr joined #perl6
17:35 jnthn No idea why it does a (timeout) on Moar; if I pipe a file into it here things work out.
17:36 denis_boyun joined #perl6
17:36 [Sno] joined #perl6
17:37 raiph p: .say for lines # Is this the canonical P6 idiom for reading from stdin and printing lines?
17:37 camelia rakudo-parrot de7894: OUTPUT«There were three men came out of the West␤Their fortunes for to try␤And these three men made a solemn vow␤John Barleycorn must die␤␤They've ploughed, they've sewn, they've harrowed him in␤Threw clouds upon his head␤And these three men made …»
17:42 moritz raiph: yes
17:42 raiph jnthn, moritz: thx
17:43 * vendethiel remembers asking that exact same question 2 months ago. time flies
17:47 adu joined #perl6
17:54 vendethiel r: lines.map: .say
17:55 camelia rakudo-jvm de7894: OUTPUT«Nil␤Unhandled exception: Method 'count' not found for invocant of class 'Bool'␤  in  (gen/jvm/CORE.setting:7454)␤  in reify (gen/jvm/CORE.setting:7453)␤  in  (gen/jvm/CORE.setting:7365)␤  in reify (gen/jvm/CORE.setting:7337)␤  in gimme (gen/jvm/…»
17:55 camelia ..rakudo-parrot de7894: OUTPUT«Nil␤Method 'count' not found for invocant of class 'Bool'␤current instr.: '' pc 336406 (src/gen/p-CORE.setting.pir:141436) (gen/parrot/CORE.setting:7458)␤called from Sub 'reify' pc 336252 (src/gen/p-CORE.setting.pir:141357) (gen/parrot/CORE.setting…»
17:55 camelia ..rakudo-moar de7894: OUTPUT«Nil␤Unhandled exception: Method 'count' not found for invocant of class 'Bool'␤   at <unknown>:1  (/home/p6eval/rakudo-inst-1/languages/nqp/lib/Perl6/BOOTSTRAP.moarvm::4294967295)␤ from src/gen/m-CORE.setting:7511  (/home/p6eval/rakudo-inst-1/languag…»
17:55 vendethiel r: lines.map: { .say }
17:55 vendethiel Although the error really is weird
17:55 camelia rakudo-jvm de7894: ( no output )
17:55 camelia ..rakudo-parrot de7894: OUTPUT«There were three men came out of the West␤Their fortunes for to try␤And these three men made a solemn vow␤John Barleycorn must die␤␤They've ploughed, they've sewn, they've harrowed him in␤Threw clouds upon his head␤And these three men made …»
17:55 camelia ..rakudo-moar de7894: OUTPUT«(timeout)There were three men came out of the West␤Their fortunes for to try␤And these three men made a solemn vow␤John Barleycorn must die␤␤They've ploughed, they've sewn, they've harrowed him in␤Threw clouds upon his head␤And these three me…»
17:55 vendethiel does it try to .count to get the arity ?
17:56 masak r: say { .say }.count
17:56 camelia rakudo-parrot de7894, rakudo-jvm de7894, rakudo-moar de7894: OUTPUT«1␤»
17:56 masak yes, I think so.
17:56 * masak wonders if there will ever be an implementation that can constant-fold the above '1' :)
17:56 * vendethiel links ?SufficientlySmartCompiler
17:57 masak :)
17:58 PerlJam "ever" is a really long time :)
17:58 vendethiel PerlJam: sure, but I think languages that died in 1980 don't have compilers with JIT like we have now ;à)
17:59 moritz masak: constant-folding that doesn't seem that impossible
17:59 vendethiel well.
18:00 PerlJam vendethiel: If there are people keeping Atari and Commodore 64 alive, there's probably someone somewhere keeping "langauges that dies in 1980" alive as well.  :)
18:00 vendethiel r: class A { sub { say { .say; method foo { say "a"; } }.count; } }; A.new.foo;
18:00 camelia rakudo-parrot de7894, rakudo-jvm de7894, rakudo-moar de7894: OUTPUT«a␤»
18:00 PerlJam s/dies/died/
18:00 vendethiel which might be why we can't have nice things :)
18:03 masak that doesn't change the arity of the block, though.
18:08 dalek nqp: cb90f08 | moritz++ | src/NQP/Actions.nqp:
18:08 dalek nqp: more parse tree pruning
18:08 dalek nqp: review: https://github.com/perl6/nqp/commit/cb90f08142
18:09 PerlJam heh, I was expecting the commit message to read "constant fold block arity" or something :)
18:10 vendethiel masak: but it can't be constant-folded as early
18:10 PerlJam What does $/.prune do exactly?
18:10 vendethiel tree-shaking I guess?
18:11 btyler joined #perl6
18:12 * masak .oO( it's a bit like $/.plum )
18:14 vendethiel (what's plum ? tree-sleeping ?)
18:17 jnap joined #perl6
18:22 masak :)
18:23 geekosaur growing perhaps
18:24 FROGGS n: say 3 != 3
18:24 camelia niecza v24-109-g48a8de3: OUTPUT«False␤»
18:24 FROGGS O.o
18:24 moritz PerlJam: currently it deletes the cursor reference from a Match object
18:24 moritz PerlJam: but in future I want it to do more (discard submatches, for example)
18:26 FROGGS ahh, S03 says that != is short for !==
18:27 rindolf .seen fglock
18:27 yoleaux I haven't seen fglock around.
18:28 dalek nqp: 73721c4 | moritz++ | src/ (2 files):
18:28 dalek nqp: erase captures in $/.prune
18:28 dalek nqp: review: https://github.com/perl6/nqp/commit/73721c4979
18:33 masak .seen around
18:33 yoleaux I haven't seen around around.
18:33 FROGGS .seen tuit
18:33 yoleaux I haven't seen tuit around.
18:33 FROGGS damn
18:33 masak .seen haven't
18:33 yoleaux I haven't seen haven't around.
18:33 PerlJam .seen yoleaux
18:33 yoleaux I'm right here.
18:33 PerlJam :)
18:33 FROGGS .seen lately
18:33 yoleaux I haven't seen lately around.
18:33 masak .seen myself
18:33 yoleaux I haven't seen myself around.
18:34 PerlJam .seen flying pigs
18:34 yoleaux I haven't seen flying pigs around.
18:38 adu .seen me
18:38 yoleaux I haven't seen me around.
18:40 masak .seen sense
18:40 yoleaux I haven't seen sense around.
18:40 PerlJam If only NQP had time-traveling vars like Damian made for P5, then you wouldn't need to call prune because it will have already been done.
18:43 sftp_ joined #perl6
18:57 geekosaur mmm, tying the knot
19:00 klapperl joined #perl6
19:04 vendethiel damn, I switch to #haskell only to see geekosaur again
19:04 huf there are only 117 people alive on earth, so dont be surprised.
19:04 geekosaur :p
19:05 vendethiel huf: did you count them one by one ?
19:05 huf no need, i was born with the knowledge.
19:16 spider-mario joined #perl6
19:23 Sqirrel joined #perl6
19:24 jnthn OK, I haz a tuits...
19:26 jnthn And...an NQP build segfault :/
19:31 moritz jnthn: if you go back to 9ef5690691c9191f5780450be09904f0f40ccd96, does it still segfault?
19:35 FROGGS Segmentation fault (core dumped)
19:35 FROGGS make: *** [CORE.setting.moarvm] Fehler 139
19:36 retupmoca moritz: going back to cb90f0814292427e02dd94b246ede96293447ac7 fixes the segfault for me
19:37 FROGGS I can continue building when just doing make install again
19:37 FROGGS ohh, hmmm, no
19:37 FROGGS that helped for nqp but not for rakudo-m's setting
19:38 jnthn moritz: Well, going back some MoarVM commits helps
19:38 * FROGGS does a gdb run
19:39 jnthn I knew the GC opt put in earlier today was buggy but I thought my patch would fix it.
19:39 FROGGS Program received signal SIGSEGV, Segmentation fault.
19:39 FROGGS 0x00007ffff79d0731 in MVM_gc_root_gen2_cleanup (tc=tc@entry=0x603500) at src/gc/roots.c:256
19:39 FROGGS 256    while(gen2roots[i]->flags & MVM_CF_GEN2_LIVE)
19:39 jnthn oh, hang on...
19:39 jnthn it's missing a guard
19:40 FROGGS here a bt, Justin Case: https://gist.githubusercontent.com/FROGGS/98f3e236046c46fab406/raw/98ebfc26ea9968771a16bedb8fc9c405c639dc66/gistfile1.txt
19:41 jnthn .oO( Phew, not Justin Bieber... )
19:41 FROGGS *g*
19:41 jnthn Trying another patch
19:41 jnthn That backtace is in exactly the place
19:42 FROGGS k
19:42 jnthn If all the things in the gen2roots ended up alive it'd just go reading BS memory...
19:43 jnthn yeah, patch seems to help NQP
19:43 jnthn trying Rakudo
19:44 * FROGGS .oO( Bounded Serialization, I always said this is black magic!! )
19:45 jnthn Latest MoarVM seems better
19:45 jnthn FROGGS: OK, so, that frame_inc bug...
19:45 jnthn Got the reproduce url handy?
19:45 FROGGS yeah?
19:46 FROGGS jnthn: https://github.com/FROGGS/frame_inc
19:46 jnthn Had the info on my laptop... :)
19:46 jnthn Thanks
19:46 FROGGS you're welcome
19:46 jnthn <= lazy :)
19:46 FROGGS we're hackers
19:48 jnthn yah, I see it SEGVs.
19:49 jnthn oh, I wonder..
19:50 jnthn Hm.
19:52 FROGGS I think it was an invocation of getoutersomthing2 in Perl6::World around line 1717?
19:52 FROGGS can't remember
19:52 jnthn yup
19:53 jnthn I think it's over-trying to do fixing up
19:54 FROGGS is this about the fixups happening for the lexpads in roles/macros?
19:57 jnthn For roles at least, yeah.
19:58 jnthn Think I got a fix.
19:58 FROGGS cool!
19:58 jnthn And it doesn't regress the thing I put in that fixup stuff to fix in NativeCall.
19:58 FROGGS I did almost nothing today :(
19:58 jnthn Running a spectest
20:02 labster joined #perl6
20:05 jnthn Hm, I get a couple of failures in Unicode props related tests
20:05 FROGGS O.o
20:06 jnthn oh
20:06 jnthn "Invalid code-point U+00FFFE"
20:07 jnthn hah
20:07 FROGGS ?
20:08 jnthn The tests that explode are skipped on both Parrot and JVM
20:08 jnthn So, I think we may have contradictory spectests.
20:09 FROGGS that is why I compare against roast_test_data or what it is called
20:10 FROGGS (just to see if there is a regression)
20:10 FROGGS it is hard to spot for ~50 failures
20:11 jnthn perl6: "\x[FFFE]"
20:11 camelia rakudo-moar de7894, niecza v24-109-g48a8de3: ( no output )
20:11 camelia ..rakudo-parrot de7894: OUTPUT«===SORRY!===␤Invalid character for UTF-8 encoding␤␤»
20:11 camelia ..rakudo-jvm de7894: OUTPUT«===SORRY!===␤Invalid code-point U+0FFFE␤»
20:11 jnthn perl6: say chr(0xFFFE)
20:11 camelia niecza v24-109-g48a8de3: OUTPUT«\x{FFFE}␤»
20:11 camelia ..rakudo-jvm de7894: OUTPUT«Invalid code-point U+0FFFE␤  in block  at /tmp/tmpfile:1␤␤»
20:11 camelia ..rakudo-moar de7894: OUTPUT«Error encoding UTF-8 string near grapheme position 0 with codepoint 65534␤  in method print at src/gen/m-CORE.setting:13575␤  in method print at src/gen/m-CORE.setting:13573␤  in sub say at src/gen/m-CORE.setting:13374␤  in block  at /tmp/tmpfile:1…»
20:11 camelia ..rakudo-parrot de7894: OUTPUT«Invalid character for UTF-8 encoding␤␤  in block  at /tmp/tmpfile:1␤␤»
20:11 FROGGS m: charname("\x[FFFE]")
20:12 camelia rakudo-moar de7894: OUTPUT«[31m===[0mSORRY![31m===[0m Error while compiling /tmp/xaC3rZkbBDâ�¤Undeclared routine:â�¤    charname used at line 1â�¤â�¤Â»
20:12 FROGGS m: uniname("\x[FFFE]")
20:12 camelia rakudo-moar de7894: ( no output )
20:12 FROGGS m: say uniname("\x[FFFE]")
20:12 camelia rakudo-moar de7894: OUTPUT«<unassigned>␤»
20:13 lue FFFE and FFFF are non-charachters, as are 1FFFE and 1FFFF, 2FFFE and 2FFFF ...  (http://www.unicode.org/faq/private_use.html#nonchar4)
20:15 jnthn On latest MoarVM, we also refuse to parse \x[FFFE] like on JVM
20:15 jnthn Saying it's an invalid codepoint.
20:15 jnthn Well, I guess technically it's not parse, but rather "make the string constant for"
20:16 jnthn We could do with a ruling on whether that should be allowed I guess. Currently JVM and Parrot disallow it.
20:16 jnthn And HEAD Moar has a patch to disallow it
20:16 jnthn But we didn't bump to it yet.
20:16 jnthn Which is why I see the failures.
20:16 lue though, http://www.unicode.org/faq/private_use.html#nonchar7 (and the next few questions) and http://www.unicode.org/versions/corrigendum9.html  indicate we shouldn't die on noncharacters, perhaps.
20:17 dalek rakudo/nom: 15ece87 | jnthn++ | src/vm/moar/ops/perl6_ops.c:
20:17 dalek rakudo/nom: Don't try to fix up to a NULL frame on Moar.
20:17 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/15ece87e12
20:17 * FROGGS recompiles
20:17 jnthn FROGGS: That seems to fix your frame_inc bug reports
20:18 FROGGS we will see if it fixes v5 as well :o)
20:18 lue perl6: say "\x[FFFE]"
20:18 camelia niecza v24-109-g48a8de3: OUTPUT«\x{FFFE}␤»
20:18 camelia ..rakudo-parrot de7894: OUTPUT«===SORRY!===␤Invalid character for UTF-8 encoding␤␤»
20:18 camelia ..rakudo-moar de7894: OUTPUT«Error encoding UTF-8 string near grapheme position 0 with codepoint 65534␤  in method print at src/gen/m-CORE.setting:13575␤  in method print at src/gen/m-CORE.setting:13573␤  in sub say at src/gen/m-CORE.setting:13374␤  in block  at /tmp/tmpfile:1…»
20:18 camelia ..rakudo-jvm de7894: OUTPUT«===SORRY!===␤Invalid code-point U+0FFFE␤»
20:19 jnthn lue: On HEAD MoarVM it gives exactly the same as JVM now.
20:20 lue If I understand the FAQ and corrigendum 9 correctly, rakudo is just wrong there. (I couldn't say if niecza is totally right though)
20:23 jnthn OK. Will give TimToady++ a chance to weigh in too.
20:23 jnthn Will need to do something about both Moar and JVM if we're not to reject them.
20:23 FROGGS jnthn++ # it fixes v5 \o/
20:23 jnthn \o/
20:26 kaare_ joined #perl6
20:27 [Coke] AAIIIIGH accidentally killed the manual daily run.
20:28 * [Coke] restarts it, just from the jvm on..
20:28 FROGGS >.<
20:53 baest joined #perl6
20:58 baest joined #perl6
21:04 baest joined #perl6
21:04 sivoais joined #perl6
21:17 [Coke] java run waiting slowly at S02-types/mixhash.rakudo.jvm.......................
21:22 timotimo so, when should i arrive in hannover for GPW tomorrow?
21:24 baest_ joined #perl6
21:26 timotimo oh wow.
21:27 timotimo i seriously thought hannover was frankfurt
21:27 timotimo "cool, it's not far, i can go there by car"
21:27 timotimo nope. 500km.
21:28 moritz 500km by car are doable. Just ask our friends from the US :-)
21:28 timotimo yeah, but i'ven't grown up there
21:28 timotimo i'm kind of capable of doing the ride home to my parents in one sitting, just about. and that's just ~350km
21:28 moritz most people havent :-)
21:28 * masak .oO( way hannover there )
21:29 timotimo i'll take a train for that distance
21:29 timotimo should probably find something useful to hack on during the train ride, too
21:34 perigrin even by US standards 500KM is a long drive ...
21:34 perigrin like half of Florida.
21:39 timotimo okay, so if i catch the train at 9:03, i can get there by 1400
21:40 timotimo moritz, i'm confused about your highlight at 1730 today
21:42 moritz timotimo: ah, because I answered a question that FROGGS asked, not you. Sorry.
21:42 moritz http://irclog.perlgeek.de/perl6/2014-03-25#i_8488648
21:43 moritz so, let's try again
21:43 moritz FROGGS: the day was meant to be tomorrow, but was postponed a week
21:44 Vlavv joined #perl6
21:58 lizmat joined #perl6
21:58 vendethiel is there a function composition operator in perl6 defined by default ? I don't think I've seen one
21:59 lue vendethiel: wouldn't it just be f(g(x)) ? :)
21:59 vendethiel lue: that's not a composition operator
22:00 vendethiel unless Perl6 has lazy evaluation now ;) ?
22:00 lue looks like it to me: https://en.wikipedia.org/wiki/Function_composition
22:01 vendethiel lue: you're not getting a function back from that, you can't store it in a variable for later use
22:01 lue sub Z(x) { f(g(x)) }  :)
22:01 vendethiel yes, that's why I talked about lazily evaluated it
22:01 jnthn Well, I think the question is "I want something where I give it f and g and it gives me back a function where if I do thingy(x) it does f(g)x))
22:01 jnthn "
22:01 vendethiel exactly jnthn
22:01 jnthn And I think the answer is "no, there ain't one, but it's easy to add operators" :)
22:02 jnthn { f(g($_)) } # is quite short, though :)
22:02 TimToady http://rosettacode.org/wiki/Function_composition#Perl_6
22:03 jnthn shoulda guessed rosettacode would have one :P
22:03 vendethiel That's why I asked "defined by default"
22:03 jnthn *nod*
22:04 vendethiel well, I'd like to have it by default, but probably not with unicode
22:04 vendethiel TimToady++
22:04 lue vendethiel: there isn't a default composition operator, because Perl 6 already has the stuff to do it :) .
22:04 jnthn lue: Well, it has the stuff to do a lot of things we gave operators to :P
22:04 adu TimToady++
22:04 * vendethiel likes point-free style
22:04 TimToady well, it doesn't do argument currying like Haskell does, but that's not something mere mortals can grok anyway
22:04 * vendethiel ... up to a certain extent
22:05 vendethiel "argument currying" is something "mere mortals can't grok" ? really ?
22:05 lue vendethiel: I thought the ring operator was the only way to represent function comp. What ASCII-based repr is there that isn't   { f(g($_)) }  ?
22:05 adu TimToady: are you saying that Haskellers are some kind of gods?
22:05 vendethiel lue: haskell has Prelude.(.)
22:05 lue adu: the first Perl 6 was written in Haskell, so... :P
22:05 adu lue: Pugs?
22:06 lue yep.
22:06 vendethiel au is a great dev
22:06 adu I still think that's blasphemous
22:06 vendethiel what is ?
22:07 TimToady adu: maybe not gods, but certainly space aliens :)
22:07 vendethiel TimToady: currying is like ... The easy part of haskell. The bottom
22:07 adu TimToady: oh ok :)
22:07 vendethiel if you came and said, hey, let's not add semirings, arrows and comonads to Perl6, I'd agree. Not so much on currying ...
22:07 TimToady by currying I don't mean partial function application
22:08 vendethiel you mean 1-arg functions ?
22:08 adu vendethiel: yeah, try understanding like monadic arrow-based state transformer lifters
22:08 adu vendethiel: I just made that up, BTW
22:08 vendethiel adu: hahaha, I do haskell, so I still have one clue left
22:08 vendethiel but I agree this is hard
22:09 lue vendethiel: point is, P6 does have function composition, but no dedicated ring operator for it. You can make such an operator if necessary :)
22:09 vendethiel TimToady: what do you mean by "currying" if it's not 1-arg-functions ?
22:10 adu vendethiel: I should write a monad tutorial
22:10 TimToady yes, the 1-arg stuff
22:10 vendethiel adu: please :p
22:10 vendethiel TimToady: that's not hard to grok, really, just a different view.
22:10 vendethiel I was pretty surprised when I first looked at perl5 "function arguments" (and still am)
22:11 adu vendethiel: my tutorial is really short: bind = (overriding ;), return = (overriding return)
22:11 vendethiel adu: that's just trolling
22:11 adu vendethiel: oh, sorry
22:12 * vendethiel will define a macro to get `curried sub foo($bar, $baz) {}`
22:12 * vendethiel when perl 6 will be able to do so
22:13 adu but I still think that's the best model of monads, as a tool to make (;) do something else
22:13 vendethiel don't feed the troll
22:13 adu *sigh* ok
22:14 * TimToady is only paying attention with one ear, 'cuz we're madly packing for Beijing
22:14 skids joined #perl6
22:15 TimToady (CSDN/OSDC this weekend)
22:15 TimToady *OSTC
22:16 adu how is the JVM port coming along?
22:19 jnthn vendethiel: You can write that today but the optimizer's arg checker over-zealously gets upset
22:20 vendethiel well, it can have the same arity, but have made the args optional
22:20 jnthn vendethiel: https://gist.github.com/jnthn/9772688
22:20 jnthn vendethiel: Run with --optimize=off
22:20 vendethiel jnthn++
22:20 vendethiel and, of course, Perl6++
22:21 vendethiel That's really neat. I'll keep that gist.
22:24 jnthn I think I probably should teach the optimizer not to whine on compile-time wrapped things.
22:24 jnthn It knows it can't inline them.
22:24 jnthn But it should really not get upset over the args not matching.
22:25 * vendethiel links that gist to people
22:25 adu jnthn! long time no see
22:27 jnthn o/ adu
22:27 jnthn adu: JVM port - nicely. Even has NativeCall support these days :)
22:27 adu TimToady: http://ostc.csdn.net/?
22:27 jnthn TimToady: So, when is my deadline for fixing this pesky work-passing bug... :)
22:27 adu jnthn: wow
22:28 adu jnthn: I honestly want to do more to help, but it's hard to contact you when your timezone is different than mine
22:28 jnthn adu: Well, there's email if that's easier...
22:29 adu 拉里 · 沃尔?
22:29 adu it might be
22:35 lizmat timotimo: if you get to the GPW at 14:00, you will have missed most of the Perl 6 presentations :-(
22:50 BenGoldberg joined #perl6
22:55 hoverboard joined #perl6
23:01 woolfy joined #perl6
23:08 [Coke] 500 km gets you from my house to niagara falls!
23:09 * BenGoldberg wonders how long it would take him to bike to niagara falls... too long ;)
23:09 jnthn Hey, it's even harder to bike it from here :P
23:12 [Coke] ... up to S06!... *sigh*
23:14 BenGoldberg What's 414 miles, in kilometers?
23:14 jnthn r: say 414 * 1.6
23:14 BenGoldberg ^ that's how far I am from Niagara Falls, NY
23:15 camelia rakudo-jvm 15ece8: OUTPUT«(timeout)»
23:15 camelia ..rakudo-parrot 15ece8, rakudo-moar 15ece8: OUTPUT«662.4␤»
23:15 [Coke] BenGoldberg: I'm just north of Hudson. You?
23:15 BenGoldberg In Port Chester, NY
23:15 jnthn In Europe :P
23:16 jnthn I really should visit Niagra Falls sometime, though :)
23:16 [Coke] jnthn: +1
23:16 [Coke] let me know if you ever do a US tour. :)
23:16 BenGoldberg I went once as a kid.  It was pretty cool.
23:20 [Coke] anyone have a URL to an article that describes a compiler release that targets the JMV?
23:20 [Coke] *JVM
23:21 * colomon sees the Falls every time he goes to New York.  Admittedly that's only once every five years or so.
23:21 [Coke] man, it takes a long time for wikipedia to email you a password reset
23:24 * simula67 suspects bailador is not working because it does not send the conncetion: close HTTP header
23:30 * [Coke] hurls https://en.wikipedia.org/wiki/List_of_JVM_languages#JVM_implementations_of_existing_languages
23:33 jnthn [Coke]++
23:33 jnthn https://en.wikipedia.org/wiki/Rakudo_Perl_6 doesn't mention that it targets MoarVM, fwiw
23:33 [Coke] on it.
23:34 jnthn simula67: Yeah, that's required in HTTP/1.1 if you don't support keep-alive, iirc.
23:35 [Coke] done
23:37 xenoterracide joined #perl6
23:49 woolfy joined #perl6
23:53 Alina-malina joined #perl6
23:54 jnthn Time for some rest...'night o/
23:57 woolfy left #perl6

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

Perl 6 | Reference Documentation | Rakudo