»ö« Welcome to Perl 6! | perl6.org/ | evalbot usage: 'perl6: say 3;' or rakudo:, niecza:, std:, or /msg camelia perl6: ... | irclog: irc.perl6.org/ | UTF-8 is our friend!
Set by moritz on 3 May 2013.
masak hm. 00:00
00:13 japhb_ left 00:30 berekuk left 00:35 kurahaupo joined 00:36 massimino left
itz__ will video be available of any of the Polish talks? 00:36
00:37 daniel-s left
timotimo i hope (also hope there will be english audio or subtitles) 00:37
sorear wonders idly if there will be polish subtitles for the english talks 00:42
00:47 raiph joined 00:48 japhb_ joined 00:49 berekuk joined 00:50 berekuk left
itz__ what has %*VM been changed to? 00:53
colomon rn: say %*VN.perl 00:54
camelia niecza v24-51-g009f999: OUTPUT«Any␤»
..rakudo 45ae2d: OUTPUT«Failure.new(exception => X::AdHoc.new(payload => "Dynamic variable \%*VN not found"))␤»
colomon rn: say %*VM.perl
camelia niecza v24-51-g009f999: OUTPUT«Any␤»
..rakudo 45ae2d: OUTPUT«Failure.new(exception => X::AdHoc.new(payload => "Dynamic variable \%*VM not found"))␤»
colomon rn: say $*VM.perl
camelia niecza v24-51-g009f999: OUTPUT«Any␤»
..rakudo 45ae2d: OUTPUT«{"name" => "parrot", "config" => {"git_describe" => "RELEASE_5_2_0", "sha1" => "dfc3d7c34f5707b617e41d0befab4de66be68112", "a" => ".a", "ar" => "ar", "ar_extra" => "", "ar_out" => "", "archname" => "i486-linux-gnu-thread-multi-64int", "arflags" => "cr", "as" => "as…
colomon third times the charm? 00:55
itz__ ah
ty
00:57 kurahaupo left 01:02 snearch left 01:24 PacoAir left 01:34 stevan_ left 01:40 stevan_ joined 01:44 Chillance_ left, FROGGS_ joined 01:45 Chillance_ joined 01:48 FROGGS left 02:01 ggoebel joined 02:07 prevost_ joined 02:09 prevost left 02:10 grondilu left
colomon Trying to use panda as a library, with no success. :\ 02:13
lue
.oO($*VM looks awfully hashy to me)
02:36
colomon nothing wrong with storing a hash in a scalar. :) 02:37
lue of course, but perhaps standard Perl 6 features can be a bit more clear? :) 02:38
02:41 Chillance_ left 02:43 prevost_ left 02:49 stevan_ left 02:50 stevan_ joined
itz__ whats "ref"? 02:51
sorear std: ref 02:52
02:52 prevost joined
camelia std 0336087: OUTPUT«===SORRY!===␤Undeclared routine:␤ 'ref' used at line 1␤Check failed␤FAILED 00:00 41m␤» 02:52
sorear itz__: No such thing
itz__: contexgt?
itz__ ok how do I tell $*VM is a hash 02:53
colomon r: say $*VM.WHAT
camelia rakudo 45ae2d: OUTPUT«(Hash)␤»
sorear r: say $*VM ~~ Hash
camelia rakudo 45ae2d: OUTPUT«True␤»
japhb_ .ask tadzik As seen in panda commit 9f6e8242687fe7f9408959c80984da7ef9fa9776 for example, why do you convert from method arguments with defaults to 'is copy' args that you then check and default manually at the top of the function? 02:54
yoleaux japhb_: I'll pass your message to tadzik.
colomon .ask tadzik Any notion why calling $panda = Panda.new from a script of my own (after use Panda) wouldn't initialize $panda.ecosystem? 02:56
yoleaux colomon: I'll pass your message to tadzik.
03:13 xyf joined
xyf quit 03:15
03:15 xyf left 03:35 fildon_ joined 03:39 fildon__ left, saxx11 left 03:43 saxx11 joined 03:46 cognominal__ left, cognominal__ joined 03:54 preflex left, preflex_ joined 03:55 preflex_ is now known as preflex 03:59 IKARi__ joined 04:00 imIKARi left 04:09 saxx11 left 04:10 saxx11 joined
dalek rl6-bench: 21bd960 | (Geoffrey Broadwell)++ | bench:
bench: Allow for-components() and for-checkouts() to be quiet
04:11
rl6-bench: fa817c3 | (Geoffrey Broadwell)++ | bench:
Add list-checkouts command to bench
rl6-bench: 12391e4 | (Geoffrey Broadwell)++ | bench:
Refactor list-checkouts to something a bit more 6ish
rl6-bench: bbcaccb | (Geoffrey Broadwell)++ | README:
Update README example to show current (2013.05) releases of NQP and Rakudo
04:12 saxx11 left 04:15 saxx11 joined 04:25 Psyche^ joined 04:26 Patterner left, Psyche^ is now known as Patterner 04:32 zby_home joined 04:41 zby_home left
[Coke] yawns. 05:22
dalek : be9deef | (Tobias Leich)++ | / (2 files):
let dottyop not explode
05:26
05:27 FROGGS_ is now known as FROGGS
dalek : 82583f4 | (Tobias Leich)++ | rakudo.patch:
update rakudo-patch
05:27
05:32 zby_home_ joined 05:39 prevost left
dalek rl6-bench: cb45086 | (Geoffrey Broadwell)++ | bench:
Improve correctness of max-length calculation in list-checkouts bench command
05:39
rl6-bench: a20cbb6 | (Geoffrey Broadwell)++ | bench:
Add list-components command to bench
rl6-bench: c091a05 | (Geoffrey Broadwell)++ | TODO:
Remove some completed TODO items
rl6-bench: 3f3c69a | (Geoffrey Broadwell)++ | / (3 files):
Add support for building and timing perl5 from component checkouts
tadzik colomon: because dependency injection :) 05:43
yoleaux 02:54Z <japhb_> tadzik: As seen in panda commit 9f6e8242687fe7f9408959c80984da7ef9fa9776 for example, why do you convert from method arguments with defaults to 'is copy' args that you then check and default manually at the top of the function?
02:56Z <colomon> tadzik: Any notion why calling $panda = Panda.new from a script of my own (after use Panda) wouldn't initialize $panda.ecosystem?
tadzik japhb_: because defaults don't kick in if the value is 'Any'
05:45 kaare_ joined
japhb_ tadzik, Hmmm, I see. Well, at least you could use //= instead of the unless {} construction. 05:52
06:03 kaare_ left
dalek rl6-bench: cd8d322 | (Geoffrey Broadwell)++ | components.json:
Remove trailing comma in components.json
06:04
rl6-bench: 43dc132 | (Geoffrey Broadwell)++ | analyze:
Improve highlight style in analyze plots
06:04 kaare_ joined
dalek rl6-bench: e755a4b | (Geoffrey Broadwell)++ | README:
Add nqp-jvm to README example, and improve readability and DRY compliance of example commands
06:12
06:16 IKARi__ left 06:17 SamuraiJack joined 06:19 risou_awy is now known as risou 06:43 zby_home_ left 06:46 woolfy left 06:49 lizmat left 06:58 FROGGS[mobile] joined 07:03 SamuraiJack left 07:09 FROGGS[mobile] left 07:26 FROGGS[mobile] joined 07:28 AndChat|356841 joined 07:31 FROGGS[mobile] left, SamuraiJack joined 07:37 lizmat joined
lizmat morning #perl6! 07:38
sorear o/ 07:46
moritz \o
lizmat is overlooking a grey and wet Warsaw from the 8th floor 07:50
nwc10 everyone made it? 07:51
sorear I didn't
lizmat not everybody's here yet… jnthn made it to the social last night 07:52
nwc10 but I didn't think that you were planning to make it.
lizmat masak was supposed to arrive later… haven't seen him yet, then again, we don't actually start until 10am
sorear is not quite as big a fan of travel as jnthn++ 07:53
or all the other people who are planning to be on the other side of the world a week from now
nwc10 for "not a fan of travel" you're pretty damn impressive at it when you do it. 6kg rucksac 07:55
07:58 FROGGS[mobile] joined
sorear is that high or low 07:59
lizmat jnthn and masak have entered the building 08:00
08:01 AndChat|356841 left
sorear perhaps I shall yet warm to it, who knows 08:01
labster sounds like you all are having fun without me
tadzik they're having fun, I have to run all this :D 08:02
which is fun too, I admit
lizmat sorear: the most fun of travelling, is getting home again, in your own bed 08:04
sorear NO FUN ALLOWED
jnthn morning o/ 08:08
r: Any.new 08:11
camelia rakudo 45ae2d: ( no output )
moritz Q: what does that return? A: Anyhting
jnthn Cool.new(what => 'shoeshine') 08:12
08:26 AndChat|356841 joined 08:30 woolfy joined, FROGGS[mobile] left
tadzik is amazed that the whole thing (Perl Workshop) seems to be working somehow 09:03
09:04 dmol joined
jnthn :) 09:04
09:05 imIKARi joined
nwc10 sorear: good. low is good in that context 09:10
09:15 IKARi__ joined 09:16 risou is now known as risou_awy, risou_awy is now known as risou 09:17 imIKARi left 09:34 imIKARi joined, AMENDEES_ joined 09:35 risou is now known as risou_awy 09:37 saxx11 left, IKARi__ left 09:41 imIKARi left 09:43 denisboyun_ joined 09:44 AndChat|356841 left, FROGGS[mobile] joined 10:06 denisboyun_ left 10:09 bbkr_ joined, fildon_ left
bbkr_ rn: my @l := gather { die; }; 10:10
camelia rakudo 45ae2d: OUTPUT«No exception handler and no message␤␤current instr.: 'throw' pc 343296 (src/gen/CORE.setting.pir:150044) (src/gen/CORE.setting:8791)␤called from Sub 'die' pc 36620 (src/gen/CORE.setting.pir:14333) (src/gen/CORE.setting:581)␤called from Sub '' pc 135 ((file unknown)…
..niecza v24-51-g009f999: OUTPUT«Potential difficulties:␤ @l is declared but not used at /tmp/0LeEQ51a6X line 1:␤------> my ⏏@l := gather { die; };␤␤»
10:14 denisboyun_ joined 10:19 domidumont joined
GlitchMr I fail 10:20
I accidentally typed invalid exec command into ~/.profile, and now I cannot login to perlcabal.org 10:21
oh, good, I can recover myself in non interactive mode 10:22
10:23 imIKARi joined 10:27 risou_awy is now known as risou
GlitchMr By the way, how can I make uc("i") eq "İ"? 10:29
.u İ 10:30
yoleaux U+0130 LATIN CAPITAL LETTER I WITH DOT ABOVE [Lu] (İ)
10:33 berekuk joined
arnsholt GlitchMr: First, you'll probably have to set your locale to Turkish (if you haven't already). And then you may have to implement the locale-sensitive behaviour in Rakudo 10:33
10:33 imIKARi left 10:34 berekuk left 10:35 spider-mario joined 10:36 berekuk joined 10:40 domidumont left 10:41 domidumont joined 10:43 denisboyun_ left 10:44 denisboyun joined 10:48 daxim joined 10:54 lustlife joined 10:55 denisboyun left 11:06 SamuraiJack left 11:21 rindolf joined 11:29 dmol left 11:35 lizmat left 11:39 woolfy left 11:45 renormalist joined 11:50 berekuk left 11:51 kivutar joined
dalek : e132cd9 | (Tobias Leich)++ | / (2 files):
added sub exists
11:54
11:54 berekuk joined 12:04 PacoAir joined
FROGGS std: use v5; sub a ($;$) { } 12:06
camelia std 0336087: OUTPUT«===SORRY!===␤Unable to parse signature at /tmp/S3sILtWve6 line 1:␤------> use v5; sub a ⏏($;$) { }␤Couldn't find final ')'; gave up at /tmp/S3sILtWve6 line 1:␤------> use v5; sub a ($;⏏$) { }␤Parse failed␤FAILED…
FROGGS std: use v5; sub a ($@) { }
camelia std 0336087: OUTPUT«ok 00:01 52m␤»
FROGGS std: use v5; sub a ($@$) { }
camelia std 0336087: OUTPUT«===SORRY!===␤Unable to parse signature at /tmp/BytZTSAlBx line 1:␤------> use v5; sub a ⏏($@$) { }␤Couldn't find final ')'; gave up at /tmp/BytZTSAlBx line 1:␤------> use v5; sub a ($@⏏$) { }␤Parse failed␤FAILED…
FROGGS std: use v5; sub a ($foo) { }
camelia std 0336087: OUTPUT«Potential difficulties:␤ $foo is declared but not used at /tmp/CpcU9QnjKc line 1:␤------> use v5; sub a ($foo⏏) { }␤ok 00:01 52m␤»
12:09 FROGGS[mobile] left 12:15 SamuraiJack joined 12:28 FROGGS left 12:33 FROGGS joined
tadzik daxim: pizza 12:35
12:44 snearch joined 12:54 tgt joined 13:06 woolfy joined 13:07 lizmat joined
lizmat FROGGS: re github.com/rakudo-p5/v5/commit/e132cd909a , wouldn't it make more sense to create a Perl 5 Bool::True { 1 } and Bool::False { "" } 13:17
and then simply map to a:exists ? 13:18
FROGGS lizmat: in the end I want to have A Bool::True that stringifies and numifies to 1 or '' 13:20
lizmat ok, we agree then :-)
FROGGS ya :o)
I need to fiddle with the operators to support that though, like I did for concatenation... 13:21
that's why I made that quick patch atm
dalek p/rak-jvm-support: fb1a50d | jonathan++ | src/vm/jvm/QAST/Compiler.nqp:
Fix REPL regression.
13:25
13:32 lizmat left, woolfy left 13:33 lizmat joined, woolfy joined
lizmat FROGGS: also, are you sure a:exist does what you think it does? 13:36
r: sub a (\a) { a:exists }; my %a=a=>3; say a(%a<a>)
camelia rakudo 45ae2d: OUTPUT«3␤»
13:38 clkao left
FROGGS hmmmm 13:39
13:40 massimino joined
massimino Good afternoon. Can I use guis created by glade or stetic with niecza perl6? 13:43
13:47 SamuraiJack_ joined, SamuraiJack left
FROGGS massimino: sorry, I dont knows these toolkits 13:51
massimino Ok. Thank you! Don't worry 13:53
masak could someone help me look for jnthn's bf interpreter in the backlog? 13:55
I know it's somewhere around irclog.perlgeek.de/perl6/2012-07-25#i_5845013 13:56
FROGGS a boyfriend interpreter?
what is 'bf' for?
masak oh nvm, jnthn found it.
FROGGS k
masak FROGGS: en.wikipedia.org/wiki/Brainfuck
FROGGS ahh
hmmm, it doesnt make much sense to have a brainfuck slang, does it? 13:58
colomon .ask tadzik "because dependency injection" -- any hints on how to make it work? 13:59
yoleaux colomon: I'll pass your message to tadzik.
tadzik colomon: is it broken? :) 14:08
yoleaux 13:59Z <colomon> tadzik: "because dependency injection" -- any hints on how to make it work?
tadzik colomon: the idea is that you supply all the objects to Panda explicitely 14:09
colomon: so you need to bring your own Ecosystem
colomon tadzik: for what it's worth, my script is a copy of bin/Panda with stuff (as far as I know not on the main execution path) deleted. 14:10
Panda.new calls Panda::Ecosystem.new, no? 14:11
tadzik yeah, it does, but Ecosystem needs some configuration to be useful for anything
like, the path to projects.json or whatnot
colomon which I am passing to Panda.new, just like you did 14:12
tadzik can you show me/
colomon gist.github.com/colomon/5649194 # should look very familiar, you wrote most of it... 14:13
errr... and now it works?
WTF?
tadzik panda changed the api a bit recently 14:14
if you look at fresh bin/panda it's tad smaller
colomon hmmm, so maybe I have a mismatch? but as I say, it's suddenly working. :\
tadzik most of the UI logic is in Panda::App now
so it gets precompiled (and fast)
colomon tadzik: are you sure that's in the main branch of panda? 14:16
I tried to install a new panda yesterday, and I don't see any sign of a Panda::App. 14:17
masak is amused at jnthn making a lightning talk next to him, trying to decode his own interpreter code :P 14:18
diakopter waves at the self-interpreter interpreter 14:20
colomon sees Panda::App on github, sigh
tadzik colomon: yep 14:21
colomon so how do I update a pandabrew installed panda?
did bin/pandabrew panda install panda yesterday, and still don't have an up-to-date panda as far as I can tell 14:24
14:26 woolfy left, Chillance joined 14:34 SmokeMachine joined 14:38 snearch left 14:41 jokar joined 14:50 jokar left
lizmat tension is building 14:56
14:56 dmol joined
diakopter o_O 14:57
jnthn omg the tension! 14:58
lizmat rrr rr r r r rrrr r r r rrrr r r r r r rrrr r r r r r r r r rrrr
FROGGS the sound of your hdd? 14:59
lizmat not sure
it's a new language, inspired by Warsaw's weather of the past days, called rain fuck 15:00
moritz :-) 15:01
FROGGS *g* 15:02
daxim ++++++--->><<><<<+++--+><<<<
diakopter looks like binary to me..
Ulti so how many of you are from Lebanon? 15:05
colomon assumes Ulti means the country and not the city in Ohio. 15:06
Ulti heh yeah
www.youtube.com/watch?v=7fq7jHg9zXo I have an obsession for checking YouTube for new Perl6 videos
I read LebGeeks as LabGeeks and got excited 15:07
moritz Ulti: iirc patrickas (who contributed most of the inital code for MAIN) is from Lebanon
Ulti aha 15:08
15:09 ajr joined, ajr is now known as ajr_
moritz it's nice to see he hasn't forgotten about us :-) 15:09
Ulti I didnt know you could do my $answer = 42 but 'Meaning of Life'; 15:10
colomon errr... how do you do a regex without using / delimiters in p6?
Ulti p. neat
moritz colomon: rx{...}
colomon 's brain seems to have shifted back to p5 after all the Dancer hacking the last two days.
15:10 SamuraiJack_ left
moritz colomon: regex { ... } 15:10
colomon rn: "git://github.com/rakudo-p5/v5.git" ~~ rx{/github.com/(.*?)/}; say $0 15:11
camelia niecza v24-51-g009f999: OUTPUT«===SORRY!===␤␤Unrecognized regex metacharacter / (must be quoted to match literally) at /tmp/IoozL2oKNu line 1:␤------> t://github.com/rakudo-p5/v5.git" ~~ rx{/⏏github.com/(.*?)/}; say $0␤␤Unhandled exception: Unable to…
..rakudo 45ae2d: OUTPUT«===SORRY!===␤Unrecognized regex metacharacter / (must be quoted to match literally)␤at /tmp/jj1OR4384r:1␤------> it://github.com/rakudo-p5/v5.git" ~~ rx{⏏/github.com/(.*?)/}; say $0␤Regex not terminated␤at /tmp/jj1OR4384r:1␤----…
moritz don't forget your quotes
colomon ah, this approach simply doesn't work in p6
moritz rn: "git://github.com/rakudo-p5/v5.git" ~~ rx{ '/github.com/' (.*?) \/ } and say $0 15:12
camelia rakudo 45ae2d, niecza v24-51-g009f999: OUTPUT«「rakudo-p5」␤␤»
15:13 bbkr_ left, kivutar left
colomon moritz++ 15:13
15:16 clkao joined 15:21 lizmat left 15:23 daxim left 15:24 bruges left, bruges joined 15:26 AMENDEES_ is now known as biotech
colomon 's brain starts smoking when he switches back and forth between p5 and p6 too much 15:31
FROGGS hmmm, I'm used to it :o) 15:33
moritz
.oO( brain already molten )
colomon BTW, 71.10.146.50:3001/report/colomon 15:34
;)
15:35 tgt left, raiph left
moritz \o/ 15:35
colomon BTW, we're down to only two fresh failing projects this week: 71.10.146.50:3001/report
moritz today is the right column? 15:36
colomon moritz: yes
your code is still in there, but I ended up using an HTML table instead of graphics
moritz which is probably a saner choice :-) 15:37
colomon obviously still still needs beautification.
moritz and a legend
colomon but the basic functionality is up and running.
moritz colomon++ 15:38
FROGGS colomon: there is a bug, I the link to the TAP isnt working :P 71.10.146.50:3001/project/String::CRC32
colomon++ # \o/
colomon and adding /user-id will give you all the modules for that module-creator
timotimo i liked that talk about gradual typing 15:39
colomon also, it's just a debug instance of Dancer on my home linux box, so service will be intermittent for the time being.
moritz mine looks pretty clean :-)
timotimo a good decision to quickly show how subs and even operators are limited to inside lexical scopes
colomon FROGGS: link to TAP? 71.10.146.50:3001/project/String::CRC32 works for me...
moritz colomon: if you want, we can host that service on feather2 (same machine as perl6.org), we just can't do the smoking there :-) 15:40
FROGGS colomon: where do I see what tests failed?
colomon moritz: we can probably figure out a way to shoot the smoke results from my machine to feather2. rsync?
FROGGS scp? 15:41
colomon FROGGS: oh, I don't think that functionality is in there.
moritz colomon: rsync, scp
FROGGS colomon: that's why I used " :P "
:o)
colomon FROGGS: I need to get back to paying $work! ;)
FROGGS ó.ò, yeah
moritz I guess the problem a problem with freelancing is that "it's weekend" isn't an excuse for not getting $work done 15:42
s/the problem/
colomon moritz: especially when most of my programming efforts for the last two days went to this. ;) 15:44
15:44 biotech left
colomon But then, I really need to figure out how to use Dancer to get nice web reports of my $work tests, so this was educational for me. 15:45
15:45 lizmat joined
colomon oh, bug 15:48
Hmmm... is there a way to specify going back to the top level of a web site without specifying the full URL for the site? 15:50
FROGGS <a href="/">linky</a>
relative paths
15:50 prevost joined
FROGGS or absolute? well, it works :o) 15:51
href="/report" might be the thing you want
colomon trying it now 15:52
FROGGS++ # simple but works
absolute, but relative.
15:53 woolfy joined
colomon this way */report and */report/colomon can both include the same links and they work 15:55
16:01 raiph joined 16:06 mrlo left 16:07 mrlo joined 16:10 snoopy left 16:16 tgt joined
japhb jnthn, now that I have nqp-jvm working in perl6-bench, there is one obvious exception to the general "starts slower than nqp-parrot, but scales better and ends up way faster" trend: repeated concatenation (adding one character per loop iteration to a string). nqp-jvm is VERY slow at this. Is that fixable without too much trouble? 16:21
16:24 massimino left
dalek : 420d419 | (Tobias Leich)++ | t/test.pl:
done_testing() calls Test::done()
16:26
: 939e859 | (Tobias Leich)++ | lib/Perl5/Terms.pm:
added -= and /=
: 63e2e39 | (Tobias Leich)++ | lib/Perl5/ (2 files):
prepare support of subroutine prototypes
: 317487a | (Tobias Leich)++ | STATUS.md:
status update
FROGGS lizmat: I'm not sure how to make a proper exists()-sub 16:27
arnsholt japhb: One possible explanation for that could be not using StringBuilder and creating new String objects all the time 16:33
japhb arnsholt, ah, so creating massive GC pressure. 16:34
16:35 aghbas joined, tgt left 16:36 rindolf left, sqirrel joined
arnsholt japhb: Yeah, IIRC that's a fairly well-known JVM optimisation 16:36
I think the Java compiler does it automatically as an optimisation, but don't know if the JIT knows about it 16:37
16:45 rindolf joined
japhb Did anyone answer my question from a couple days ago about doing eval-string in nqp, so that I can hide pir:: ops from nqp-jvm? 16:48
(I didn't see it while I was around, but I haven't been backlogging this month.)
FROGGS japhb: HLL::Compiler has a method eval 16:52
japhb FROGGS, class method or do I need to get the active instance somehow? 16:54
moritz nqp: say(nqp::compreg('nqp'))
camelia nqp: OUTPUT«Error while compiling block : Error while compiling op call (source text: "nqp::compreg('nqp')"): Error while compiling op compreg (source text: "nqp::compreg('nqp')"): No registered operation handler for 'compreg'␤current instr.: '' pc 48612 (src/stage2/QAST.pir:17766) (src…
FROGGS maybe have a look at rakudo/src/core/control.pm line 148
japhb FROGGS, will do, thank you. 16:55
arnsholt japhb: What kind of code is it you need pir::ops in?
japhb arnsholt, heavily recursive benchmarks like rc-man-or-boy-test need to increase the recursion limit in nqp-parrot (it seems already high enough in rakudo-parrot and in perl5), and as far as I knew when I wrote it, that requires pir:: ops. Perhaps that is no longer true? 16:57
arnsholt Oh, I see 16:58
In that case I'm not sure. Maybe jnthn knows 16:59
FROGGS .oO( scratch that "maybe" ) 17:08
japhb On another note -- in the interest of showing compiler in its best light, anything special I need to do to get nqp-jvm running with maximum optimization? It looks like the configuration for nqp-parrot and rakudo-parrot passes --optimize to the parrot build by default, but I don't see anything equivalent for the nqp-jvm build.
timotimo if you don't pass --optimize to rakudo, it will assume the default of 3, which is the maximum i think 17:13
japhb OK, good 17:16
Anyone here know about setting optimization when compiling perl5? 17:17
(I hesitate to ask that question in the lion's den lest the rending begin.) 17:18
17:19 tgt joined
japhb nqp: nqp::getcomp('nqp').eval('say("hello")') 17:21
camelia nqp: OUTPUT«hello␤»
japhb (sane interfaces)++ 17:22
FROGGS cool
17:29 lucas___ joined 17:33 SmokeMachine left 17:35 japhb_ left 17:36 saxx11 joined 17:38 japhb_ joined
dalek : db7efb0 | (Tobias Leich)++ | lib/Perl5/Grammar.nqp:
better sigil change detection
17:39
: 7673bed | (Tobias Leich)++ | / (2 files):
added sub scalar()
17:42 kaare__ joined 17:43 kaare_ left 17:54 denisboyun joined 17:55 census joined 18:02 denisboyun left 18:08 autumn joined
japhb Well on the plus side I've now managed to hide the pir:: to increase the recursion limit on nqp-parrot so that it doesn't blow up nqp-jvm ... but now it looks like I need to increase the recursion limit on nqp-jvm. :-/ 18:19
dalek rl6-bench: efb3b9f | (Geoffrey Broadwell)++ | nqp/rc-man-or-boy-test:
Prevent the parrot-specific recursion limit code in rc-man-or-boy-test from blowing up nqp-jvm; now to figure out how to increase the recursion limit in nqp-jvm
18:20
moritz japhb: so write an nqp op that increases the recursion limit :-) 18:23
18:29 saxx11 left 18:45 jlaire joined
dalek rl6-bench: 180818d | (Geoffrey Broadwell)++ | nqp/rc-forest-fire:
Modify nqp/rc-forest-fire to work on all nqp backends
18:47
japhb_ moritz, I've shaved so many yaks the last couple weeks I could provide wool for most of northern Europe. :-/ 18:48
tadzik colomon: OH YES 18:59
colomon: this is awesomE!
18:59 SamuraiJack_ joined, lucas___ left
timotimo what is awesome? 19:00
19:00 prevost left
tadzik the reports! 19:00
71.10.146.50:3001/report/tadzik
colomon tadzik: still needs lots of beautification, but it's pretty handy already, I think. :) 19:03
tadzik it is! 19:04
awesome
19:05 xilo left 19:06 xilo joined 19:10 adu joined 19:14 ajr_ left
colomon tadzik: that's why I was messing with panda. I wrote a little script to go through the ecosystem and dump the module names matched up to their authors, so that the Dancer script wouldn't have to do the heavy lifting there. 19:15
tadzik a-ha
colomon Panda as a lib rather than Panda as a program.
tadzik yeah
like smoker does
it uses panda-as-a-lib too 19:16
. o O ( Panda as a service )
colomon my first attempt to do the report by author called panda info for each module, and just crushed the server. ;)
tadzik :) 19:17
I'm not surprised, panda is a big beast
19:19 snearch joined
timotimo tadzik: i added tests for the suggestions bit, feel like merging the pull request? 19:25
tadzik timotimo: oh, yes 19:26
I'll look at that now
'tis one busy weekend
japhb_ Comments requested on the benchmark plots so far: www.broadwell.org/t/test-plots.html 19:27
timotimo yays :)
this is actual data? 19:28
japhb timotimo, yes
data points have rollover info 19:29
timotimo "8 per second"? how come niecza is ridiculously slow in the first "benchmark"?
japhb niecza seems to take a LOT longer to load a "script" containing only '0' than a completely empty script. 19:30
That first "benchmark" simply tests if there is any difference between starting up and doing the most trivial possible parse.
hello goes slightly farther and actually does a hello world. 19:31
The more interesting stuff is below the bar charts, in all the scaling plots
timotimo oh, this is without startup time?
japhb yes
timotimo how do you measure that? do you run the same benchmark a hundred times in the same process or something? 19:32
japhb (See header line -- the analyzer script can do it with or without)
19:32 domidumont left
japhb Measuring startup time? I spawn the compiler doing nothing at all (-e '' or the equivalent) a bunch of times (10 by default) and take the shortest time seen as the startup time. 19:33
timotimo ah, ok
that's surprising 19:34
good thing we have those benchmarks :)
japhb :-D
timotimo it would be great to have a direct link to the benchmark code from that page 19:35
while_bind has no perl5 because it doesn't have that feature or something?
japhb Yeah.
And for a while I was emulating that with Data::Alias,
but it doesn't seem to want to pass its tests in the 5.18.0 I'm building now 19:36
(I was using the system 5.14 before)
and the benchmark code link sounds useful, I just have to figure out how I want to handle that. 19:37
19:39 rindolf left
japhb Anyone else have any comments? :-) 19:39
timotimo huh, strange 19:41
while_hash_set has the blue perl5 line and for some of the later data points it says "2x slower than the fastest"
it would seem that it shouldn't compare to earlier data points? 19:42
19:43 denisboyun_ joined
colomon japhb: if you can add the system name to the roll-over links, that would be cool. (so it would be "NQP / 32141 per second / 9x slower than fastest") 19:44
timotimo i'd like that, too. the colors are kind of close for rakudo and nqpjvm and niecza 19:45
japhb colomon, yeah, I agree. I haven't figured out how to do that yet with jqPlot, but I'd really like to find a way.
colomon what are the different axes? I'm assuming y-axis is count per second, but I'm not clear on what the x-axis is? 19:46
japhb timotimo, agreed. They're autogenerated, though I can override. However, I'm partially colorblind, so I figured it was just me -- plus, my choices would probably be garish to you. :-)
x axis is "scale" -- loop count, key scaling parameter, what have you.
As you scale up, you'd like to see the rate plot reach a horizontal asymptote 19:47
(except for rc-man-or-boy-test, which will have a diagonal line down to the right)
19:48 djanatyn left, djanatyn joined
timotimo ah, ok 19:49
colomon japhb: right now it's sort of blue, orange, three shades of brown/green.
but even if the colors were distinct, it would be nice to have the names right there so you're not looking back at the key.
19:49 denisboyun_ left
GlitchMr std: $blah[2].kv 19:49
camelia std 0336087: OUTPUT«===SORRY!===␤Variable $blah is not predeclared at /tmp/u5tRMImiSv line 1:␤------> <BOL>⏏$blah[2].kv␤Potential difficulties:␤ Suspicious .kv after subscript; to suppress this warning, use :kv or \.kv instead at /tmp/u5tRMImiSv lin… 19:50
GlitchMr std: my $blah; $blah[2].'kv'
camelia std 0336087: OUTPUT«===SORRY!===␤Unsupported use of . to concatenate strings or to call a quoted method; in Perl 6 please use ~ to concatenate, or if you meant to call a quoted method, please supply the required parentheses at /tmp/9fzzGyuJzk line 1:␤------> my $b…
GlitchMr std: my $blah; $blah[2].'kv'()
camelia std 0336087: OUTPUT«Potential difficulties:␤ Useless use of quotes at /tmp/XAQ_9nBmPq line 1:␤------> my $blah; $blah[2].'kv'⏏()␤ok 00:00 44m␤»
GlitchMr I'm not sure if I like it. What's wrong with .kv after subscript.
Besides, it doesn't have to mean THAT .kv.
19:51 revdiablo left
colomon japhb: interesting how it seems like both niecza and nqp-jvm frequently do worse than Parrot platforms for small values, but better for large values. 19:51
GlitchMr Why parser would care about method names?
colomon GlitchMr: that was added specially, to avoid confusion with the :kv adverb (which does something completely different) 19:53
GlitchMr Feels rather hacky, but whatever. 19:54
Not sure if I like adverbs and methods being different, if this is to avoid confusion.
19:55 revdiablo joined
GlitchMr But not really sure about alternatives. 19:55
colomon GlitchMr: if you say $blah[2]:kv, you get 2 and $blah[2]
GlitchMr I know
(2, $blah[2])
colomon if you say $blah[2].kv, you get 0 and $blah[2]
not really clear why you'd ever want to do the latter. 19:56
GlitchMr Because I have hash in array?
colomon .kv is just calling kv on whatever $blah[2] returns. It has no idea what (if any) key was used to created $blah[2] 19:57
GlitchMr > (@array[0].kv).perl
(("a", "b"), ("b", "c")).list
> (@array[0]:kv).perl
(0, {"a" => "b", "b" => "c"})
When I have single value, it's unlikely that `:kv` is what I wanted.
19:57 yx left
GlitchMr But `.kv` makes sense. 19:57
colomon GlitchMr: why would you want .kv there? 19:58
GlitchMr For example, to iterate 19:59
for @array[0].kv -> $k, $v {}
Granted, it's rather contrived example, but still.
colomon but that's completely contrived. 20:01
... either that or I'm confused here. 20:02
rn: my @a = [1, 2, 3]; say @a[0];
camelia rakudo 45ae2d, niecza v24-51-g009f999: OUTPUT«1 2 3␤»
colomon rn: my @a = [1, 2, 3]; for @a[0].kv -> $k, $v { say :$k.perl, :$v.perl; } 20:03
camelia rakudo 45ae2d, niecza v24-51-g009f999: OUTPUT«"k" => 0"v" => 1␤"k" => 1"v" => 2␤"k" => 2"v" => 3␤»
colomon yeah, okay, that's clearly useful. if weird
japhb colomon, timotimo, thanks for the input 20:04
colomon, I'm thinking that may actually be the respective JITs needing to warm up.
timotimo huh, what will $blah[2]\.kv be? 20:06
oh, i was scrolle dup
GlitchMr \. is . 20:10
\ is despace operator IIRC
moritz unspace 20:11
20:12 fhelmberger joined 20:14 adu left
timotimo ah 20:14
i thought \ only unspaces if there are actual spaces 20:15
20:15 fhelmberger left
japhb timotimo, \. is unspaced . so that there is not a gap in the available widths (. is 1, \. is 2, \ . is 3, etc.) 20:19
20:21 fhelmberger joined
timotimo ah, cool 20:21
20:40 raiph left 20:42 fhelmberger left, fhelmberger joined 20:46 a232346 joined
a232346 quit 20:50
20:50 a232346 left
tadzik timotimo: I get test failures on your branch :( 20:51
gist.github.com/tadzik/5650729
timotimo oh, whoops? hold on. 20:54
masak oh hai, #perl6
colomon o/ 20:56
20:56 sqirrel left
tadzik hai masak! 20:56
colomon masak: 71.10.146.50:3001/report/masak
timotimo ah, my lc fails
because i don't do it, that would explain. 20:57
tadzik: they pass for me, now 20:58
20:58 fhelmberger left
masak colomon: ooh, nice. 20:59
yeah, some of those repos should simply be removed, I think. 21:00
others can probably be fixed to pass their tests.
tadzik timotimo: yep, seems to work great now :)
Project Term::AnsiColor not found in the ecosystem. Maybe you meant Term::ANSIColor? 21:01
aww yiss
sorear nice 21:02
(o/)
colomon \o
dalek nda: 87bceda | (Timo Paulssen)++ | lib/Panda (2 files):
the ecosystem may now suggest projects based on name similarity

