Perl 6 - the future is here, just unevenly distributed

IRC log for #perl6, 2014-01-09

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 xinming joined #perl6
00:06 abnorman joined #perl6
00:39 jercos joined #perl6
00:58 FROGGS masak: no, more the fact to call a method on a bare name that could be anything... but well, I think it is possible to implement that ...
01:05 stevan_ joined #perl6
01:22 kbenson joined #perl6
01:44 stevan_ joined #perl6
02:03 cognominal joined #perl6
02:05 dayangkun joined #perl6
02:09 cognominal joined #perl6
02:11 kst` joined #perl6
02:13 apejens_ joined #perl6
02:13 awwaiid_ joined #perl6
02:14 smash_ joined #perl6
02:15 cotto joined #perl6
02:18 [Coke] nope, rakudo.jvm still aborting tests when used with the eval server.
02:19 BinGOs joined #perl6
02:56 Maddingue joined #perl6
04:02 aindilis joined #perl6
04:23 xinming_ joined #perl6
04:31 xinming joined #perl6
04:34 preflex_ joined #perl6
04:43 CK joined #perl6
04:49 awwaiid joined #perl6
04:50 Piers_ joined #perl6
04:50 xinming_ joined #perl6
04:57 Alina-malina joined #perl6
04:58 Alina-malina joined #perl6
05:06 thou joined #perl6
05:08 stevan_ joined #perl6
05:13 timotimo [Coke]: do you think you can modify the runner so that it uses one evalserver per S* directory?
05:21 rurban1 joined #perl6
05:44 diakopter timotimo: nice REAMME patch
05:44 diakopter er REAMDE
05:47 abnorman joined #perl6
05:47 DrEeevil joined #perl6
05:49 lue .oO(ream de paper)
05:50 raydiak how much of S17 is supported by per6-j?
06:00 abnorman joined #perl6
06:13 dmol joined #perl6
06:17 moritz jnthn++ # blog post
06:25 [Sno] joined #perl6
06:27 hummeleBop joined #perl6
06:31 Alina-malina joined #perl6
06:45 lue joined #perl6
06:46 raydiak r: my $t1 = now; for ^1e3 { for ^1e3 { } }; my $t2 = now; for ^1e3 X ^1e3 {}; my $t3 = now; say "{$t2-$t1} {$t3-$t2}";
06:46 camelia rakudo-parrot 8a486a, rakudo-jvm 8a486a: OUTPUT«(timeout)»
06:47 raydiak r: my $t1 = now; for ^1e2 { for ^1e2 { } }; my $t2 = now; for ^1e2 X ^1e2 {}; my $t3 = now; say "{$t2-$t1} {$t3-$t2}";
06:47 camelia rakudo-jvm 8a486a: OUTPUT«(timeout)»
06:47 camelia ..rakudo-parrot 8a486a: OUTPUT«3.02521725 7.47723308␤»
06:47 darutoko joined #perl6
06:48 grondilu joined #perl6
06:48 raydiak r: my $t1 = now; for ^1e1 { for ^1e1 { } }; my $t2 = now; for ^1e1 X ^1e1 {}; my $t3 = now; say "{$t2-$t1} {$t3-$t2}";
06:48 camelia rakudo-parrot 8a486a: OUTPUT«0.08715050 0.19410099␤»
06:48 camelia ..rakudo-jvm 8a486a: OUTPUT«0.034 0.104␤»
06:50 hoverboard joined #perl6
06:50 hoverboard joined #perl6
06:50 raydiak r: my $t1 = now; for eager ^1e1 { for eager ^1e1 { } }; my $t2 = now; for eager ^1e1 X ^1e1 { }; my $t3 = now; say "{$t2-$t1} {$t3-$t2}";
06:51 camelia rakudo-jvm 8a486a: OUTPUT«0.189 0.1␤»
06:51 camelia ..rakudo-parrot 8a486a: OUTPUT«0.1570065 0.1151438␤»
06:51 raydiak r: my $t1 = now; for eager ^1e2 { for eager ^1e2 { } }; my $t2 = now; for eager ^1e2 X ^1e2 { }; my $t3 = now; say "{$t2-$t1} {$t3-$t2}";
06:51 camelia rakudo-parrot 8a486a, rakudo-jvm 8a486a: OUTPUT«(timeout)»
06:52 kaleem joined #perl6
07:12 DrEeevil http://bpaste.net/show/166222/ # nqp-2013.12 test failure (linux/amd64)
07:14 raiph joined #perl6
07:16 berekuk joined #perl6
07:24 DrEeevil http://bpaste.net/show/166223/ # details of above test failure
07:25 FROGGS joined #perl6
07:31 FROGGS DrEeevil: the qregex test was known and is already fixed, but the sprintf test is news to me
07:31 DrEeevil FROGGS: anything needed for further debugging?
07:32 FROGGS DrEeevil: your nqp --version would be interesting
07:33 DrEeevil FROGGS: # nqp-p --version
07:33 DrEeevil This is nqp version 2013.12 built on parrot 5.10.0 revision 0
07:33 FROGGS I get these fails too! O.o
07:33 DrEeevil good :)
07:33 DrEeevil then I'll not worry too much
07:34 FROGGS but I do instead :o)
07:34 FROGGS nqp-p: say(nqp::sprintf("%.0f", [1.969]))
07:34 camelia nqp-parrot: OUTPUT«1.␤»
07:34 FROGGS star: say(nqp::sprintf("%.0f", [1.969]))
07:34 camelia star 2013-09: OUTPUT«This type does not support positional operations␤␤»
07:34 FROGGS ?
07:35 DrEeevil hrm, looks like there's an intermediate release 2013.12.1 ... let me have a look
07:35 FROGGS DrEeevil: no, it fails on HEAD
07:35 DrEeevil ah. ok then, but rakudo wants .12.1 anyway
07:35 FROGGS but I wonder what caused it to break... I can bisect this easily
07:36 DrEeevil also, wtf githerp, the tarballs have stupid pathnames in them
07:36 DrEeevil makes testing extra fun
07:48 SamuraiJack joined #perl6
07:57 wsri_ joined #perl6
07:59 wsri_ joined #perl6
08:01 dmol joined #perl6
08:15 rurban1 joined #perl6
08:17 zakharyas joined #perl6
08:29 salv0 joined #perl6
08:30 DrEeevil hrm
08:30 DrEeevil moarvm head fails to build sanely
08:30 DrEeevil Configuring native build environment ................... fatal: No names found, cannot describe anything.
08:30 DrEeevil that error is from Configure.pl using if (-e '.git' && open(my $GIT, '-|', "git describe --tags")) {
08:31 DrEeevil and that doesn't work sanely
08:32 atrodo joined #perl6
08:32 DrEeevil sooo ... that's very not cool
08:35 dylanwh joined #perl6
08:38 zakharyas joined #perl6
08:40 [particle]1 joined #perl6
08:42 ivan`` joined #perl6
08:42 [particle] joined #perl6
08:44 telex joined #perl6
08:55 DrEeevil ah, it's unwilling to tolerate tarballs :) /me hotfixes with sed
08:56 DrEeevil (also, it'd be much more fun if things were hosted on something more reliable than a toaster)
09:04 DrEeevil http://bpaste.net/show/166235/ # build failure of nqp with moarvm
09:05 ssutch joined #perl6
09:09 sqirrel joined #perl6
09:10 denis_boyun joined #perl6
09:17 SamuraiJack joined #perl6
09:21 hoelzro morning #perl6
09:23 denis_boyun joined #perl6
09:33 V_S_C joined #perl6
09:36 dakkar joined #perl6
09:38 V_S_C While building x86 Parrot with ICU I couldn't link gethostname with WS2_32
09:39 V_S_C Since then I've stuck with AMDx64
09:39 V_S_C left #perl6
09:41 pecastro joined #perl6
09:44 fhelmberger joined #perl6
09:57 FROGGS DrEeevil: umm, the sprintf fails you reported (http://bpaste.net/show/166223/) are actuall marked as TODO, don't you get an output like:
09:57 FROGGS not ok 127 - %.0f of 1.969 should be 2 # TODO on nqp-p
09:57 FROGGS #   Actual value: 1.
09:57 FROGGS # Expected value: 2
09:59 SamuraiJack joined #perl6
10:14 masak antenoon, #perl6
10:15 hoelzro ahoy masak
10:16 masak ooh, HTML5 has not only "torment the implementors", but "torment the specifyers" and "torment the theoreticians" too: http://www.w3.org/TR/html-design-principles/#priority-of-constituencies
10:16 masak I like that.
10:19 arnsholt Indeed
10:21 masak specifiers*
10:32 V_S_C joined #perl6
10:32 hoelzro hmm
10:32 hoelzro r: map({ $_ }, (0 .. 8) X (0 .. 8))
10:32 camelia rakudo-jvm f614e5: OUTPUT«Cannot call 'map'; none of these signatures match:␤:(&code, *@values)␤:(&code, Whatever )␤  in any  at gen/jvm/BOOTSTRAP.nqp:1201␤␤»
10:32 camelia ..rakudo-parrot f614e5: OUTPUT«Cannot call 'map'; none of these signatures match:␤:(&code, *@values)␤:(&code, Whatever )␤  in any  at gen/parrot/BOOTSTRAP.nqp:1218␤  in any  at gen/parrot/BOOTSTRAP.nqp:1209␤  in sub map at gen/parrot/CORE.setting:1782␤  in block  at /tmp/f…»
10:32 hoelzro why doesn't that work?
10:33 FROGGS p: say ({ $_ }).WHAT
10:33 camelia rakudo-parrot f614e5: OUTPUT«(Block)␤»
10:33 FROGGS p: say ((0 .. 8) X (0 .. 8)).WHAT
10:33 camelia rakudo-parrot f614e5: OUTPUT«(List)␤»
10:33 FROGGS hmmm
10:34 masak hoelzro: X is looser than ,
10:34 hoelzro oooooh
10:34 V_S_C @Tadzik: Perl6 bootstrap.pl says
10:34 masak r: map { $_ }, ((0 .. 8) X (0 .. 8))
10:34 camelia rakudo-parrot f614e5, rakudo-jvm f614e5: ( no output )
10:34 V_S_C Could not find lib in any of: C:\rakudo/languages/perl6/site/lib, C:\rakudo/lang
10:34 masak r: map { $_ }, (0 .. 8 X 0 .. 8)
10:35 camelia rakudo-parrot f614e5, rakudo-jvm f614e5: ( no output )
10:35 FROGGS ahh
10:35 V_S_C uages/perl6/vendor/lib, C:\rakudo/languages/perl6/lib, C:\Users\Administrator/.p
10:35 masak hoelzro: slogan: if you want to use X or Z with &map, better parenthesize.
10:35 V_S_C erl6/2013.12-249-g33f252e/lib
10:35 hoelzro masak: noted, thanks!
10:36 tadzik V_S_C: oh, please don't paste on the channel :)
10:36 tadzik but that's quite worrying
10:36 tadzik "use lib" is supposed to be a core modul
10:37 V_S_C hmm... I switched to MoarVM btw
10:39 V_S_C Shall I remove the gist from 2 days back?
10:39 V_S_C It means nothing, I'll try & stick with Moar.
10:41 V_S_C gone :)
10:41 V_S_C left #perl6
11:07 kbaker joined #perl6
11:31 salv0 joined #perl6
11:54 atroxaper joined #perl6
12:03 rindolf joined #perl6
12:18 rurban1 joined #perl6
12:26 fhelmberger_ joined #perl6
12:59 spider-mario joined #perl6
13:20 kaleem joined #perl6
13:31 dmol joined #perl6
13:48 ajr joined #perl6
13:51 salv0 joined #perl6
14:08 _ilbot joined #perl6
14:08 Topic for #perl6 is now »ö« Welcome to Perl 6! | http://perl6.org/ | evalbot usage: 'perl6: say 3;' or rakudo:,  niecza:, std:, or /msg camelia perl6: ... | irclog: http://irc.perl6.org | UTF-8 is our friend!
14:13 Piers_ joined #perl6
14:19 wooden joined #perl6
14:19 wooden joined #perl6
14:25 [Coke] just saw this facebook aphorism-pic: "Never waste your time trying to explain who you are to people who are committed to misunderstanding you". Thought it might be relevant to the channel's interest.
14:26 sqirrel joined #perl6
14:31 * grondilu fails to see the relation with #perl6
14:32 moritz it's the wordy version of "haters gonna hate" :-)
14:45 kbaker_ joined #perl6
14:46 bluescreen10 joined #perl6
14:50 masak well, yes "trying to explain" is already the wrong framing.
14:51 masak "here's something useful and cool" is what we should focus on.
15:05 rurban1 joined #perl6
15:12 kaleem joined #perl6
15:23 diakopter masak: okay, but you still have to try to explain how it's useful and cool, even if what you're demoing is immediately and obviously useful and cool to you
15:24 diakopter (if they're haters)
15:24 diakopter (which you wouldn't know in advance necessarily)
15:25 masak +1 on explaining.
15:25 masak but generally, no, I don't write blog posts trying to convince haters.
15:25 masak too small ROI.
15:25 diakopter well the quote from [Coke] wasn't about convincing; it was about explaining
15:26 diakopter (but of course, persuading to understand is important sometimes too)
15:27 diakopter as the logical positivists say, understanding is believing
15:27 diakopter (and the gnostics)
15:28 [Coke] I
15:36 dmol joined #perl6
15:37 treehug88 joined #perl6
15:38 hoelzro hmm
15:38 hoelzro where does Range.roll come from?
15:38 * hoelzro looks
15:40 timotimo from Iterable? Positional?
15:41 timotimo r: say Cool.^methods>>.Str.grep(/roll/)
15:41 camelia rakudo-parrot f614e5, rakudo-jvm f614e5: OUTPUT«␤»
15:41 timotimo r: say Positional.^methods>>.Str.grep(/roll/)
15:41 camelia rakudo-parrot f614e5, rakudo-jvm f614e5: OUTPUT«␤»
15:41 timotimo r: say Iterable.^methods>>.Str.grep(/roll/)
15:41 camelia rakudo-parrot f614e5, rakudo-jvm f614e5: OUTPUT«␤»
15:41 timotimo hm
15:41 timotimo r: Cool.roll(1)
15:41 camelia rakudo-parrot f614e5, rakudo-jvm f614e5: ( no output )
15:42 [Coke] hoelzro: from Range.
15:42 jnap joined #perl6
15:42 hoelzro [Coke]: that much I figured =)
15:42 [Coke] src/core/Range.pm has a method roll.
15:42 [Coke] it's not inheriting it.
15:42 hoelzro r: (0..9).roll(11)
15:42 camelia rakudo-parrot f614e5, rakudo-jvm f614e5: ( no output )
15:42 [Coke] line 138
15:42 timotimo ah, ok
15:43 timotimo that makes sense
15:43 timotimo so it won't try to reify a 0..10000000000 to a list just to roll a few elements out of it
15:43 hoelzro yeah, when I try the above in the REPL, I get a single number
15:44 hoelzro er
15:44 hoelzro wait
15:44 hoelzro I'm dumb =/
15:44 FROGGS *g*
15:44 hoelzro I had the expr prefixed with a +
15:44 timotimo hah
15:45 timotimo i was about to theorize you wrote 1..10.roll(1) and ended up getting a Range from 1 to 10 each time :P
15:47 btyler joined #perl6
15:47 timotimo "Welcome to Pyramid.  Sorry for the convenience." :D
15:48 toebu joined #perl6
15:51 ajr joined #perl6
15:58 Psyche^_ joined #perl6
16:11 ruoso joined #perl6
16:12 zakharyas joined #perl6
16:14 ssutch joined #perl6
16:15 jnap joined #perl6
16:16 hoelzro hmm
16:17 hoelzro so I'm trying to classify a group of sudoku cells based on row/column
16:17 hoelzro so the "obvious" thing to do would be my %row-to-cell = @cells.classify: { .row }
16:17 hoelzro but since the rows are 0 .. 8, it seems silly to stick it in a hash
16:18 hoelzro what would be the Perl 6-iest way to do that?
16:18 perigrin I'm to 6-y for my hat ... to 6-y for my hat ... yeah let's not go there.
16:18 masak .sort(*.key).values ?
16:18 hoelzro that...makes a lot of sense.
16:18 timotimo r: my @row-to-cell; @row-to-cell[@cells>>.row] = @cells
16:18 hoelzro thanks mask
16:18 camelia rakudo-parrot f614e5: OUTPUT«[31m===[0mSORRY![31m===[0m Error while compiling /tmp/A6uwO0w5hNâ�¤Variable '@cells' is not declaredâ�¤at /tmp/A6uwO0w5hN:1â�¤------> [32m @row-to-cell; @row-to-cell[@cells>>.row[33mâ��[31m] = @cells[0mâ�¤    expecting any of:â�¤        method ar…»
16:18 camelia ..rakudo-jvm f614e5: OUTPUT«[31m===[0mSORRY![31m===[0m Error while compiling /tmp/4gvywWz6gRâ�¤Variable '@cells' is not declaredâ�¤at /tmp/4gvywWz6gR:1â�¤------> [32m @row-to-cell; @row-to-cell[@cells>>.row[33mâ��[31m] = @cells[0mâ�¤    expecting any of:â�¤        method argum…»
16:18 timotimo er ... that was not supposed to have a r: in front :)
16:18 timotimo it meant to have rob:
16:19 hoelzro whoa
16:19 timotimo i think that's plenty sixy :)
16:19 hoelzro that's an interesting approach timo
16:19 timotimo but masak's is nice, too
16:19 hoelzro hmm
16:19 hoelzro wouldn't the array elements just keep getting clobbered?
16:19 hoelzro instead of each containing an array of cells in that row?
16:20 timotimo oh, right
16:20 timotimo i didn't think of that
16:21 hoelzro my @row-to-cell := ActuallyContainsAList; # ;)
16:29 spider-mario when I run make to build rakudo nom, I get:
16:29 spider-mario make: *** No rule to make target '-runner-default', needed by 'all'. Arrêt.
16:29 FROGGS spider-mario: how does your Configure line look like?
16:29 spider-mario perl Configure.pl --parrot-option='--optimize="-O3 -flto"' --gen-parrot --prefix=$HOME/.perl6/
16:30 spider-mario hm, I think it caused a warning the first time I ran it
16:30 spider-mario I’m looking back
16:31 spider-mario yeah
16:31 spider-mario Use of uninitialized value $default_backend in substr at Configure.pl line 115.
16:32 spider-mario perhaps fc97467ed55a10a548ea935b1c5c8ba0165748f7 was incomplete
16:32 spider-mario (it should initialize $default_backend as well
16:32 spider-mario )
16:32 FROGGS spider-mario: please also pass --backend=parrot
16:35 moritz --gen-parrot implies the parrot backend
16:35 hoelzro can anyone explain wtf is going on here?
16:35 hoelzro https://gist.github.com/hoelzro/8337247
16:35 hoelzro I'm not sure if I just don't understand something, or if I've found a bug.
16:36 moritz hoelzro: try to add a leading ; to the map block
16:36 moritz hoelzro: it would also be helpful to know in which way your code fails
16:36 hoelzro still f'ed up
16:37 hoelzro hang on, I'll update with output
16:38 hoelzro ok, refresh
16:38 * hoelzro .oO( why aren't gists syntax highlighted? )
16:39 hoelzro I expect $value to contain an Int
16:39 hoelzro which it does if I uncomment line 12
16:41 hoelzro r: for ^11 → { .say }
16:41 camelia rakudo-jvm f614e5: OUTPUT«[31m===[0mSORRY![31m===[0m Error while compiling /tmp/R2FDVp1csTâ�¤Missing blockâ�¤at /tmp/R2FDVp1csT:1â�¤------> [32mfor ^11 [33mâ��[31m→ { .say }[0mâ�¤    expecting any of:â�¤        postfixâ�¤        infix stopperâ�¤        infix or meta-infix…»
16:41 camelia ..rakudo-parrot f614e5: OUTPUT«[31m===[0mSORRY![31m===[0m Error while compiling /tmp/ybdZKA6tkgâ�¤Missing blockâ�¤at /tmp/ybdZKA6tkg:1â�¤------> [32mfor ^11 [33mâ��[31m→ { .say }[0mâ�¤    expecting any of:â�¤        postfixâ�¤        infix stopperâ�¤        infix or meta-inf…»
16:41 hoelzro ='(
16:41 FROGGS r: for ^11 -> { .say } # texas wtf!
16:41 camelia rakudo-jvm f614e5: OUTPUT«Too many positional parameters passed; got 1 but expected 0␤  in block  at gen/jvm/CORE.setting:7346␤  in block  at gen/jvm/CORE.setting:7210␤  in method gimme at gen/jvm/CORE.setting:7628␤␤»
16:41 camelia ..rakudo-parrot f614e5: OUTPUT«Too many positional parameters passed; got 1 but expected 0␤  in block  at /tmp/CXT8tvJGzb:1␤␤»
16:41 FROGGS sort of
16:42 moritz hoelzro: I still don't see output in your gist
16:42 hoelzro it's in a comment at the end of line 14
16:43 moritz that's pretty much exactly what I'd expect
16:43 hoelzro @numbers.pick(1) returning an array of 1 .. 9?
16:43 hoelzro r: (1 .. 9).pick(1)
16:43 camelia rakudo-parrot f614e5, rakudo-jvm f614e5: ( no output )
16:43 moritz yes, because that's the value of the pair
16:44 hoelzro ooooh
16:44 hoelzro is :delete returning the pair?
16:44 moritz you seem to expect  that my @numbers = %cell-to-numbers{$victim}:delete; flattens
16:44 moritz no, it's returning a parcel
16:44 moritz and the one element in the parcel is an array
16:44 hoelzro I see
16:44 hoelzro I did expect it to flatten
16:44 moritz and the parcel is flattened out, but not the array, because it's an array in a scalar
16:45 moritz the :delete delets one element, so the resutling array/list/whatever also contains one element
16:45 hoelzro ah ha
16:45 kaleem joined #perl6
16:45 moritz strangely consistent
16:45 hoelzro I just don't understand flattening rules in Perl 6, I think =/
16:45 panchiniak joined #perl6
16:46 timotimo hoelzro: it would seem the deployment of the new pygments to github is not complete >_>
16:46 hoelzro timotimo: indeed =/
16:46 hoelzro or gist uses something else
16:46 FROGGS but hey! it is still awesome!
16:46 silug joined #perl6
16:46 timotimo i think it shouldn't
16:46 hoelzro I know, wtf
16:46 timotimo hoelzro: the flattening rules took me a long time to grok, too
16:48 moritz it doesn't help that there are still flattening bugs in our codebase
16:48 timotimo hm. i shouldn't imply that i grok the flattening rules
16:48 PerlJam .oO( there's a pun about squashing bugs in there somewhere )
16:48 hoelzro my $value = $victim.value = @numbers.pick(1); # should set both $value and $victim.value, right?
16:49 sqirrel joined #perl6
16:50 grondilu r: my $p = foo => 1; say $p.value = "bar"; # I doubt this can work
16:50 camelia rakudo-parrot f614e5, rakudo-jvm f614e5: OUTPUT«bar␤»
16:50 grondilu oh, it does.  I thought Pairs were immutable for some reason
16:51 PerlJam Enum is the immutable Pair IIRC
16:52 PerlJam There's a whole list of immutables in S02 I think
16:55 FROGGS[mobile] joined #perl6
17:09 timotimo so, should we support → instead of ->?
17:10 timotimo what about ⇒ for pairs? :3
17:10 locsmif joined #perl6
17:10 timotimo and ♥♥ instead of v6? (because it's 2x <3)
17:15 FROGGS joined #perl6
17:15 ssutch joined #perl6
17:18 broquaint joined #perl6
17:28 segomos_ timotimo: haha
17:28 diakopter timotimo: sure, why not.. adding additional alternations doesn't slow down successes
17:29 diakopter <shrug>
17:29 diakopter (otoh, maybe better to leave those for libraries' or users' custom operators)
17:30 samebchase joined #perl6
17:31 thou joined #perl6
17:33 diakopter (otooh, maybe users' custom operators should override previously defined semantics.. o_O )
17:33 diakopter (even those that aren't in standalone rules)
17:39 benabik joined #perl6
17:43 hoelzro timotimo: support both =)
17:43 hoelzro like << >> and  « »
17:43 grondilu off topic:  live coverage of Antares launch in a few minutes: http://www.nasa.gov/multimedia/nasatv/index.html
17:46 timotimo oh no and i am on my mobile phone
17:48 jeffreykegler joined #perl6
17:50 ajr joined #perl6
17:54 moritz so, for when is the launch planned?
17:54 grondilu in 15m or so
17:54 denis_boyun joined #perl6
17:54 grondilu timotimo: Android?  http://www.nasa.gov/multimedia/nasatv/nasatv_live_android/
17:56 grondilu go to #space to discuss it you want to.
17:56 [Sno] joined #perl6
17:56 benabik How about #spaaaaaaace?
17:58 segomos_ 9 minutes to launch
18:09 sftp joined #perl6
18:11 spider-mario moritz: I think you forgot to set $default_backend in commit fc97467ed
18:12 spider-mario this: http://paste.awesom.eu/zue&amp;raw does it, but maybe you’d rather write it in another way
18:12 timotimo grondilu: i don't have a sensible network plan :)
18:14 moritz spider-mario: I don't think --gen-parrot should overwrite the default backend
18:14 moritz spider-mario: only set it if previously unset
18:15 spider-mario hm, true
18:34 berekuk joined #perl6
18:34 ajr_ joined #perl6
18:39 Rotwang joined #perl6
18:46 treehug88 joined #perl6
18:50 abnorman joined #perl6
18:50 masak dang, did I miss a launch? :/
18:51 segomos_ yea
18:53 timotimo they launched without you, sorry
18:53 timotimo they gave the spot away to some other person standing in line
18:53 masak was it nice?
18:54 masak the launch.
18:54 xinming joined #perl6
18:55 grondilu masak: it was nice, but the take-off was a bit scary as there was quite a lot of lateral motion.
19:00 masak ok.
19:06 benabik joined #perl6
19:15 Rotwang what did they launch?
19:15 Rotwang hi, btw
19:15 diakopter a rocket, I think
19:15 timotimo antares thingie
19:16 benabik Antres is the rocket.  Its cargo was a Cygnus resupply capsule for the ISS.
19:16 preflex Rotwang: you have 1 new message. '/msg preflex messages' to read it.
19:25 zakharyas joined #perl6
19:27 masak I was curious if they would show the docking with the ISS. but I didn't realize the launch was today.
19:27 benabik Docking is planned for Sunday.  They inch their way up to the ISS rather than launching right up to it.
19:28 moritz I have no idea how fast or slow the maneuvers are today, but I guess it'll take a few more hours or days until the docking
19:30 benabik NASA TV plans to air the rendezvous and docking Sunday at 5 AM ET and 7 AM ET, respectively.
19:31 benabik http://www.nasa.gov/multimedia/nasatv/MM_NTV_Breaking.html
19:39 sqirrel joined #perl6
19:45 masak \o/
19:51 kbenson joined #perl6
20:14 erkan joined #perl6
20:14 erkan joined #perl6
20:24 sjn joined #perl6
20:24 hoverboard joined #perl6
20:51 * masak .oO( Any sufficiently advanced magic is indistinguishable from Arthur C. Clarke. (Technology) )
20:52 xenoterracide joined #perl6
20:54 psch joined #perl6
20:54 psch hi #perl6
20:54 timotimo g'day
20:54 psch picking up where i've left: does the optimizer even know Exception and it's children?
20:55 psch because i can't seem to find a way to instantiate anything Exception-y in there
20:55 masak might be too early.
20:55 masak is there something similarly early that you can use as prior art?
20:55 psch not really, the optimizer itself calls nqp::die() a few times
20:56 psch World has creates exception, but from fiddling with it i can seem to get there the same way the optimizer does
20:56 jnthn You can find such types inside the optimizer, probably suing $*W.find_symbol or so
20:56 preflex jnthn: you have 1 new message. '/msg preflex messages' to read it.
20:56 psch i.e. via find_symbol
20:56 psch jnthn: i tried that
20:59 masak historical question: when were the low-precedence binary ops like 'or' and 'and' added to Perl?
21:01 psch "World creates expcetions, but from fiddling with how it does that in the optimizer i dont seem to be able to recreate creating exceptions that way in the optimizer" # because it was terribly jumbled before
21:04 hoelzro r: srand(8); say((1..9).roll(9));
21:04 camelia rakudo-jvm f614e5: OUTPUT«9 9 5 9 7 7 2 5 5␤»
21:04 camelia ..rakudo-parrot f614e5: OUTPUT«1 1 5 7 6 4 2 5 6␤»
21:04 hoelzro r: srand(8); say((1..9).roll(9));
21:04 camelia rakudo-jvm f614e5: OUTPUT«9 9 5 9 7 7 2 5 5␤»
21:04 camelia ..rakudo-parrot f614e5: OUTPUT«9 3 9 7 5 2 9 4 7␤»
21:04 hoelzro shouldn't that be identical on Pakudo?
21:04 kbenson left #perl6
21:06 FROGGS[mobile] joined #perl6
21:06 japhb__ hoelzro, I believe r-p is known to have a broken srand().  Fix welcome.  :-)
21:06 pecastro joined #perl6
21:06 hoelzro grr
21:07 hoelzro I'll just hold out for Mokudo =/
21:08 hoelzro let's say I want to flatten three lists to make a big one...
21:08 hoelzro ex. my @related = ( @by-row, @by-column, @by-block )
21:08 hoelzro how do I tell Perl 6 to flatten them?
21:08 timotimo that should already do it; depends on what's inside, though
21:09 timotimo you can .list each of them, but the @ should cause flattening already. depends on what's inside there, too :P
21:09 FROGGS[mobile] joined #perl6
21:10 sjn joined #perl6
21:10 dagurval joined #perl6
21:11 psch i just verified, the optimizer can't find Exception or (at least one of) it's children via $*W.find_symbol
21:11 psch i was thinking maybe stubs have something to do with it, but i don't really know where to look which stubs should be findable
21:12 benabik Isn't it something like X::Base?
21:12 fgomez joined #perl6
21:12 benabik Nvm, the base is Exception, the specific types are X::*
21:14 timotimo psch: it has to "be after" the definition of Exception
21:14 timotimo it has to do the @block_chain or what it's called thing
21:16 psch timotimo: i'm afraid i don't quite follow
21:17 psch the optimizer initializes @!block_chain as [$past[0]]
21:17 psch err, @!block_stack
21:17 dayangkun joined #perl6
21:18 hoelzro I think it's a case of me not understanding flattening earlier on in the code...
21:20 timotimo psch: right. when you don't have the Exception in there yet, you can't do anything
21:21 psch so that means typed exceptions in the optimizer require some major hackery?
21:21 psch as in, the past the optimizer gets is something like what --target=ast outputs for any given program
21:21 psch and in that output CORE doesn't get included and thus the World for the optimizer doesn't include it?
21:22 psch or am i missing something here
21:22 logie_ joined #perl6
21:22 timotimo no, it doesn't require hackery
21:22 timotimo it just means that you can't always make typed exceptions
21:25 psch okay, so i picked a not-really-solvable bug as something i want to hack on and ran into a wall
21:25 psch that's a little disappointing hah
21:26 psch i don't quite see how Exception could appear for other bits of code for the optimizer though
21:26 psch i mean, the stage order stays the same, right
21:26 psch which means for any error in the optimizer Exception isn't compiled yet
21:36 timotimo er
21:36 timotimo you can already create typed exception in stage ast
21:37 timotimo it uses the same block chain thingie the optimizer does
21:37 jnthn The setting is always in place as the program's outer-most scope.
21:37 jnthn About the only possible problem I can see is if somehow it isn't in the block chain when you try to lookup the exception type.
21:40 psch jnthn: how would that happen?
21:40 psch and does it seem like it could be happening?
21:42 jnthn psch: lemme take a look
21:42 psch well, it seems to be happening to me, scratch the latter question
21:42 timotimo r: class Foo { multi method bar(Str $a) { say "str" }; multi method bar(Int $a) { say "int" } }; Foo.^can("bar")[0].cando(\("Foo")).perl.say
21:42 camelia rakudo-parrot f614e5, rakudo-jvm f614e5: OUTPUT«()␤»
21:42 jnthn psch: Are you considering the code starting "if +%!deadly {"?
21:43 timotimo why doesn't the bar method that takes Str show up here? :(
21:43 timotimo r: class Foo { multi method bar(Str $a) { say "str" }; multi method bar(Int $a) { say "int" } }; Foo.^can("bar")[0].cando(\(Foo: Str)).perl.say
21:43 jnthn timotimo: You forgot the first (invocant) parameter in the capture passed to cando
21:43 camelia rakudo-parrot f614e5, rakudo-jvm f614e5: OUTPUT«()␤»
21:43 jnthn timotimo: Just a ,
21:43 timotimo r: class Foo { multi method bar(Str $a) { say "str" }; multi method bar(Int $a) { say "int" } }; Foo.^can("bar")[0].cando(\(Foo.new(), "Str")).perl.say
21:43 camelia rakudo-parrot f614e5, rakudo-jvm f614e5: OUTPUT«(method bar(Foo : Str $a, Mu *%_) { ... },)␤»
21:43 timotimo ah!
21:43 timotimo thank you
21:44 timotimo the moment you said it i got the idea, too :)
21:44 jnthn psch: 'cus at that point it ain't there
21:44 timotimo also, clsn_ found a nasty interaction in junctions where they really shouldn't flatten something:
21:44 jnthn Note a few lines up we have:
21:44 jnthn nqp::push(@!block_stack, $unit);
21:44 jnthn $!Mu  := self.find_lexical('Mu');
21:44 jnthn $!Any := self.find_lexical('Any');
21:44 jnthn nqp::pop(@!block_stack);
21:44 timotimo r: all("5", "6").match(/\d/).perl.say
21:44 camelia rakudo-parrot f614e5: OUTPUT«all(Match.new(orig => "5", from => 0, to => 1, ast => Any, list => ().list, hash => EnumMap.new()), Match.new(orig => "6", from => 0, to => 1, ast => Any, list => ().list, hash => EnumMap.new()))␤»
21:44 camelia ..rakudo-jvm f614e5: OUTPUT«all(Match.new(to => 1, hash => EnumMap.new(), ast => Any, list => ().list, orig => "5", from => 0), Match.new(to => 1, hash => EnumMap.new(), ast => Any, list => ().list, orig => "6", from => 0))␤»
21:44 jnthn Which is making sure that find_lexical will work out.
21:44 timotimo er, wait, that wasn't the exmaple he gave me
21:45 timotimo r: all("5", "6").match(/5/).perl.say
21:45 camelia rakudo-parrot f614e5: OUTPUT«all(Match.new(orig => "5", from => 0, to => 1, ast => Any, list => ().list, hash => EnumMap.new()))␤»
21:45 camelia ..rakudo-jvm f614e5: OUTPUT«all(Match.new(to => 1, hash => EnumMap.new(), ast => Any, list => ().list, orig => "5", from => 0))␤»
21:45 timotimo you see how it only has one entry inside the all?
21:45 timotimo it's because the match of the second one returns nil and that really shouldn't flatten
21:48 ssutch joined #perl6
21:48 araujo joined #perl6
21:48 araujo joined #perl6
21:48 timotimo clsn_: ^ in any case, with the .cando on a multi sub you can refer to one candidate of the multi
21:49 psch jnthn: well, i was mainly bumbling around in report_inevitable_dispatch_failure, which gets called from chain_handles_Any in visit_children
21:49 psch err, visit_op, not visit_children
21:49 psch and "it's not there" is consistent with my findings
21:49 jnthn psch: Ah, then the exception should certainly be on the stack
21:49 timotimo wait, chain_handles_Any calls that?
21:49 jnthn psch: I mean, somewhere in the block chain
21:50 jnthn psch: How does your code to find it look?
21:51 psch i've tried $*W.find_symbol and nqp::create with the name of the new exception i put into Exception.pm as argument
21:52 psch i wasn't sure how find_symbol deals with namespaces so i tried both X::NewExceptio and plain NewException and neither worked
21:53 timotimo you probably want ["X", "NewException"]
21:53 timotimo but i think it splits on :: for you
21:53 jnthn I think it wants $*W...yes, what timotimo said :)
21:53 jnthn I don't think it does try to split automatically for you.
21:53 Piers_ joined #perl6
21:53 jnthn find_symbol is the unmagical thing :)
21:53 psch right, it doesn't, but i tried handing it an array as well
21:54 jnthn oh, but...
21:54 jnthn $*W isn't what has a block stack
21:54 jnthn The optimizer does
21:55 psch oh
21:55 jnthn So we need a find_symbol inside the optimizer that looks at @!block_stack
21:55 timotimo ah, right
21:55 psch so it's looking in nothing for the type i'm asking it to find
21:55 psch that's helpful
21:55 jnthn Basically, a namespace-aware find_lexical
21:56 psch the namespaces boil down to elems of @!block_stack=
21:56 psch s/=/?
21:56 jnthn No
21:56 jnthn For a good enough cut, you take the first thing and find_lexical it
21:57 jnthn Then you can take that and do .WHO to get the stash, and then index into it like a hash with the next thing in the array you were passed.
21:57 jnthn find_symbol has code that you can either be inspired by or outright nab.
21:57 jnthn (the one in Perl6::World)
21:58 psch okay, i'll try that, thanks
22:24 kivutar joined #perl6
22:25 BenGoldberg joined #perl6
22:27 thou joined #perl6
22:45 denisboyun joined #perl6
22:56 [Coke] parrot could use some release managers, if anyone's got some spare time.
22:57 [Coke] see #parrot on irc.perl.org
22:58 [Coke] dallllllek
22:58 [Coke] rakudo.moar,2014-01-09,94.21%,9a340b1,26806,1332,629,1431,29729,28495,
22:59 pmurias joined #perl6
22:59 FROGGS damn, so close :/
22:59 pmurias what's the state of the moar-p5 interop grant?
23:02 [Coke] r: say 28454*.95-26806
23:02 camelia rakudo-parrot f614e5, rakudo-jvm f614e5: OUTPUT«225.3␤»
23:02 kaare_ joined #perl6
23:09 jnthn Just testing a patch here that gets the missing assignment type checking in place
23:09 jnthn Including handling subset types
23:10 jnthn S02-types/subset.t just passed here
23:12 diakopter jnthn++
23:12 diakopter pmurias: the state of the grant is accepted
23:13 pmurias has the work started?
23:13 pmurias diakopter: congratulations on getting the grant accepted
23:13 diakopter hundreds of hours went into it before the grant was accepted, but since then it's been waiting on rakudo-moar to not have GC problems and to mostly run
23:14 diakopter jnthn++ & nwc10++ & several others are the heroes there
23:20 pmurias diakopter: where can I find the interop code?
23:20 diakopter what code
23:20 diakopter oh, you assumed "hundreds of hours" meant code
23:20 diakopter wrongo
23:21 diakopter well, there's some code, but it's an early start before the design was done
23:23 diakopter pmurias: you wanted to borrow some design?
23:24 diakopter *look into borrowing
23:26 pmurias not yet
23:26 pmurias perl 5 interop is far away for nqp-js
23:27 diakopter I bet it's not too far away once moar & jvm get it
23:27 diakopter .. because the interop model should work for any 6model implementation
23:31 araujo joined #perl6
23:52 [Coke] looking to help? go through https://github.com/coke/rakudo-star-daily/blob/master/log/test-modules.log. Find "Deprecated". fork the original repo the module is from, fix all the deprecations, give the original author a pull request. Danke.
23:52 [Coke] easy peasy.
23:57 * [Coke] tries reduce the amount of memory the eval server is claiming; that should fix it.
23:58 timotimo r: say all("5", "4").match(/4/).perl
23:58 camelia rakudo-parrot f614e5: OUTPUT«all(Match.new(orig => "4", from => 0, to => 1, ast => Any, list => ().list, hash => EnumMap.new()))␤»
23:58 camelia ..rakudo-jvm f614e5: OUTPUT«all(Match.new(to => 1, hash => EnumMap.new(), ast => Any, list => ().list, orig => "4", from => 0))␤»
23:58 timotimo r: say so all("5", "4").match(/4/)
23:58 camelia rakudo-parrot f614e5, rakudo-jvm f614e5: OUTPUT«True␤»
23:58 timotimo so ... the match is supposed to return Nil and Nil is supposed to not flatten, right?
23:59 * timotimo has a look at the code

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

Perl 6 | Reference Documentation | Rakudo