Perl 6 - the future is here, just unevenly distributed

IRC log for #perl6, 2014-09-19

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:04 gtodd yoleaux: tell bartolin successfully built parrot aond perl6-p on two FreeBSD 9.2
00:04 gtodd oops
00:06 avuserow .tell gtodd try it like this?
00:06 yoleaux avuserow: I'll pass your message to gtodd.
00:07 gtodd ggoebel11111111: would be convenient for when an entire script is perl5
00:07 yoleaux 00:06Z <avuserow> gtodd: try it like this?
00:08 gtodd avuserow: that's what I did right after that message ;-)
00:15 cognominal joined #perl6
00:21 AndChat-188244 joined #perl6
00:33 BenGoldberg joined #perl6
00:35 colomon joined #perl6
00:47 Akagi201 joined #perl6
01:02 BenGoldberg .seen lambdabot
01:02 yoleaux I haven't seen lambdabot around.
01:02 BenGoldberg .seen mubot
01:02 yoleaux I haven't seen mubot around.
01:10 slmult0_z_q joined #perl6
01:12 FROGGS_ joined #perl6
01:14 yeahnoob joined #perl6
01:17 BenGoldberg Just randomly browsing through some of the perl6 modules, and I came across Compress::Zlib, and noticed an odd logic error.
01:19 BenGoldberg Specifically, in class Compress::Zlib::Wrap, method get(), $i is assigned the result of Str.index, then used as an argument to Buf.subbuf, which is only gauranteed to work if the encoding is single-bytes.
01:25 raiph joined #perl6
01:37 dayangkun joined #perl6
01:47 Akagi201 joined #perl6
02:01 gtodd BenGoldberg: why only then?
02:02 rindolf joined #perl6
02:02 Akagi201 joined #perl6
02:03 BenGoldberg Suppose that the string's encoding is 2 bytes per letter.  Then you'd need to multiply $i by two before using it as an index into the Buf for it to be right.
02:03 BenGoldberg And if the encoding is unknown, or variable-width....
02:04 gtodd oh because a Str  index is assigned and then used for the Buf
02:05 BenGoldberg Right.
02:05 gtodd so the index into the Buf would work but ... not always
02:06 gtodd I wonder if an easy failing test could be written and how easy that would be to fix by just multiplying by bytes per character  (i.e. a hack) :-)
02:07 gtodd there's probably a more correct way
02:14 BenGoldberg Add a an input-Str buffer to the class, and when reading, append the Str which results from decoding the Buf to the buffer, and discard the Buf; then play with the Str.
02:17 aborazmeh joined #perl6
02:19 gtodd I was going to say why does it decode into a Str and not just directly deal with the Buf :)
02:19 gtodd but that is just me wondering about  Str and Buf
02:20 gtodd https://github.com/retupmo​ca/P6-Compress-Zlib/issues  yours'll be the first PR :)
02:23 anaeem1 joined #perl6
02:32 jerrycheung joined #perl6
02:39 chenryn joined #perl6
02:44 noganex_ joined #perl6
02:53 xenoterracide joined #perl6
03:06 immortal joined #perl6
03:29 jerrycheung joined #perl6
04:02 MikeFair joined #perl6
04:04 kaare_ joined #perl6
04:49 chenryn joined #perl6
05:01 anaeem1 joined #perl6
05:03 mberends joined #perl6
05:13 colomon joined #perl6
05:18 kaare_ joined #perl6
05:39 Ven joined #perl6
05:40 [Sno] joined #perl6
05:43 u-ou joined #perl6
05:49 ponbiki_ joined #perl6
05:51 darutoko joined #perl6
06:11 mr-foobar joined #perl6
06:30 kaare_ joined #perl6
06:32 xragnar joined #perl6
06:34 brrt joined #perl6
06:34 telex joined #perl6
06:43 mr-foobar joined #perl6
07:04 zakharyas joined #perl6
07:08 virtualsue joined #perl6
07:15 sergot hi o/
07:16 nwc10 \o
07:18 sergot hi nwc10
07:25 anaeem1_ joined #perl6
07:28 dalek specs: 5265a40 | (L. Grondin)++ | S99-glossary.pod:
07:28 dalek specs: lc for statement to unbreak links
07:28 dalek specs: review: https://github.com/perl6/specs/commit/5265a4076f
07:29 FROGGS_ joined #perl6
07:32 * grondilu tries to count the most occuring unresolved link in S99 and fails:
07:32 grondilu podchecker -nowarnings S99-glossary.pod 2>&1 |perl6 -e 'say lines.map(~*.match(/'"\'.*?\'/"'​)).Bag.pairs.max(:by(*.value))'
07:32 grondilu ^ unexpectidly returns "'variadic'" => 1
07:33 grondilu m: say <foo foo bar>.Bag.pairs.max(:by(*.value));
07:33 camelia rakudo-moar 36bada: OUTPUT«"foo" => 2␤»
07:33 grondilu ^ that's more as expected
07:36 khisanth_ joined #perl6
07:45 virtualsue joined #perl6
07:47 * grondilu tries to get a smaller example
07:47 grondilu m: say ("grep" => 1, "operands" => 1, "cursor" => 1, "arity" => 2, "category" => 2).max(:by(*.value));
07:47 camelia rakudo-moar 36bada: OUTPUT«"operands" => 1␤»
07:47 grondilu n: say ("grep" => 1, "operands" => 1, "cursor" => 1, "arity" => 2, "category" => 2).max(:by(*.value));
07:47 camelia niecza : OUTPUT«Cannot open assembly './run/Niecza.exe': No such file or directory.␤»
07:48 grondilu p6: say ("grep" => 1, "operands" => 1, "cursor" => 1, "arity" => 2, "category" => 2).max(:by(*.value));
07:48 camelia rakudo-jvm 36bada: OUTPUT«Can't call method "syswrite" on an undefined value at /home/p6eval/jvm-rakudo/eval-client.pl line 32.␤»
07:48 camelia ..niecza: OUTPUT«Cannot open assembly './run/Niecza.exe': No such file or directory.␤»
07:48 camelia ..rakudo-{parrot,moar} 36bada: OUTPUT«"operands" => 1␤»
07:48 grondilu m: 'say ("cursor" => 1, "arity" => 2).max(:by(*.value));
07:48 camelia rakudo-moar 36bada: OUTPUT«[31m===[0mSORRY![31m===[0m Error while compiling /tmp/WzA1IhJmNAâ�¤Unable to parse expression in single quotes; couldn't find final "'" â�¤at /tmp/WzA1IhJmNA:1â�¤------> [32m" => 1, "arity" => 2).max(:by(*.value));[33mâ��[31m<EOL>[0mâ�¤    expectin…»
07:48 grondilu m: say ("cursor" => 1, "arity" => 2).max(:by(*.value));
07:48 camelia rakudo-moar 36bada: OUTPUT«"cursor" => 1␤»
07:49 grondilu am I missing something here?
07:50 sergot m: say ("cursor" => 1, "arity" => 2).max(:by({ .value }));
07:50 camelia rakudo-moar 36bada: OUTPUT«"cursor" => 1␤»
07:50 grondilu m: say max :by(*.value), "cursor" => 1, "arity" => 2
07:50 camelia rakudo-moar 36bada: OUTPUT«"arity" => 2␤»
07:51 itz anyone near London, UK might be interested in
07:51 itz http://london.pm.org/pipermail/london​.pm/Week-of-Mon-20140915/025393.html
07:53 dalek specs: 1a1dc4d | (L. Grondin)++ | S99-glossary.pod:
07:53 dalek specs: add an entry for object
07:53 dalek specs: review: https://github.com/perl6/specs/commit/1a1dc4d2ee
07:55 dalek specs: d82d22a | (L. Grondin)++ | S99-glossary.pod:
07:55 dalek specs: lcfirst for Machine code to unbreak links
07:55 dalek specs: review: https://github.com/perl6/specs/commit/d82d22a86d
07:56 FROGGS_ itz++ # though, I'm travelling around germany tomorrow, so I can't even support you guys :(
07:57 dalek specs: fa5d124 | (L. Grondin)++ | S99-glossary.pod:
07:57 dalek specs: add entry for argument
07:57 dalek specs: review: https://github.com/perl6/specs/commit/fa5d12420a
07:58 dalek specs: 59858ca | (L. Grondin)++ | S99-glossary.pod:
07:58 dalek specs: lcfirst for oopcode to unbreak links
07:58 dalek specs: review: https://github.com/perl6/specs/commit/59858cae1a
08:00 dalek specs: 3f14910 | (L. Grondin)++ | S99-glossary.pod:
08:00 dalek specs: unbreak links to symbol
08:00 dalek specs: review: https://github.com/perl6/specs/commit/3f1491096f
08:01 dalek specs: c0f9b26 | (L. Grondin)++ | S99-glossary.pod:
08:01 dalek specs: lcfirst for arity
08:01 dalek specs: review: https://github.com/perl6/specs/commit/c0f9b2615a
08:03 dalek specs: 55e2fd6 | (L. Grondin)++ | S99-glossary.pod:
08:03 dalek specs: lcfirst for category
08:03 dalek specs: review: https://github.com/perl6/specs/commit/55e2fd68e5
08:14 sqirrel joined #perl6
08:33 slmult0_z joined #perl6
08:37 zakharyas joined #perl6
08:42 fhelmberger joined #perl6
08:47 dalek rakudo/nom: 13b9595 | (Elizabeth Mattijsen)++ | src/core/Cool.pm:
08:47 dalek rakudo/nom: .words also Cool, like .lines, pass any parameters
08:47 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/13b9595409
08:47 * lizmat wonders what travis will think of this
08:47 lizmat and good *, #perl6!
08:48 Woodi joined #perl6
08:54 travis-ci joined #perl6
08:54 travis-ci [travis-ci] Rakudo build passed. Elizabeth Mattijsen '.words also Cool, like .lines, pass any parameters'
08:54 travis-ci [travis-ci] http://travis-ci.org/rakudo/rakudo/builds/35711737 https://github.com/rakudo/rakudo/c​ompare/36badaa42aeb...13b9595409f4
08:54 travis-ci left #perl6
09:02 MagicalShrub joined #perl6
09:02 lizmat I guess there's disk space again  :-)
09:03 FROGGS_ lizmat: travis had issues?
09:04 lizmat morning FROGGS_!
09:04 lizmat yes: http://irclog.perlgeek.de/​perl6/2014-09-18#i_9380178
09:05 FROGGS_ hi lizmat
09:06 FROGGS_ lizmat: travis is an online service connected to github... it's not on one of our servers
09:06 lizmat ah, ok  :-)
09:06 lizmat then github had issues  :-)
09:06 lizmat or whatever, it solved itself
09:18 bjz joined #perl6
09:21 sergot I have a question, can I somehow break a Promise.in(10) before it goes to 10? :)
09:22 lizmat no
09:22 lizmat but you can create an Promise.anyof( breakablePromise, InPromise )
09:22 lizmat that would break as soon as you break the breakablePromise
09:23 sergot this may help, thank you lizmat++ ! :)
09:24 sergot yeah, it works, thanks again!
09:40 virtualsue joined #perl6
09:42 dalek rakudo/nom: 44b3e14 | (Elizabeth Mattijsen)++ | src/core/S (2 files):
09:42 dalek rakudo/nom: Code esthetics
09:42 dalek rakudo/nom:
09:42 dalek rakudo/nom: Make all .lines methods use same sane variable scheme and use fewer
09:42 dalek rakudo/nom: calculations.
09:42 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/44b3e14a73
09:51 sergot m: try EVAL "nqp::is_bindable(1)";
09:51 camelia rakudo-moar 13b959: ( no output )
09:51 sergot m: nqp::is_bindable(1);
09:51 camelia rakudo-moar 13b959: OUTPUT«===SORRY!===␤No registered operation handler for 'is_bindable'␤»
09:56 lizmat sergot: I don't see that nqp:: op in the doc
09:56 sergot would "try EVAL" ignore MoarVM fail?
09:56 lizmat https://github.com/perl6/nqp/​blob/master/docs/ops.markdown
09:56 lizmat quite possibly
09:57 sergot lizmat: I'm "try EVAL"ing some rosettacode codes and from time to time I get this:
09:57 sergot Unhandled exception: When invoking is_bindable, Provided outer frame 0x1842f10 (MVMStaticFrame bind_one_param) does not match expected static frame type 0x1842cb0 (MVMStaticFrame )
09:58 lizmat if you can reproduce this, you should probably rakudobug or make a MoarVM issue
09:58 sergot and it stops after this, so looks like try EVAL doesn't ignore MoarVM exceptions
09:59 lizmat MoarVM exceptions are a bit like segfaults in that respect
09:59 lizmat the HLL doesn't know about them
10:01 sergot lizmat: I'm writing a script to test all rosettacode codes, here it is : https://github.com/sergot/p6-rose​ttacode-test/blob/master/test.p6
10:02 lizmat cool!
10:02 sergot it fails sometimes (dont know why yet)
10:02 lizmat would be a nice travis like service  :-)
10:03 sergot if you have so time, maybe can you run it and see what happens.
10:03 sergot some
10:08 lizmat sergot: will do so later today (maybe much later)
10:09 sergot lizmat: would be great, nothing important tho :)
10:20 chenryn joined #perl6
10:26 virtualsue joined #perl6
10:33 anaeem1 joined #perl6
10:35 lizmat FROGGS_: can I ask you a QAST question?
10:35 sergot m: for 1..10 { my $tout = Promise.in(2); my $p = Promise.new; start { loop {} }; await Promise.anyof($p, $tout); }
10:35 camelia rakudo-moar 44b3e1: OUTPUT«(signal )»
10:35 timotimo maybe i can answer qast questions, too
10:35 sergot m: for 1..10 { my $tout = Promise.in(2); my $p = Promise.new; start { loop {} }; await Promise.anyof($p, $tout); } say "alive";
10:35 camelia rakudo-moar 44b3e1: OUTPUT«[31m===[0mSORRY![31m===[0m Error while compiling /tmp/q4QjBk38xtâ�¤Missing semicolon.â�¤at /tmp/q4QjBk38xt:1â�¤------> [32m{} }; await Promise.anyof($p, $tout); } [33mâ��[31msay "alive";[0mâ�¤    expecting any of:â�¤        postfixâ�¤        statem…»
10:35 sergot m: for 1..10 { my $tout = Promise.in(2); my $p = Promise.new; start { loop {} }; await Promise.anyof($p, $tout); }; say "alive";
10:36 camelia rakudo-moar 44b3e1: OUTPUT«(signal )»
10:36 lizmat timotimo: I'm working on making .words lazy and according to spec (and faster)
10:36 timotimo oh, neat :)
10:36 lizmat the spec doesn't say that if there is only one word found, it should just return that word
10:37 timotimo oh, something i remember just now: if you have some time and mindspace, you could try to fix << >> and < > with escaped spaces and stuff
10:37 lizmat however, if I always return a list, there is one problem with interpolating variables in <<$x>>
10:37 timotimo m: say <<foo\ bar>>.perl
10:37 camelia rakudo-moar 44b3e1: OUTPUT«("foo", "bar")␤»
10:37 sergot m: for 1..10 { my $tout = Promise.in(2); my $p = Promise.new; start { loop {}; }; await Promise.anyof($p, $tout); }; say "alive";
10:37 camelia rakudo-moar 44b3e1: OUTPUT«(signal )»
10:37 sergot why does it not print alive??
10:37 sergot :)
10:38 timotimo :o
10:38 lizmat timotimo: I think I traced it down to Actions postprocess_words
10:38 lizmat $past := QAST::Op.new( :op('callmethod'), :name('words'), :node($/), $past );
10:38 timotimo oh, AFK
10:39 lizmat so I think I need to change the $past to only return the 0-element of the returned value
10:40 sergot m: for 1..2 { my $tout = Promise.in(2); my $p = Promise.new; start { loop {}; }; await Promise.anyof($p, $tout); }; say "alive";
10:40 camelia rakudo-moar 44b3e1: OUTPUT«alive␤»
10:46 dalek rakudo/nom: ec3b836 | (Elizabeth Mattijsen)++ | src/core/Str.pm:
10:46 dalek rakudo/nom: Make Str.words lazy and according to spec
10:46 dalek rakudo/nom:
10:46 dalek rakudo/nom: The spec does *not* mention that the first word should be returned instead of
10:46 dalek rakudo/nom: the list, if there is only one word found.  This causes a problem with << >>
10:46 dalek rakudo/nom: interpolation at the moment, which is under investigation.
10:46 dalek rakudo/nom:
10:46 dalek rakudo/nom: Also add add :eager / :count parameters.  The :eager version is about 10%
10:46 dalek rakudo/nom: faster than before.  The :count version is about 30% faster than the
10:46 dalek rakudo/nom: equivalent (:eager).elems.
10:46 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/ec3b8360c4
10:46 FROGGS_ lizmat: don't ask ti ask, just qast!
10:46 FROGGS_ to*
10:46 FROGGS_ damn
10:46 lizmat :-)
10:47 lizmat any suggestion as how to change '$past := QAST::Op.new( :op('callmethod'), :name('words'), :node($/), $past );'
10:47 FROGGS_ you want to return .words[0]?
10:47 lizmat yup
10:47 sergot m: for 1..2 { my $tout = Promise.in(2); my $p = Promise.new; start { lines }; await Promise.anyof($p, $tout); }; say "alive";
10:47 camelia rakudo-moar 44b3e1: OUTPUT«Unhandled exception in code scheduled on thread 140451512297216␤Cannot assign to an immutable value␤  in method break at src/gen/m-CORE.setting:19361␤  in method break at src/gen/m-CORE.setting:19316␤  in block  at src/gen/m-CORE.setting:19432␤  …»
10:48 FROGGS_ +$past := QAST::Op.new( :op('call'), :name('&postcircumfix:<[ ]>'), :node($/), $past, QAST::IVal.new( :value(0) ) )
10:48 lizmat hmm.... thinking about this, maybe we need a 'words(:first)
10:48 FROGGS_ or so
10:48 sergot m: for 1..2 { my $tout = Promise.in(2); my $p = Promise.new; start { $p.keep(lines()) }; await Promise.anyof($p, $tout); }; say "alive";
10:48 camelia rakudo-moar 44b3e1: OUTPUT«Unhandled exception in code scheduled on thread 140412203292416␤alive␤»
10:48 lizmat FROGGS_: trying that now
10:49 sergot m: for 1..2 { my $tout = Promise.in(2); my $p = Promise.new; start { $p.keep(try EVAL "lines") }; await Promise.anyof($p, $tout); }; say "alive";
10:49 camelia rakudo-moar 44b3e1: OUTPUT«alive␤»
10:51 lizmat hmmm...  it compiles, but causes more errors: wil investigate further
10:51 FROGGS_ hmmm :/
10:52 lizmat I guess it assumes the previous behaviour of automatic dereferencing
10:52 lizmat only when there is 1 element
10:54 lizmat FROGGS_: what if I add a :first named parameter to the call to 'words'
10:55 lizmat how would the past then look ?
10:56 FROGGS_ $past := QAST::Op.new( :op('callmethod'), :name('words'), :node($/), $past, QAST::IVal.new( :value(1), :named('first') ) )
10:56 lizmat FROGGS_++  :-)
10:56 FROGGS_ :o)
11:07 dalek rakudo/nom: fbf229c | (Elizabeth Mattijsen)++ | src/ (2 files):
11:07 dalek rakudo/nom: Fix problem with << >> interpolation, FROGGS++
11:07 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/fbf229c8a9
11:21 chenryn joined #perl6
11:41 _rubio_terra_ joined #perl6
11:43 pat_js joined #perl6
11:53 bartolin joined #perl6
11:58 virtualsue joined #perl6
12:02 bartolin .tell rurban I was able to build parrot and perl6-p an OpenBSD 5.5. On NetBSD 6.1.4 I had two problems with dyncall. I just created a pull request which should fix these issues.
12:02 yoleaux 00:05Z <gtodd> bartolin: /me successfully built parrot aond perl6-p on two FreeBSD 9.2
12:02 yoleaux bartolin: I'll pass your message to rurban.
12:02 dalek rakudo/nom: ec65b9d | (Elizabeth Mattijsen)++ | src/core/Str.pm:
12:02 dalek rakudo/nom: Prevent minor issues Str.lines
12:02 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/ec65b9dbbb
12:02 leont joined #perl6
12:02 lizmat cycling&
12:03 bartolin gtodd: \o/
12:04 bartolin .tell rurban (The pull request is for nqp: https://github.com/perl6/nqp/pull/183)
12:04 yoleaux bartolin: I'll pass your message to rurban.
12:14 nwc10 tadzik: your t-shirt may be at risk if you don't register: http://act.useperl.at/apw2014/stats
12:14 dalek nqp: dabdfa4 | usev6++ | Configure.pl:
12:14 dalek nqp: Fix build problem on NetBSD, BSDmakefile no longer used
12:14 dalek nqp: Dyncall v0.8 no longer uses a specific makefile for BSD (compare ChangeLog).
12:14 dalek nqp: review: https://github.com/perl6/nqp/commit/dabdfa4108
12:14 dalek nqp: 008f60c | usev6++ | 3rdparty/dyncall/configure:
12:14 dalek nqp: compile dyncall with -fPIC on NetBSD
12:14 dalek nqp: This fixes a build problem on NetBSD.
12:14 dalek nqp: It's the same fix as in commit 5ed99d26b3c3ac2d65bc622afdbd987a547046f5 for FreeBSD.
12:14 dalek nqp: OpenBSD does not need CFLAGS=-fPIC (was able to build parrot and perl6-p on OpenBSD 5.5).
12:14 dalek nqp: review: https://github.com/perl6/nqp/commit/008f60c31b
12:14 dalek nqp: 4c831a3 | (Tobias Leich)++ | / (2 files):
12:14 dalek nqp: Merge pull request #183 from usev6/master
12:14 dalek nqp:
12:14 dalek nqp: Fix parrot build problem on NetBSD (building of dyncall failed)
12:14 dalek nqp: review: https://github.com/perl6/nqp/commit/4c831a3057
12:15 tadzik nwc10: right, right
12:15 tadzik nwc10: thing is, I'm still not sure when my bachelor's defense would be, and so if I'll be able to come at all :/
12:15 nwc10 ah OK
12:17 Khisanth joined #perl6
12:18 FROGGS_ nwc10: I put in my shirt size right now and did the payment
12:18 khisanth_ joined #perl6
12:22 chenryn joined #perl6
12:25 rindolf joined #perl6
12:29 raiph joined #perl6
12:46 jnthn evening, #pelr6
12:46 jnthn oh wow, I typo it again...
12:46 mr-foobar joined #perl6
12:46 guru joined #perl6
12:47 masak maybe we should just rename the language to Pelr 6.
12:47 masak it would solve so many problems, like the language squatting on the Perl name.
12:47 masak :P
12:47 masak also, jnthn's typos would become correct.
12:49 mr-foobar joined #perl6
12:50 daxim__ I typo oerk all the time
12:50 mr-foobar joined #perl6
12:52 jnthn sergot: If you do loop { } inside of a start, it won't stop 'cus it was used in a Promise.anyof with a timeout. There's no magical cancellation.
12:53 arnsholt At some point, I'd like to experiment with the Rakudo grammar and implement a loop construct along the lines of Common Lisp's loop() macro
12:53 arnsholt 'Cuz loop() is awesome (and ridiculous)
12:53 jnthn sergot: 10 of them isn't enough to saturate the thread pool, though. Here, "for 1..10 { my $tout = Promise.in(2); my $p = Promise.new; start { loop {} }; await Promise.anyof($p, $tout); }; say 'alive'" swallows my CPU for 20s before printing alive.
12:54 mr-foobar joined #perl6
12:56 mr-foobar joined #perl6
12:57 masak arnsholt: I've never seen the charm of Lisp's loop construct.
12:57 masak arnsholt: maybe you know something about it that I don't, though.
12:58 masak arnsholt: if I get the history of it right, it was put in as a thing that would make imperative folks feel safer, and FP folks generally used other constructs, like recursion.
13:00 robinsmidsrod joined #perl6
13:00 arnsholt I quite like it
13:00 arnsholt But yeah, it breaks completely with the rest of the language
13:01 arnsholt It's just such a versatile and powerful looping construct
13:01 arnsholt Especially the with clause is a nice addition
13:02 arnsholt Essentially lets you handle the "my $used-in-loop; for @stuff { ... }" idiom with $used-in-loop hacing the same scope extent as the loop
13:02 dalek perl6-roast-data: 8f37227 | coke++ | bin/doit:
13:02 dalek perl6-roast-data: temporarily disable niecza & jvm
13:02 dalek perl6-roast-data: review: https://github.com/coke/perl6​-roast-data/commit/8f372271cb
13:03 arnsholt s/hacing/having/
13:06 [Coke] ^^ hopefully that will let us at least get some parrot & moar numbers flowing again, until I have time to fix the jvm/host08 issue.
13:06 [Coke] (niecza's not doing well on mono3)
13:15 tinyblak joined #perl6
13:23 Timbus arnsholt ?  for @stuff { state $used-in-loop; ... }
13:24 arnsholt Timbus: Oh, that works. Didn't realize that
13:24 jnthn timotimo: I highly suspect 3ce25eccf1 is to blame for the push performance drops in perl6-bench
13:25 arnsholt Makes sense now that I do know, though
13:25 Timbus :>
13:25 FROGGS_ jnthn: but we proved that to be slower... here on irc
13:26 FROGGS_ jnthn: TimToady has several witnesses :o)
13:26 jnthn FROGGS_: Uhm. On what benchmark, exactly?
13:27 FROGGS_ jnthn: as user came and reported a regression in his code (about five times slower)
13:27 jnthn Well, lemme do some measurements here.
13:27 FROGGS_ then it got golfed down... in the end it was just a loop and a push to an array with one element
13:27 FROGGS_ that was our "microbenchmark"
13:29 jnthn OK, well, something is wrong then
13:29 jnthn Because
13:29 FROGGS_ see http://irclog.perlgeek.de/​perl6/2014-08-28#i_9260375
13:29 jnthn I just reverted the commit TimToady made, and
13:29 jnthn perl6-m -e "my @a; my $i = 0; while (++$i <= 1000000) { push @a, 1 }"
13:29 jnthn Before revert: 27.309s
13:30 jnthn After revert: 7.509s
13:30 jnthn So it looks to me - and to timotimo's benchmark runs - that the "pessimization" wasn't so pessimal after all in some cases. :)
13:31 FROGGS_ m: my $now = now; my @a; for ^20_000 {@a.push: $('1,2,3,4,5,6,7'.split(','))}; say now - $now;
13:31 camelia rakudo-moar ec65b9: OUTPUT«6.1487728␤»
13:31 FROGGS_ jnthn: can you run that please?
13:31 jnthn Ah, the benchmark is quite different.
13:31 jnthn *that*
13:33 jnthn OK, removing the "pessiaml" single itme push did indeed speed up that one.
13:34 FROGGS_ now we need a third option :o)
13:35 jnthn yeah...
13:37 jnthn ah, I think I see the difference...
13:38 jnthn Somehow, the single arg candidate got this:
13:38 jnthn value.gimme(*) if nqp::istype(value, List); # fixes #121994
13:38 synopsebot Link: https://rt.perl.org/rt3//Publ​ic/Bug/Display.html?id=121994
13:38 jnthn That has gotta be a hack...but it also means that the split iteration is run in that case
13:38 jnthn Whereas in the other caes it's not
13:38 jnthn And I bet that's where the extra cost comes from.
13:42 masak retupmoca: looking at https://github.com/retupmoca/markdown/commi​t/07040ff525a4dc75f3c176eea9299f7331a72342 now
13:43 masak I missed the part where that stopped working in Rakudo.
13:43 FROGGS_ ahhh
13:43 masak what's the background, ooc?
13:45 retupmoca background?
13:47 FROGGS_ m: my $text = "abc"; $text ~~ s:g[a] = "z"; say $text
13:47 camelia rakudo-moar ec65b9: OUTPUT«zbc␤»
13:47 retupmoca masak: that stopped working because of the new LoL stuff in rakudo, iirc. It was taking (...;...;...) as a list construct
13:47 FROGGS_ ahh
13:47 FROGGS_ that part
13:47 retupmoca m: my $text = "abc"; $text ~~ s:g[a] = ( my $tmp = 'z'; $tmp; ); say $text
13:47 camelia rakudo-moar ec65b9: OUTPUT«z zbc␤»
13:48 jnthn I now have a patch that seems to not re-introduce #121994, gets the perl6-bench one in 6.793s (better than before the revert and WAY better than now) and actually gets the case TimToady pulled out the sinlge candidate case for faster too (2.727s, dwon from 3.320s).
13:48 jnthn So providd this spectests OK, we get wins on both benchmarks over their previous bests.
13:53 leedo joined #perl6
13:56 denis_boyun joined #perl6
13:57 gtodd retupmoca: did you see BenGoldberg's comments about Compress::Zlib in the scrollback?
13:58 jnthn Seems it's good. :)
13:59 gtodd retupmoca: does it matter that the get() method  doing encode decode with Str and Buf that way?
14:22 ilbot3 joined #perl6
14:22 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:23 Util joined #perl6
14:25 [Coke] joined #perl6
14:25 masak joined #perl6
14:26 Guest40075 retupmoca: that makes sense.
14:28 masak_grr anyway, pull requests merged.
14:28 masak_grr retupmoca++ # especially for the Data::Pretty one
14:28 retupmoca masak_grr++
14:33 timotimo masak_grr: what are you grr about today? :)
14:34 jnthn Probably having paired with me all day :P
14:34 timotimo hah, ouch ;)
14:35 timotimo .tell brrt when we have proper jit code production for invoking NativeCall stuff .. that could be super amazingly cool :)
14:35 yoleaux timotimo: I'll pass your message to brrt.
14:36 timotimo .tell brrt i'm not sure if that'd end up super easy because we already have the code that emits regular calls to MVM_* functions, or if it's going to be harder because we have to be converting data types back and forth?
14:36 yoleaux timotimo: I'll pass your message to brrt.
14:38 jnthn really good JIT of native calling is probably hard but worth it.
14:38 jnthn It's enough work for an whole GSoC project... )
14:39 masak_grr pairing up with jnthn all day is fine, and not grr-inducing. the quality+quantity of it all is pretty astounding when you look back.
14:40 jnthn :)
14:41 masak_grr no, the _grr is because when IRC storms enough (probably because of snotty script kiddie jerks or something), I get kicked off my own account for ~30 minutes because I miss connecting with NickServ in time.
14:42 timotimo OK :)
14:42 masak_grr ...but that's still better than someone else grabbing my account and squatting on it for an indefinite time, which happened once.
14:42 retupmoca gtodd: Compress::Zlib HEAD now has tests and a fix for that issue
14:43 retupmoca gtodd++ # for pointing it out
14:44 d4l3k_ joined #perl6
14:44 grondilu_ joined #perl6
14:45 mls_ joined #perl6
14:47 ajr joined #perl6
14:47 denis_boyun__ joined #perl6
14:48 flussence joined #perl6
14:50 hugme joined #perl6
14:50 gtodd retupmoca: yay and  BenGoldberg++ for reading/thinking so clearly ;-)
14:51 anocelot joined #perl6
14:53 anaeem1 joined #perl6
14:58 telex joined #perl6
15:02 tadzik joined #perl6
15:02 apejens_ joined #perl6
15:02 jlaire_ joined #perl6
15:03 rurban joined #perl6
15:04 robins joined #perl6
15:04 perlpilot joined #perl6
15:04 camelia joined #perl6
15:04 mr-foobar joined #perl6
15:04 dalek rakudo/nom: abc97db | jonathan++ | src/core/List.pm:
15:04 dalek rakudo/nom: Further optimizations of push.
15:04 dalek rakudo/nom:
15:04 dalek rakudo/nom: This cuts the perl6-bench while_push benchmark in half again, and
15:04 dalek rakudo/nom: provides a further small improvement for the push/split benchmark.
15:04 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/abc97dbcc2
15:05 rlilja joined #perl6
15:05 xinming_ joined #perl6
15:05 liztormato_ joined #perl6
15:06 SamuraiJack joined #perl6
15:08 FROGGS[mobile] joined #perl6
15:13 jnthn timotimo: At your convenience, feel free to do a perl6-bench run and see if we're looking better on the push benchmarks. :)
15:18 liztormato_ left #perl6
15:19 masak_grr 'night, #perl6
15:20 anaeem1 joined #perl6
15:27 aindilis joined #perl6
15:27 gtodd I think it was masak that "6golfed" this word counter:   perl6 -e `.say for (bag slurp.words).pairs.sort(*.value).reverse[^10]'   ... I have 6017 line unicode text version of  Maria Chapdelaine
15:27 zacts joined #perl6
15:27 gtodd couints the top 10 most frequent words in 7 seconds
15:28 gtodd Ibut a 6294 line unucode text of La_psychologie_des_foules.txt croaks with
15:28 gtodd "Arg has not been flattened in slurpy_positional"
15:29 gtodd in method new at src/gen/m-CORE.setting:17249
15:29 gtodd in sub bag at src/gen/m-CORE.setting:17906
15:30 nickpatc1 joined #perl6
15:30 sftp_ joined #perl6
15:30 risou_ joined #perl6
15:30 gtodd but if I shorten it to 6100 lines it works
15:31 atta_ joined #perl6
15:31 retupmoc1 joined #perl6
15:31 rhr_ joined #perl6
15:31 cxreg2 joined #perl6
15:31 grep0r joined #perl6
15:31 Gothmog_1 joined #perl6
15:31 _rubio_terra_ joined #perl6
15:31 wtw joined #perl6
15:31 wtw joined #perl6
15:31 avar joined #perl6
15:31 avar joined #perl6
15:31 danaj_ joined #perl6
15:31 mtj joined #perl6
15:32 sunnavy joined #perl6
15:32 SHODAN joined #perl6
15:32 jepeway joined #perl6
15:32 woshty joined #perl6
15:32 stux|RC-only joined #perl6
15:33 ggherdov___ joined #perl6
15:33 ntln joined #perl6
15:33 mathw joined #perl6
15:34 shachaf joined #perl6
15:39 shachaf joined #perl6
15:41 tinyblak joined #perl6
15:44 raiph joined #perl6
15:44 jtpalmer joined #perl6
15:45 shachaf left #perl6
15:46 molaf joined #perl6
15:46 wtw joined #perl6
15:46 yoleaux joined #perl6
15:46 avar joined #perl6
15:46 cotto- joined #perl6
15:46 wtw joined #perl6
15:46 avar joined #perl6
15:47 gtodd oops I meant 5654 lines ... ;-)  ie reducing the length/size of the file to equal the one that is working  is not helping ... suggesting that something bag or Baggy is doing  after grabbing the slurped words is causing p6 to exit with the error  that Arg is not flattened in slurpy_positional
15:50 raiph joined #perl6
15:50 woshty joined #perl6
15:50 gtodd but what would not get be getting flattened ?  the error sends me to look at at src/gen/m-CORE.setting:17249
15:50 eMBee joined #perl6
15:51 leont joined #perl6
15:54 dalek rakudo-star-daily: c881109 | coke++ | log/ (14 files):
15:54 dalek rakudo-star-daily: today (automated commit)
15:54 dalek rakudo-star-daily: review: https://github.com/coke/rakudo​-star-daily/commit/c881109402
15:54 dalek perl6-roast-data: 76f34df | coke++ | / (4 files):
15:54 dalek perl6-roast-data: today (automated commit)
15:54 dalek perl6-roast-data: review: https://github.com/coke/perl6​-roast-data/commit/76f34df502
15:56 gtodd that I guess comes from  src/core/Baggy.pm https://github.com/rakudo/rakudo​/blob/nom/src/core/Baggy.pm#L24
15:57 FROGGS[mobile] joined #perl6
15:58 gtodd which refers to  https://rt.perl.org/Public/​Bug/Display.html?id=119609 :-)
16:01 FROGGS joined #perl6
16:03 BenGoldberg joined #perl6
16:07 dalek perl6-roast-data: 7b55a1e | coke++ | perl6_pass_rates.csv:
16:07 dalek perl6-roast-data: These 2 were not run today.
16:07 dalek perl6-roast-data: review: https://github.com/coke/perl6​-roast-data/commit/7b55a1e76e
16:15 gtodd anyway I thought it might be simple, but what ever is?
16:16 gtodd masak_grr: I have  alias="perl6 -e '.say for (bag slurp.words).pairs.sort(*.value).reverse[^10]' "  and use it at least once a month ;-)
16:22 kaleem joined #perl6
16:29 PZt joined #perl6
16:33 johnreed joined #perl6
16:40 Akagi201 joined #perl6
16:43 TimToady so, in perl6-bench, after I did a fetch, I didn't expect a build to rebuild the entire world, including the all the "stable" old versions of everything; how can I just rebuild the things that changed?
16:44 TimToady japhb: ^^
16:45 TimToady or do I have to cd down and do such builds by hand?
16:45 johnreed left #perl6
16:45 TimToady it's doubly irritating because all the old builds take twice as long...
16:48 raiph joined #perl6
16:49 gtodd maybe it will only do that once?
16:49 TimToady and all I want to do is to see if my new test of push @a, @a comes out scaled correctly
16:49 TimToady I already did it once last night
16:49 TimToady now it's doing it again
16:50 gtodd that seems .... suboptimal  for a large set of situations
16:50 TimToady of course, when it's not busy overheating my lap, it's sitting there trying to update submodules on old version, which presumably are tagged anyway
16:51 TimToady anywya, it seems that 'bench build' reconfigs everything, which is no fun at all
16:54 gtodd sounds like " bench build " needs more cowbell
16:54 gtodd ... or cloud
16:55 guru joined #perl6
17:01 TimToady at least I thought to rebuild before I started backlogging rather than after...
17:02 treehug88 joined #perl6
17:08 TimToady oh lovely, now it's starting in on rebuilding all the old P5 versions...no lap heater breaks for submodules now...
17:09 TimToady at least it doesn't do 'make test'
17:10 * lizmat_ is back, but still tired  :-)
17:20 [Sno] joined #perl6
17:23 lizmat FWIW, after jnthn's latest pull, the spectest seems a little slower to me (and more CPU, 1200+ for the first time in a long time)
17:27 TimToady my informal run of bench last night had current (as of yesterday) rakudo decreasing to 3.3% of P5, with a peak of 4% on 2014-08
17:28 TimToady so that tends to confirm that things have got slower
17:28 * TimToady also provides a grain of salt with that
17:29 TimToady dunno how much of that is just the "push" effect
17:30 zakharyas joined #perl6
17:31 * TimToady would like to rerun the tests today, but for Some Reason he can't, possibly related to all the rakudo-jvm rebuilds that just started now :/
17:31 lizmat :-(
17:31 lizmat but today still has at least 4.5 hours, even here  :-)
17:31 TimToady 'bench build' should come with a big fat "ARE YOU ABSOLUTELY SURE?" confirmation
17:33 TimToady s/SURE/INSANE/
17:33 timotimo http://t.h8.lv/p6bench/2014-0​9-19-post_release_rakudo.html     http://t.h8.lv/p6bench/2014​-09-19-history_rakudo.html
17:36 timotimo the parse json benchmarks both suffered a bit :(
17:37 TimToady is that before or after jnthn's push patch?
17:37 timotimo after
17:38 timotimo it's nice to see the improvement in zero and hello
17:40 tinyblak joined #perl6
17:41 slmult0_z joined #perl6
17:41 Akagi201 joined #perl6
17:43 bartolin joined #perl6
17:46 dalek rakudo/nom: a874439 | (Elizabeth Mattijsen)++ | src/core/Supply.pm:
17:46 dalek rakudo/nom: Implement Supply.words, according to spec
17:46 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/a874439457
17:47 dalek roast: 1aa3c11 | (Elizabeth Mattijsen)++ | S17-supply/words.t:
17:47 dalek roast: Add tests for Supply.words
17:47 dalek roast: review: https://github.com/perl6/roast/commit/1aa3c11d68
17:53 dalek rakudo/nom: 197d0a5 | (Elizabeth Mattijsen)++ | t/spectest.data:
17:53 dalek rakudo/nom: Add Supply.words tests to spectest
17:53 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/197d0a5cf4
17:53 dalek rakudo/nom: 7a381fd | (Elizabeth Mattijsen)++ | docs/ChangeLog:
17:53 dalek rakudo/nom: Some initial ChangeLog entries for 2014.10
17:53 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/7a381fdd0e
18:01 grondilu_ so, this GRL thing you guys keep talking about, is it coming soon?  I can't wait now :P
18:01 pmurias joined #perl6
18:01 dalek nqp-js: 1a083d0 | (Pawel Murias)++ | src/vm/js/bin/run_tests:
18:01 dalek nqp-js: Add passing test 46.
18:01 dalek nqp-js: review: https://github.com/pmurias​/nqp-js/commit/1a083d0eb6
18:01 dalek nqp-js: a3cf6e7 | (Pawel Murias)++ | src/vm/js/ (2 files):
18:01 dalek nqp-js: Emit partial data required for deserialization (code refs are missing).
18:01 dalek nqp-js:
18:01 dalek nqp-js: And stubs for ops required for deserialization.
18:01 dalek nqp-js: review: https://github.com/pmurias​/nqp-js/commit/a3cf6e7ca7
18:01 dalek nqp-js: baf2612 | (Pawel Murias)++ | src/vm/js/nqp-runtime/runtime.js:
18:01 dalek nqp-js: Fix coding standard violations.
18:01 dalek nqp-js: review: https://github.com/pmurias​/nqp-js/commit/baf2612265
18:01 dalek nqp-js: c02577e | (Pawel Murias)++ | src/vm/js/nqp-runtime/ (2 files):
18:02 grondilu joined #perl6
18:02 * lizmat hopes pmichaud will be able to make it to the APW, so we can get clarity about the GLR
18:02 grondilu (oops, misspelled that.  was GLR I guess)
18:03 PerlJam .seen pmichaud
18:03 yoleaux I saw pmichaud 30 Aug 2014 16:52Z in #perl6: <pmichaud> lunchtime -- bbl
18:04 PerlJam That's one long lunch  ;)
18:04 grondilu hopefully if there's a talk about it we'll get videos quicker than what we did for YAPC::EU :/
18:05 PerlJam Did the videos from the third room ever go up?
18:05 cognome joined #perl6
18:06 lizmat PerlJam: I think all but the main room videos are up
18:07 lizmat check it out at https://www.youtube.com/user/yapceu
18:07 pmurias hmm, with a high quality live stream it should be possible to add talk started/ended and crowdsource the editing of videos
18:07 PerlJam yeah, it's the Vitosha videos  that are still missing.
18:08 lizmat just pinged #yacpeu, but no news there yet either
18:09 virtualsue joined #perl6
18:11 Akagi201 joined #perl6
18:15 timotimo aaw
18:15 pmurias ?
18:16 dalek star: ec742d5 | (Tobias Leich)++ | modules/zavolaj:
18:16 dalek star: update NativeCall's revsion, pmakholm++
18:16 dalek star: review: https://github.com/rakudo/star/commit/ec742d5d9c
18:17 timotimo i'm still somewhat eagerly waiting for the vitosha videos
18:17 timotimo checking almost every day ...
18:19 * lizmat wonders whether Integral isn't a fossil (e.g. S02:754)
18:19 * synopsebot Link: http://perlcabal.org/syn/S02.html#line_754
18:19 guru joined #perl6
18:20 lizmat it *is* most definitely NYI and underspecced
18:21 TimToady well, the question is, what would belong in a role for integers, and will this get more important as more integer types are used?
18:23 lizmat ah, good point...
18:23 slmult0_z joined #perl6
18:27 TimToady timotimo: I made the mistake of typing 'bench build' this morning, and am still awaiting the results; do you have any secrets for building just latest without rebuilding everything?
18:27 TimToady or do you just do it by hand in the subdir?
18:28 timotimo "bench build rakudo-moar/2014.09 rakudo-parrot/2014.09 nqp-moar/2014.09 nqp-parrot/2014.09 etc etc" will do that for you
18:28 TimToady thanks
18:28 timotimo until now i didn't know you could leave the arguments out
18:28 timotimo i thought it only did that when you use "bench quickstart"
18:30 TimToady seems like there oughta be a way to say just rebuild the things that git pull modified
18:30 TimToady or 'fetch'
18:30 timotimo mhh yes
18:31 timotimo seems like the user interface portion of p6bench just got a new hacker :P
18:31 TimToady well, so much for the GLR :)
18:33 lizmat m: my $a = nqp::box_s("foo",ObjAt); say $a; say $a.WHAT   # is there a better way to make an ObjAt string?
18:33 camelia rakudo-moar 7a381f: OUTPUT«foo␤(ObjAt)␤»
18:33 timotimo TimToady: after only a bit of hacking on p6bench, you'll want to get back to making things faster real quick :P
18:34 lizmat m: say ObjAt.new(:value<foo>)   # LTA error, very LTA
18:34 camelia rakudo-moar 7a381f: OUTPUT«(signal )»
18:35 lizmat m: say <a b c>.Set.WHICH.WHAT  # should be ObjAt according to spec
18:36 camelia rakudo-moar 7a381f: OUTPUT«(Str)␤»
18:36 timotimo i don't really know what we need ObjAt for :\
18:37 lizmat S02:652  "So C<WHICH> still returns a value rather than another object, but that value must be of a special C<ObjAt> type that prevents accidental confusion with normal value types, and at least discourages trivial pointer arithmetic."
18:37 synopsebot Link: http://perlcabal.org/syn/S02.html#line_652
18:39 ivanshmakov joined #perl6
18:40 gtodd and it's not yak shaving if p6bench needs to be faster for the GLR to happen :-)
18:42 ivanshmakov joined #perl6
18:47 itz GLT?
18:47 itz errr
18:47 itz GLR?
18:47 lizmat "The Great List Refactor: a refactoring of the reification of lazy lists, so that lazy evaluation is only done when it is really needed.  Expected to provide a performance benefit of several factors in certain, loop-like situations."
18:49 itz ah
18:50 * nwc10 is so glad that GLR isn't http://en.wikipedia.org/wiki/BBC_London_94.9#1988.E2.80.932000
18:53 itz I thought it was a pre-nationalisation railway company :)
18:53 dalek specs: 364a50a | (Elizabeth Mattijsen)++ | S02-bits.pod:
18:53 dalek specs: Fix typo
18:53 dalek specs: review: https://github.com/perl6/specs/commit/364a50a75e
18:58 gtodd itz: hehe
18:58 xinming joined #perl6
18:58 gtodd wasn't that GNR ?
18:59 ajr_ GWR
18:59 ajr_ Great West
19:00 gtodd TGTIMTOWTMIGFR  the great there is more than one way to make it go faster refactor
19:00 gtodd but really ... TGIF
19:01 nwc10 http://en.wikipedia.org/wiki/Great_Western_Railway http://en.wikipedia.org/wiki/Great_N​orthern_Railway_%28Great_Britain%29 http://en.wikipedia.org/wiki/Great_Eastern_Railway http://en.wikipedia.org/wi​ki/Great_Southern_Railways
19:01 nwc10 take your pick
19:03 nwc10 but if you really want a fun railway, see http://en.wikipedia.org/wiki/Lartigue_Monorail
19:04 slmult0_z_y joined #perl6
19:05 gtodd lizmat: btw an error I described above when using masak's "6golfed" wordcount script sent me digging around and I found a bug of yours mentioned ..
19:05 gtodd lizmat: https://rt.perl.org/Public/​Bug/Display.html?id=119609  <-- is that "fixed" ?
19:06 * lizmat looks
19:07 lizmat I think it is worked around in the Set implementation
19:08 gtodd ok good
19:08 lizmat but the underlying issue still exists
19:08 lizmat m: my %e; -> $_ { (%e{$_.WHICH} //= ($_ => 0)).value++ } for <a b b c c c>; say %e.perl
19:08 camelia rakudo-moar 7a381f: OUTPUT«("Str|a" => "a" => 1, "Str|c" => "c" => 3, "Str|b" => "b" => 2).hash␤»
19:08 lizmat p: my %e; -> $_ { (%e{$_.WHICH} //= ($_ => 0)).value++ } for <a b b c c c>; say %e.perl
19:08 camelia rakudo-parrot 7a381f: OUTPUT«("Str|b" => "b" => 2, "Str|c" => "c" => 3, "Str|a" => "a" => 1).hash␤»
19:08 lizmat hmmm... underlying issue seems fixed as well
19:08 gtodd oh good!  anyway it did not seem to explain the error I described ... which I think is moar related
19:09 gtodd lizmat: jnthn: hmm not sure if I should file it -->  http://paste.scsys.co.uk/424473  but I think it is a more accurate source of the error I encountered ... I don't know if it is a bug or just an "unimplemented" bit ...
19:11 gtodd jnthn:  are moar bugs on rt or ...github?
19:11 Akagi201 joined #perl6
19:13 lizmat gtodd: I'm getting 'Malformed UTF-8' ?
19:13 gtodd hmm
19:13 gtodd I don't get anything from perl6-m
19:14 Isp-sec joined #perl6
19:14 gtodd after running iconv to make it into utf-8
19:14 gtodd I get the error unless I shrink the file down ...
19:16 lizmat ok, after running it through iconv, it is accepted
19:17 lizmat ah, but only 23 lines left
19:18 gtodd iconv -f ISO-8859-1 -t UTF-8 24007-8.txt > La_psychologie_des_foules.txt
19:18 gtodd wc La_psychologie_des_foules.txt
19:18 gtodd 6295   53934  369256 La_psychologie_des_foules.txt
19:20 lizmat (bag slurp.words).pairs' <text2
19:20 lizmat is enough for a segfault for me
19:21 gtodd with perl6-m -e '.say for (bag slurp.words).pairs.sort(*.value).reverse[^10]'  aliased wordcount I  did to a bunch of txt files thus:
19:21 gtodd for i in *txt; do echo ""; wc $i ; wordcount $i; done
19:21 lizmat (bag slurp.words) <text2
19:21 lizmat actually
19:21 gtodd so is it the moar backend's  slurpy_positional doing that?
19:23 lizmat no idea:
19:23 lizmat $ time perl6 -e 'my @w := slurp.words; .say for @w.Bag.pairs.sort({$^b.value cmp $^a.value})[^10]' <text2   # works for me and takes ~ 5.5 seconds
19:24 gtodd there's a  case MVM_CALLSITE_ARG_DEFAULT or something that throws that error but at the top of the while loop I think there's a check of some kind
19:24 gtodd if (arg_info.flags & MVM_CALLSITE_ARG_FLAT)   nqp/MoarVM/src/core/args.c  line 517
19:24 lizmat $ time perl6 -e 'my @w := slurp.words; .say for @w.Bag.pairs.sort(*.value).reverse[^10]' <text2  # this version takes 6.5 seconds
19:27 gtodd heh yeah it's faster to count words than to match words in a logfile  ... anyway just wondered if it was effecting anyone else ...  my  p6-p and p6-j work - only perl6-m crashes
19:30 gtodd lizmat: it works if I use your approach ...  time perl6 -e 'my @w := slurp.words; .say for @w.Bag.pairs.sort(*.value).reverse[^10]' <La_psychologie_des_foules.txt
19:30 gtodd but takes 14 seconds (it's my disks I'm sure)
19:32 gtodd someone smarter than me must poinder why masak's elegant code doesn't work  ... :-)   I can't really say when it started
19:33 lizmat it's probably something Moarish, indeed
19:33 gtodd can say when it started to break since I only use it sporadically and not always on large files
19:33 lizmat TimToady:  I just wondered how [ * - ^10 ] could be taken to mean "give me the last 10 elements"
19:34 BenGoldberg m: say( * - ^10 );
19:34 camelia rakudo-moar 7a381f: OUTPUT«WhateverCode.new()␤»
19:35 BenGoldberg m: (^20)[ * - ^10 ].say;
19:35 camelia rakudo-moar 7a381f: OUTPUT«10␤»
19:36 gtodd leaving aside the dot on "say" (and maybe the pairs bit)  a total non programmer could quite well understand the wordcount "p6 phrase"-->
19:36 gtodd .say for (bag slurp.words).pairs.sort(*.value).reverse[^10]
19:39 BenGoldberg m: (bag slurp.words).pairs.sort(*.value).reverse[^10].say
19:39 camelia rakudo-moar 7a381f: OUTPUT«"mo" => 9 "a" => 8 "le" => 5 "is" => 5 "Ghaoth" => 4 "an" => 4 "ag" => 4 "gach" => 3 "gan" => 3 "Dobhair." => 3␤»
19:39 gtodd Alba an aigh!
19:41 * gtodd tries to make it only count wors with > 5 chars
19:41 gtodd words
19:41 lizmat grep( *.value > 5 )
19:42 gtodd :-)
19:42 gtodd yay
19:43 gtodd that's what I thought to try ... perl6 is working  for my brain  !
19:45 sqirrel joined #perl6
19:45 Psyche^ joined #perl6
19:46 lizmat gtodd: seems the segfault doesn't happen if the file is truncated to the first 5655 lines
19:46 lizmat if it has 5656 lines, it segfaults
19:46 gtodd yesh .. for me it was 5654 lines and then a few more chars
19:47 TimToady you can't implicitly hyper a - like that
19:47 gtodd !!
19:48 lizmat TimToady: do we have another way to say "the last 10 elements" ?
19:48 TimToady [ *-10 .. * ] maybe
19:49 lizmat gtodd: 5654 lines, indeed
19:49 TimToady [ * X- ^10 ] maybe
19:49 TimToady [ * «-« ^10 ] maybe
19:49 TimToady but you can't automatically assume a - will distribute over a range
19:50 lizmat [*-10 .. *] works
19:50 TimToady or course the X and hyper, if they work, will be in reverse order
19:51 lizmat ah, yes, reverse order... hmmm..
19:51 TimToady and * - 0 will be off the end in any case
19:51 gtodd in vim it's 10$   :-)
19:52 gtodd or maybe {10}$
19:53 TimToady different languages make different things easy
19:53 lizmat gtodd: did you rakudobug it already ?
19:55 gtodd no ... wondered if I should  file it under moar repo on github or on rt.perl.org  ...
19:55 lizmat rakudobug for now, with the indication that it's a moar specific rakudo problem
19:56 gtodd ok so just mail it to <rakudobug@perl.org>  and it's all good or ...?
19:56 lizmat yup
19:57 gtodd ok good I forgot my rt login .... trying to sign up again today
20:02 lizmat S02:900 "A Str is a Unicode string object.  There is no corresponding native str type."
20:02 synopsebot Link: http://perlcabal.org/syn/S02.html#line_900
20:02 lizmat TimToady: is that a fossil?  or is rakudo using str in a Buf way ?
20:05 xragnar_ joined #perl6
20:06 dalek perl6-bench: 1754bab | TimToady++ | microbenchmarks.pl:
20:06 dalek perl6-bench: add a pushme benchmark
20:06 dalek perl6-bench: review: https://github.com/japhb/pe​rl6-bench/commit/1754babb35
20:07 TimToady lizmat: depends on how things work out under NFG
20:08 lizmat ah, the other big thing we still need  :-)
20:08 TimToady late lunch &
20:09 fuad joined #perl6
20:12 Akagi201 joined #perl6
20:16 * TimToady never managed to get plots out of that benchmark, but suspects it's a config issue
20:26 bartolin while building perl6-p on different BSD systems I repeatedly stumbled over dyncall. AFAIK dyncall is an external library included in nqp. for FreeBSD (10.0), OpenBSD (5.5) and DragonFly BSD (3.8.2) I had to add -fPIC as a compiler flag for building dyncall. for OpenBSD (5.5) this was not necessary, since Position Independent Code is enabled per default. (I googled that one :-)
20:26 bartolin since I'm not familiar with dyncall: do you think I should report this issues upstream (to the dyncall developers)? I'm not sure I'm able to describe the problem properly. I *think* we run into trou
20:26 bartolin ble because we build shared libraries of dyncall which we use later in our build process.
20:27 bartolin erm
20:29 timotimo oh btw
20:29 timotimo is rakudo vulnerable to that real number that causes double parsers to loop infinitely?
20:30 gtodd bartolin: I might be wrong but did Chohag find different versions of dyncall being used in nqp parrot etc. ?
20:30 gtodd oh wait ChoHag is here :-)
20:30 PerlJam timotimo: sounds like a good test to write anyway, just in case :)
20:30 ChoHag Sort of here.
20:32 gtodd anyway bartolin++ for chasing this down ... I got perl6-p to build (finally) but it is very slow  and the repl is strange (I need to press return twice to get into it or exec lines of code?)  ... rebuilding on some more machines again now :)
20:32 timotimo perl6: say +"2.2250738585072012e-308"
20:32 camelia rakudo-jvm 7a381f: OUTPUT«Can't call method "syswrite" on an undefined value at /home/p6eval/jvm-rakudo/eval-client.pl line 32.␤»
20:32 camelia ..rakudo-{parrot,moar} 7a381f: OUTPUT«2.2250738585072e-308␤»
20:32 camelia ..niecza: OUTPUT«Cannot open assembly './run/Niecza.exe': No such file or directory.␤»
20:32 timotimo perl6: say 2.2250738585072012e-308
20:32 camelia rakudo-{parrot,moar} 7a381f: OUTPUT«2.2250738585072e-308␤»
20:32 camelia ..niecza: OUTPUT«Cannot open assembly './run/Niecza.exe': No such file or directory.␤»
20:32 camelia ..rakudo-jvm 7a381f: OUTPUT«Can't call method "syswrite" on an undefined value at /home/p6eval/jvm-rakudo/eval-client.pl line 32.␤»
20:33 gtodd bartolin: do you have hardware or vm's for your BSDs ? ... if they are bare vm's  can you share ;-)
20:34 bartolin gtodd: I installed some KVM guests. At the moment they are definitely not ready for sharing :-/
20:34 bartolin gtodd: But sounds like a nice idea.
20:35 gtodd heh ok I have some VBox VMs ... contemplating 11-CURRENT and bhyve :-)
20:35 [Sno]_ joined #perl6
20:35 bartolin gtodd: regarding dyncall: I found only dyncall v0.8 included at https://github.com/perl6/nqp/​tree/master/3rdparty/dyncall
20:36 gtodd I think I will "down tools" and update netbsd and openbsd and various 9 and 10 series VMs before trying any more weekly builds
20:37 gtodd bartolin: ok I must have mis-remembered that discrepancy
20:37 bartolin gtodd: And adding -fPIC as a compiler flag enabled me to build perl6-p for different BSD variants (as above).
20:38 slmult0_z_y_h joined #perl6
20:38 bartolin gtodd: I saw yesterday, that upstream added -fPIC for FreeBSD as well: http://dyncall.org/svn/dync​all/trunk/dyncall/ChangeLog
20:38 gtodd bartolin: ye nice I grabbed head/master with  --gen-parrot=master
20:38 bartolin gtodd: But only in trunk (yet) and not for NetBSD or DragonFly BSD
20:39 gtodd since I'm bleeding edge for parrot that might explain other slowness ... is the patch now in the parrot 6.8.0 release ?
20:39 gtodd oh only trunk
20:39 gtodd ok
20:40 bartolin gtodd: It's not in parrot 6.8.0. IIRC rurban++ said, it should probably go in 6.8.1
20:42 gtodd I shouldn't think of parrot as upstream but it is kind of upstream to rakudo ;-)  dyncall is double upstream :)
20:42 bartolin Well, for the moment I'll patch nqp's version of dyncall, so that perl6-p is buildable on DragonFly BSD
20:42 gtodd have not used DFly for some time ... needed hardware to do so back then
20:43 bartolin gtodd:  then I was referring to double upstream ;-)
20:43 gtodd will DFly run in a kvm?
20:43 bartolin I just installed it
20:44 bartolin But did not a lot more than building parrot and perl6-p ;-)
20:45 tony-o timotimo: i don't know if you've pulled http-server-async  recently but i have the tests messed up
20:45 gtodd I should try ... sometime next my little "farm" will end up with: netbsd openbsd and freebsd 9.3R 10.0.1R
20:45 gtodd s/next/nest week/
20:46 gtodd s/nest/next/
20:46 virtualsue joined #perl6
20:47 bartolin on a related note: do you think it is useful to support systems like DragonFly BSD? or should I better try to look for LHF in tickets or tests?
20:48 cognome joined #perl6
20:52 [Sno] joined #perl6
20:56 timotimo tony-o: didn't test it thoroughly ... or at all :(
20:59 tony-o timotimo: it should be fixed in the repo
21:00 timotimo cool
21:12 bartolin gtodd: regarding different versions of dyncall: I just saw that MoarVM has it's own dyncall (looks like pre 0.8): https://github.com/MoarVM/dyncall
21:13 Akagi201 joined #perl6
21:13 gtodd ok that was it :-)
21:20 telex joined #perl6
21:34 lizmat good night, #perl6!
21:35 PerlJam good night lizmat!
21:35 PerlJam sleep well.
21:42 [Sno] joined #perl6
21:43 virtualsue joined #perl6
21:45 cognome joined #perl6
21:46 sunny joined #perl6
21:47 cognome joined #perl6
22:05 leont joined #perl6
22:14 Akagi201 joined #perl6
22:16 virtualsue joined #perl6
22:24 xinming joined #perl6
22:33 kurahaupo joined #perl6
22:38 slmult0_z_y_h_g joined #perl6
22:54 molaf joined #perl6
22:56 raiph joined #perl6
23:01 dalek rakudo/better-errors-for-roles: a15c440 | (Rob Hoelz)++ | src/Perl6/Grammar.nqp:
23:01 dalek rakudo/better-errors-for-roles: Give a clearer error message when trying "does UnknownRole"
23:01 dalek rakudo/better-errors-for-roles: review: https://github.com/rakudo/rakudo/commit/a15c4402b6
23:14 Akagi201 joined #perl6
23:15 slmult0_z_y_h_g joined #perl6
23:31 xenoterracide joined #perl6

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

Perl 6 | Reference Documentation | Rakudo