currently only compares the names case-insensitively and removes all -, _ and : before comparing.
nda: 7ab8dae | (Timo Paulssen)++ | t/ (2 files):
a few tests for Ecosystem::suggest_project.
tadzik I think I broke git history somehow
dalek nda: d315631 | (Timo Paulssen)++ | lib/Panda/Ecosystem.pm:
forgot to casefold in suggestions.
tadzik or maybe not :)
timotimo++ 21:03
I was missing that feature
timotimo i need suggestions on how to make it work with Text::Levenshtein, but not require it to be installed at compile time
sorear do we have (damerau-)levenschtein in the ecosystem yet?
timotimo "require" should be the way to go, but it doesn't work the way i thought
we have Text::Levenshtein, yes
sorear eval { require } ? 21:04
timotimo r: require Text::Levenshtein <distance>; say &distance; 21:05
camelia rakudo 45ae2d: OUTPUT«===SORRY!===␤Undeclared name:␤ &distance used at line 1. Did you mean 'distance'?␤␤»
timotimo er, yeah?
sorear r: require Text::Levenshtein <&distance>; say &distance;
camelia rakudo 45ae2d: OUTPUT«Could not find Text::Levenshtein in any of: /home/p6eval/nom-inst/lib/parrot/5.2.0-devel/languages/perl6/site/lib, /home/p6eval/nom-inst/lib/parrot/5.2.0-devel/languages/perl6/vendor/lib, /home/p6eval/nom-inst/lib/parrot/5.2.0-devel/languages/perl6/lib, /home/p6eva…
timotimo oh, the & makes the difference! 21:06
thanks, that'll do it.
colomon masak: in html-template, Template.pm, I think link 124 should be my $et = ~$i<attributes><escape>; 21:07
tadzik panda has a total of 16 contributors. If that's not awesome, I don't know what is 21:09
timotimo the key to getting many contributors is 1) clean code, 2) lots of easy tasks just lying around :P
tadzik I love you people. This makes life so fun.
tadzik blushes 21:10
colomon 3) issues that annoy people in something they want to use. ;)
tadzik++
timotimo :D
i'm the levenshtein-suggestion-bloke anyway ...
tadzik :) 21:11
I don't hate this code anymore, that's good
I can now push stuff forward whenever I want :)
timotimo that's pretty excellent, yeah
colomon moritz: in general, I think it's the changes in how the ? quantifier shows up in Matches that is causing you trouble. 21:12
errr, masak
sorry, moritz. :)
masak colomon: thanks, I'll submit that as an issue to Template.pm
21:12 SamuraiJack_ left
woolfy Today was an excellent day for Perl 6! Tadzik co-organiser for Polish Perl Workshop, Masak & Jonathan giving red-glowing presentations about Perl 6 where everybody listened and gave big well-deserved applauses. 21:14
japhb masak, jnthn: slides online yet? ;-) 21:15
sorear awesome 21:16
masak japhb: not in PDF form, no. 21:20
japhb: I might have time to upload them as PDFs in the next few days. 21:21
timotimo r: try { require Text::Levenshtein <&distance> }; say &distance;
camelia rakudo 45ae2d: OUTPUT«===SORRY!===␤Undeclared name:␤ &distance used at line 1␤␤»
timotimo oh, it would only be available inside the try, right?
i can pipe it out, though 21:22
sorear try not using braces
braces create a scope
timotimo oh, i could write this without braces the same way, no?
sorear tes
timotimo r: try require Text::Levenshtein <&distance>; say &distance; 21:23
camelia rakudo 45ae2d: OUTPUT«(Any)␤»
timotimo great.
21:24 PacoAir left
timotimo hm. now again with the "what's a sane distance to accept a different module at?" part 21:25
21:43 kaare__ left 22:02 splitcells joined, lustlife left
splitcells are all sized low-level types in Perl 6 supported on all machines 22:03
japhb_ timotimo, perhaps start by finding the minimum distance between existing modules?
splitcells for example int128 on 32 bit machine?
japhb_ splitcells, I believe the intent is that they *will* be, but aren't necessarily supported now. 22:04
r: my int $a; my int32 $b; my int64 $c; my int128 $d; 22:05
camelia rakudo 45ae2d: OUTPUT«===SORRY!===␤Type 'int128' is not declared. Did you mean any of these?␤ int16␤ int32␤␤at /tmp/gL1KqMKwOq:1␤------> $a; my int32 $b; my int64 $c; my int128⏏ $d;␤Malformed my␤at /tmp/gL1KqMKwOq:1␤------> my int $a; my …
japhb_ Yup, no int128 in rakudo yet.
splitcells is it part of the perl6 spec that it have to support all sizes? 22:08
22:09 spider-mario left
splitcells ah I found it: "An implementation of Perl is not required to support 64-bit integer types or 128-bit floating-point types unless the underlying architecture supports them. " 22:09
22:22 dmol left 22:30 preflex left 22:32 preflex joined 22:41 berekuk left 22:47 yakshavr joined
dalek kudo-star-daily: b1d475c | coke++ | log/ (5 files):
today (automated commit)
22:49
[Coke] wonders if someone killed any of my processes on feather today. 22:50
Juerd: have you enabled qmail sending yet?
22:52 mtk left 22:55 census left
dalek rl6-roast-data: 19a1279 | coke++ | / (4 files):
today (automated commit)
22:55
[Coke] colomon: niecza has 2 more failures today.
22:56 mtk joined 22:58 tgt left 22:59 berekuk joined
[Coke] gather question: gist.github.com/coke/4d33cb3fa0d3ddbb8604 - trying to get a lazy array of lines. the gather is only pulling the first line here (because there's no loop on the gather) - but what do I loop over? ... also, is there a better way to get a lazy list of lines? 23:55
... oh, by .lines, you say? ;) 23:58