»ö« 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 1Check failedFAILED 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 messagecurrent 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 failedFAILED… | ||
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 failedFAILED… | ||
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 $0Unhandled 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 $0Regex not terminatedat /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].kvPotential 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 int32at /tmp/gL1KqMKwOq:1------> $a; my int32 $b; my int64 $c; my int128⏏ $d;Malformed myat /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 |