»ö« 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 sorear on 25 June 2013. |
|||
timotimo | oh, TimToady, another thing. hyper makes a decision at the very beginning wether to call obj.flat.eager or obj.tree.eager and it bases that on either the op that's passed being nodal or the "nodal" flag being passed to the hyper sub. | 00:01 | |
so making a decision upon first seeing Iterable doesn't strike me as possible with that setup | |||
TimToady | -> \obj { START die "nodal" if obj.^can($name)[*-1].nodal; obj."$name"(|c) } | ||
hmm | 00:02 | ||
if the obj.tree.eager fails immediatly, you could switch to the obj.flat.eager one | 00:03 | ||
so could still be done with an exception, like with my modified block above | 00:04 | ||
alternately, we find some way of hoisting the nodal to the block | |||
timotimo | oof. | 00:05 | |
TimToady | but I expect the exception thrown by START can be made to work | 00:06 | |
provided the block is recloned on entry to the hyper | 00:07 | ||
timotimo | making a couple of test cases should bring a bit of clarity. not that i can come up with good test cases right now off the top of my head | ||
the pull request has been updated. i'll write a comment to explain the new approximation along with a link to this discussion | |||
also, i should be running some tests. | 00:08 | ||
00:09
notjack_ left
|
|||
timotimo | oh, whoops, that's an error i didn't get before | 00:09 | |
"Representation must be composed before it can be allocated" | |||
it looks like it comes from using [*-1] too early in the setting or something | 00:11 | ||
00:12
pupoque left
00:13
Juerd left,
masak left
|
|||
timotimo | yes, with .pop it does compile | 00:13 | |
00:14
synopsebot left,
camelia left
00:15
Util left,
sergot left,
PerlJam left,
dalek left,
[Coke] left,
hugme left,
tadzik left
00:16
census_ left
00:20
btyler left,
Rotwang left
|
|||
timotimo | oh well, regressions | 00:20 | |
00:25
benabik left
00:29
benabik joined
|
|||
colomon | hmmm…. seem to have lost the ability to build jakudo | 00:36 | |
00:36
gdey joined
|
|||
timotimo | aaw, crud. my own tests didn't succeed. i wonder what's up with that. | 00:40 | |
colomon | Stage start : 0.000 | 00:42 | |
Could not find Perl6::BOOTSTRAP in any of: ., blib | |||
oooo! | 00:43 | ||
Operation 'isnull' requires 1 operands | |||
timotimo | ah. the test was wrong | ||
colomon | huh. looks like jnthn added this call : nqp::isnull($resultish, Mu) | 00:44 | |
timotimo | huh | 00:45 | |
00:51
synopsebot joined
00:52
Juerd joined,
dalek joined,
ChanServ sets mode: +v dalek
|
|||
timotimo | i'll have time to build pull requests for ecosystem projects that rely on the non-nodal hyperops between the compiler release and the star release, right? | 00:52 | |
00:52
hugme joined,
ChanServ sets mode: +v hugme
00:53
camelia joined
00:54
Util joined,
PerlJam joined,
sergot joined,
[Coke] joined,
masak joined
|
|||
Ben_Goldberg | I've got a silly question: does it say in the perl6 specs which operations preserve lazyness, and which are supposed to be eager? | 00:54 | |
For example: | 00:55 | ||
rpn: gather { take $_ for 1..9; say "D'oh!" }.first({ $^a > 4 }).say | |||
00:55
ChanServ sets mode: +v camelia
|
|||
camelia | rakudo a8ca88, pugs: OUTPUT«D'oh!5» | 00:55 | |
..niecza v24-88-g1f87209: OUTPUT«5» | |||
timotimo | o_O how does niecza do that? | ||
er, silly me. | |||
Ben_Goldberg | Now, obviously some list operations have to be eager (sort, for example) | 00:56 | |
But things which act like a map or a grep don't need to be. | 00:58 | ||
timotimo | indeed. first shouldn't do it like that i agree. | ||
00:59
fridim__ left
|
|||
Ben_Goldberg | r: gather { take $_ for 1..9; say "D'oh!" }.kv[0].say | 00:59 | |
camelia | rakudo a8ca88: OUTPUT«D'oh!0 1» | ||
timotimo | yeah, we talked about .kv not having to be eager yesterday | 01:00 | |
01:01
skids joined,
tadzik joined
|
|||
Ben_Goldberg | rn: gather { take $_ for 1..9; say "D'oh!" }.grep({ $^a %% 2 })[0].say | 01:02 | |
camelia | rakudo a8ca88, niecza v24-88-g1f87209: OUTPUT«2» | ||
Ben_Goldberg | Well, that works right :) | ||
colomon | what, .first isn't lazy in rakudo? | ||
Ben_Goldberg | rn: gather { take $_ for 1..9; say "D'oh!" }.map({ $^a * 2 })[0].say | ||
timotimo | colomon: i'm on it :) | 01:03 | |
camelia | rakudo a8ca88, niecza v24-88-g1f87209: OUTPUT«2» | ||
timotimo | ah, i guess self.list is eager for something like that. | ||
r: (gather { take $_ for 1..9; say "D'oh!" }).WHAT | 01:04 | ||
camelia | rakudo a8ca88: ( no output ) | ||
timotimo | r: say (gather { take $_ for 1..9; say "D'oh!" }).WHAT | ||
camelia | rakudo a8ca88: OUTPUT«(List)» | ||
timotimo | hm. | 01:05 | |
r: my @thing := (gather { take $_ for 1..9; say "D'oh!" }).list; 1; | |||
camelia | rakudo a8ca88: ( no output ) | ||
colomon | no, it's for, I'll bet yuou | ||
timotimo | r: my @thing := (gather { take $_ for 1..9; say "D'oh!" }).list; @thing.first(3); | ||
camelia | rakudo a8ca88: OUTPUT«D'oh!» | ||
timotimo | seems that way | ||
Ben_Goldberg | r: for(gather { take $_ for 1..9; say "D'oh!" }) { say '1'; last } | 01:06 | |
camelia | rakudo a8ca88: OUTPUT«===SORRY!===Word 'for' interpreted as 'for()' function call; please use whitespace instead of parensat /tmp/JYNwXRAgjE:1------> for⏏(gather { take $_ for 1..9; say "D'oh!" Unexpected block in infix position (two terms in a r… | ||
Ben_Goldberg | r: foreach(gather { take $_ for 1..9; say "D'oh!" }) { say '1'; last } | ||
camelia | rakudo a8ca88: OUTPUT«===SORRY!===Unexpected block in infix position (two terms in a row, or previous statement missing semicolon?)at /tmp/_BTSmwydqe:1------> ther { take $_ for 1..9; say "D'oh!" }) ⏏{ say '1'; last } expecting any of: … | ||
timotimo | no, you want a space after the for | ||
Ben_Goldberg | r: foreach (gather { take $_ for 1..9; say "D'oh!" }) { say '1'; last } | ||
camelia | rakudo a8ca88: OUTPUT«===SORRY!===Unsupported use of 'foreach'; in Perl 6 please use 'for'at /tmp/Yxu8yponBH:1------> foreach⏏ (gather { take $_ for 1..9; say "D'oh!"» | ||
Ben_Goldberg | r: forh (gather { take $_ for 1..9; say "D'oh!" }) { say '1'; last } | ||
camelia | rakudo a8ca88: OUTPUT«===SORRY!===Unexpected block in infix position (two terms in a row, or previous statement missing semicolon?)at /tmp/dpC50LvlDL:1------> ther { take $_ for 1..9; say "D'oh!" }) ⏏{ say '1'; last } expecting any of: … | ||
Ben_Goldberg | r: for (gather { take $_ for 1..9; say "D'oh!" }) { say '1'; last } | ||
camelia | rakudo a8ca88: OUTPUT«D'oh!1» | ||
Ben_Goldberg | My backspace and enter key on my keyboard are two close together :P | 01:07 | |
timotimo | :) | ||
r: sub hacky_first(@list, Mu $test) is rw { gather for @list { return $_ if $_ ~~ $test }; Nil }; say hacky_first(gather { take $_ for 1..9; say "D'oh!" }, 3); | 01:08 | ||
camelia | rakudo a8ca88: OUTPUT«D'oh!3» | ||
timotimo | aaw come on. | ||
r: sub hacky_first(@list, Mu $test) is rw { map @list { return $_ if $_ ~~ $test }; Nil }; say hacky_first(gather { take $_ for 1..9; say "D'oh!" }, 3); | |||
camelia | rakudo a8ca88: OUTPUT«===SORRY!===Unexpected block in infix position (two terms in a row, or previous statement missing semicolon?)at /tmp/jiqUbRtWcM:1------> irst(@list, Mu $test) is rw { map @list ⏏{ return $_ if $_ ~~ $test }; Nil }; say ex… | ||
timotimo | r: sub hacky_first(@list, Mu $test) is rw { map { return $_ if $_ ~~ $test }, @list; Nil }; say hacky_first(gather { take $_ for 1..9; say "D'oh!" }, 3); | ||
camelia | rakudo a8ca88: OUTPUT«D'oh!3» | ||
timotimo | can it really be that hard? | 01:09 | |
r: sub hacky_first(@list, Mu $test) is rw { (grep @list, $test)[0]; Nil }; say hacky_first(gather { take $_ for 1..9; say "D'oh!" }, 3); | |||
camelia | rakudo a8ca88: OUTPUT«D'oh!Nil» | ||
timotimo | r: sub hacky_first(@list, Mu $test) is rw { (grep $test, @list)[0]; Nil }; say hacky_first(gather { take $_ for 1..9; say "D'oh!" }, 3); | ||
camelia | rakudo a8ca88: OUTPUT«Nil» | ||
timotimo | not better :| | ||
Ben_Goldberg | rn: gather { take $_ for 1..9; say "D'oh!" }.grep({ $_ > 3 && last }).say | 01:10 | |
camelia | rakudo a8ca88: OUTPUT«D'oh!» | ||
..niecza v24-88-g1f87209: OUTPUT«» | |||
timotimo | i suppose one will have to work with a traditional loop and get each element in turn. | ||
Ben_Goldberg | At least until 'for' is fixed :) | ||
timotimo | right. | 01:11 | |
i wish i could have done it with a map. | |||
colomon | probably can | ||
timotimo | r: sub hacky_first(@list, Mu $test) is rw { (@list.map({ $_ if $_ ~~ $test})[0] || Nil }; say hacky_first(gather { take $_ for 1..9; say "D'oh!" }, 3); | 01:12 | |
camelia | rakudo a8ca88: OUTPUT«===SORRY!===Unable to parse expression in parenthesized expression; couldn't find final ')'at /tmp/JmqwREZi10:1------> ist.map({ $_ if $_ ~~ $test})[0] || Nil ⏏}; say hacky_first(gather { take $_ for  expecting any of: … | ||
Ben_Goldberg | rn: gather { take $_ for 1..9; say "D'oh!" }.map({ $_ < 5 ? $_ : last }).say | ||
camelia | niecza v24-88-g1f87209: OUTPUT«===SORRY!===Unsupported use of ?: for the conditional operator; in Perl 6 please use ??!! at /tmp/2XYxYon52e line 1:------> _ for 1..9; say "D'oh!" }.map({ $_ < 5 ?⏏ $_ : last }).sayParse failed» | ||
..rakudo a8ca88: OUTPUT«===SORRY!===Unsupported use of ?: for the conditional operator; in Perl 6 please use ??!!at /tmp/ph47yFtj9C:1------> _ for 1..9; say "D'oh!" }.map({ $_ < 5 ?⏏ $_ : last }).say» | |||
timotimo | r: sub hacky_first(@list, Mu $test) is rw { (@list.map({ $_ if $_ ~~ $test}))[0] || Nil }; say hacky_first(gather { take $_ for 1..9; say "D'oh!" }, 3); | ||
camelia | rakudo a8ca88: OUTPUT«3» | ||
Ben_Goldberg | rn: gather { take $_ for 1..9; say "D'oh!" }.map({ $_ < 5 ?? $_ :: last }).say | ||
colomon | well, with grep | ||
timotimo | oh lookie there! | ||
camelia | niecza v24-88-g1f87209: OUTPUT«===SORRY!===Please use !! rather than :: at /tmp/ZYbvmUexwi line 1:------> 1..9; say "D'oh!" }.map({ $_ < 5 ?? $_ ⏏:: last }).sayParse failed» | ||
..rakudo a8ca88: OUTPUT«===SORRY!===Please use !! rather than ::at /tmp/er7vzPaVgl:1------> 1..9; say "D'oh!" }.map({ $_ < 5 ?? $_ ⏏:: last }).say expecting any of: postfix infix stopper infix or meta-infix»… | |||
timotimo | hey | ||
stop the spam :) | |||
Ben_Goldberg | ok | ||
timotimo | i have a working solution | ||
r: sub hacky_first(@list, Mu $test) is rw { (@list.map({ $_ if $_ ~~ $test}))[0] || Nil }; say hacky_first(gather { take $_ for 1..9; say "D'oh!" }, 3); | |||
camelia | rakudo a8ca88: OUTPUT«3» | ||
timotimo | r: sub hacky_first(@list, Mu $test) is rw { (@list.map({ $_ if $_ ~~ $test}))[0] || Nil }; say hacky_first(gather { take $_ for 1..9; say "D'oh!" }, 99); | ||
camelia | rakudo a8ca88: OUTPUT«D'oh!Nil» | ||
timotimo | perfect! | ||
colomon | errr.... | 01:13 | |
Ben_Goldberg | r: sub hacky_first(@list, Mu $test) is rw { (@list.map({ $_ if $_ ~~ $test}))[0] || Nil }; say hacky_first(gather { take $_ for 1..9; say "D'oh!" }, True); | ||
camelia | rakudo a8ca88: OUTPUT«1» | ||
timotimo | although i think i want // instead of || | ||
colomon | What if Any is a value in the list? | ||
timotimo | ah. can fix that, too. | ||
colomon | method first(Mu $test) is rw { | ||
my @values := self.grep($test); | |||
@values ?? @values[0] !! Nil; | |||
} | |||
(have not tried compiling, as I'm in the middle of spectesting.) | |||
01:16
sitaktif joined
|
|||
timotimo | that looks better than mi.e | 01:16 | |
Ben_Goldberg | rn: gather { take $_ for 1..9; say "D'oh!" }.grep({ $_ < 4 })[0].say | 01:18 | |
camelia | rakudo a8ca88, niecza v24-88-g1f87209: OUTPUT«1» | ||
Ben_Goldberg | rn: gather { take $_ for 1..9; say "D'oh!" }.grep({ $_ > 4 })[0].say | ||
camelia | rakudo a8ca88, niecza v24-88-g1f87209: OUTPUT«5» | ||
Ben_Goldberg | rn: gather { take $_ for 1..9; say "D'oh!" }.for({ $_.say }) | 01:20 | |
camelia | niecza v24-88-g1f87209: OUTPUT«123456789D'oh!» | ||
..rakudo a8ca88: OUTPUT«No such method 'for' for invocant of type 'List' in block at /tmp/VyPciQ0twd:1» | |||
Ben_Goldberg blinks. | 01:21 | ||
p: gather { take $_ for 1..9; say "D'oh!" }.for({ $_.say }) | 01:22 | ||
camelia | pugs: OUTPUT«D'oh!*** No such method in class Array: "&for" at /tmp/uCb598ild5 line 1, column 1 - line 2, column 1» | ||
Ben_Goldberg | rn: gather { take $_ for 1..9; say "D'oh!" }.grep({ $_ > 4 })[5].say | 01:25 | |
camelia | niecza v24-88-g1f87209: OUTPUT«D'oh!(Any)» | ||
..rakudo a8ca88: OUTPUT«D'oh!Nil» | |||
Ben_Goldberg | Which is right? Nil or (Any)? | 01:26 | |
Smaller example: | 01:27 | ||
rn: gather { }.[0].say | |||
camelia | niecza v24-88-g1f87209: OUTPUT«(Any)» | ||
..rakudo a8ca88: OUTPUT«Nil» | |||
01:41
ajr_ left,
abnorman left
01:52
colomon left
|
|||
timotimo | locally i now have a lazy (but only if the list is infinite) .keys method, which should make .pairs and .kv lazy | 01:55 | |
02:05
colomon joined
02:14
stevan_ left
02:15
stevan_ joined
|
|||
colomon | rn: my @a; say @a[1] | 02:16 | |
camelia | rakudo a8ca88, niecza v24-88-g1f87209: OUTPUT«(Any)» | ||
colomon | jnthn: your last checkin broke both rakudo builds. This line: nqp::atpos(@posts, $i)(nqp::isnull($resultish, Mu)); in BOOTSTRAP.nqp is the culprit | 02:31 | |
daniel-s | Is it valid BNF to use <something> | { <other> | <things> } | 02:38 | |
That is to say it will either be 1 of <something> or a whole bunch of <other> <things> | 02:39 | ||
perl: say "test" | 02:44 | ||
rn: say "test" | |||
camelia | rakudo a8ca88, niecza v24-88-g1f87209: OUTPUT«test» | ||
daniel-s | rn: say "test\n" | ||
camelia | rakudo a8ca88, niecza v24-88-g1f87209: OUTPUT«test» | ||
colomon | rn: gist.github.com/colomon/6026323 | 02:45 | |
camelia | niecza v24-88-g1f87209: OUTPUT«Potential difficulties: @uniq is declared but not used at /tmp/QJcjtbpLSt line 1:------> my ⏏@uniq = gather for 1..10 {» | ||
..rakudo a8ca88: ( no output ) | |||
colomon | jnthn: golfed fatal error from gather.t: gist.github.com/colomon/6026323 (jvm, works fine in parrakudo) | 02:46 | |
daniel-s: en.wikipedia.org/wiki/Backus%E2%80%93Naur_Form | 02:50 | ||
02:53
fridim__ joined
02:54
census left,
orafu left
02:56
orafu joined
03:02
colomon left
|
|||
JimmyZ | no dalek... | 03:04 | |
03:13
FieldsaBB joined
03:15
aindilis joined
03:45
Ben_Goldberg left
03:49
preflex left,
preflex_ joined,
ChanServ sets mode: +v preflex_
03:50
preflex_ is now known as preflex
04:00
fridim__ left,
FieldsaBB left
|
|||
sorear | o/ | 04:02 | |
JimmyZ | good *, sorear | 04:14 | |
04:26
abnorman joined
04:32
Psyche^ left
04:34
Psyche^ joined
04:36
dayangkun joined,
PacoAir joined,
dayangkun left
04:44
benabik left
04:48
PacoAir left,
birdwindupbird joined
04:55
FieldsaBB joined
05:06
FieldsaBB left
05:25
FROGGS joined
05:26
Khisanth left
05:32
Khisanth joined
05:35
SamuraiJack_ joined
05:36
dayangkun joined
05:39
xilo left
05:46
dayangkun left
|
|||
moritz | \o * | 05:49 | |
sorear | o/ | ||
FROGGS | o/ | 05:53 | |
05:58
dylanwh left
05:59
dylanwh joined
06:04
simcop2387 joined
06:18
PacoAir joined
06:24
cbk left
06:26
daniel-s_ joined
06:30
daniel-s left
06:34
domidumont joined
06:47
domidumont left,
kaleem joined,
domidumont joined
|
|||
tadzik | ha! it's THIS day of the month! | 07:22 | |
FROGGS | compiler release day? | 07:23 | |
tadzik | that's right | ||
the shiny compiler release with an almost-there JVM support | 07:24 | ||
FROGGS | right :o) | 07:30 | |
07:34
snoopy left
|
|||
lizmat | and a broken build :-( | 07:36 | |
does this always happen on compiler release day? | |||
and good *, #perl6! :-) | |||
07:37
abnorman left
|
|||
moritz | \o | 07:37 | |
tadzik | we have a broken build? /o\ | ||
moritz | tadzik: what's the error message? | ||
tadzik | moritz: I don't have a build error | ||
FROGGS | /o\ | 07:38 | |
moritz | tadzik: so how is the build broken, if there's no error? | ||
FROGGS | fix it! quick! | ||
moritz confused | |||
in case of doubt, try reverting 62b50c02e48021cfb1444d1f156711a55e0c8c1a | |||
tadzik | lizmat | and a broken build :-( | 07:39 | |
lizmat: do we have a broken build? :) | |||
lizmat | yes, jnthn's last commit broke things | ||
lizmat is verifying spectest is clean before that | 07:40 | ||
clean before the last commit | 07:48 | ||
moritz: so reverting 62b50c02e48021cfb1444d1f156711a55e0c8c1a is not needed | |||
trying to fix jnthn's commit now (fat chance) | 07:49 | ||
moritz still doesn't know what the problem is | 07:52 | ||
tadzik | '\o maybe Black Mesa... '\o | 07:53 | |
lizmat | missing pirop it seems | 07:54 | |
moritz | No registered operation handler for 'p6inpre' | ||
lizmat | something got added to src/vm/jvm/Perl6/Ops.nqp that should also be added to src/vm/parrot/Perl6/Ops.nqp | ||
adding +$ops.add_hll_pirop_mapping('perl6', 'p6inpre', 'perl6_in_checking_pre', 'v'); does not seem enough :-( | 07:56 | ||
moritz | lizmat: same error? or does it complain about a different op then? | 07:57 | |
FROGGS | well, looks like p6inpre means something else | ||
lizmat | same error | 07:58 | |
checking src/vm/parrot/ops/perl6.ops now | |||
seems to build now | 08:05 | ||
grrr… still same arror | 08:07 | ||
08:09
fgomez left
|
|||
moritz | tadzik: if it blocks the release, simply revert the offending commit, and let jnthn++ sort it out afterwards | 08:10 | |
tadzik | moritz: that's what I shall do | 08:11 | |
moritz: the release is not happening for at least next 9 hours or so | |||
so there's a chance that it'll get fixed by Someone [tm] and we need'nt worry about it at all | |||
lizmat | gist.github.com/lizmat/6027613 (my work on fixing this so far) | 08:14 | |
any idea where I need to "register" p6inpre ? | |||
moritz | lizmat: looks correct to me. Did you remember to 'make install' in nqp? | 08:15 | |
FROGGS | nqp? | 08:16 | |
it is rakudo/src/vm/parrot/Perl6/Ops.nqp | 08:17 | ||
lizmat | trying moritz' suggestion | ||
moritz | oops | 08:18 | |
FROGGS | lizmat: the added pirop looks correct for me too fwiw | ||
lizmat | moritz: still same error | ||
moritz | sadpanda | 08:20 | |
lizmat | could it be I need to add the pirop at the end ? | 08:28 | |
that I messed up all the internal numbering | |||
? | |||
from git blame's history, I would say not :-( | 08:29 | ||
08:30
dakkar joined
|
|||
FROGGS | lizmat: no, the ordering doesnt matter there | 08:32 | |
lizmat | maybe I should just push these changes: if they don't work anywhere, they can be reverted just like jnthn's commit | ||
dalek | kudo/nom: 181517b | (Elizabeth Mattijsen)++ | src/vm/parrot/ (2 files): Attempt to add missing nqp:p6inpre for parakudo. Alas, this doesn't seem to fix the problem ofi d4ffd7c21e7bed97eeeec3502299da0d1276abd4 just yet. Please revert if blocking the compiler release. |
08:34 | |
lizmat | fitness, back around 11Z & | 08:36 | |
08:39
mls joined
08:43
pupoque joined,
iSlug joined,
pupoque left
08:44
pupoque joined
09:15
donaldh joined
09:19
lelf`` joined
09:21
lelf` left
09:26
lelf`` is now known as lelf
|
|||
Ulti | I'm having trouble building rakudols | 09:33 | |
FROGGS | Ulti: rakudols? | 09:34 | |
Ulti | sorry that was ls with mouse focus not moving away ;) | ||
jnthn | morning o/ | ||
FROGGS | hi jnthn | ||
Ulti: yes, there is a bad commit in HEAD atm | |||
Ulti | src/gen/BOOTSTRAP.nqp complains about Operation 'isnull' requires 1 operands in QAST.nqp:2896 | ||
FROGGS: okedoke | 09:35 | ||
jnthn is looking into it | |||
09:36
fhelmberger joined
|
|||
Ulti | 98.82% o___O you guys work too hard | 09:36 | |
FROGGS | moritz: is it just me or is the encâding borken here? irclog.perlgeek.de/perl6/2013-03-14#i_6586765 | 09:38 | |
moritz: and the colors are not stripped/translated correctly: irclog.perlgeek.de/perl6/2013-07-18#i_7340481 | 09:39 | ||
jnthn | Pushed fix to Rakudo build, checked on Parrot and JVM. | 09:45 | |
09:45
Rotwang joined
|
|||
jnthn | Sorry 'bout that. | 09:45 | |
FROGGS | someone should remove your commit bit :P | 09:47 | |
hehe >.< | |||
jnthn | yeah! | ||
jnthn should probably do some $dayjob bits, but is looking at the donaldh++ patch instead | 09:51 | ||
dalek | kudo/nom: 3ad8810 | jnthn++ | src/Perl6/ModuleLoader.nqp: Fix 'use DoesNotExist' error generation. Reported and golfed by donaldh++. |
09:54 | |
donaldh | jnthn++ | 09:55 | |
I was staring at that bit of code. I haven't grasped the difference between rakudo and nqp types yet. | 09:57 | ||
Term::ANSIColor works on rakudo jvm by the way | 09:59 | ||
10:02
lelf` joined,
lelf left
|
|||
donaldh | jnthn: We definitely need to rework the setting and module load paths | 10:03 | |
jnthn | donaldh: I can't figure out where it's put the runner it installs... | ||
donaldh: Seems that it has put things in install/ instead of install-jvm/ too... | 10:04 | ||
donaldh | jnthn: To separate JVM loading concerns (classpath) from runtime loading concerns | ||
oh. That's the default in ConfigureJVM.pl | |||
I didn't change that | |||
jnthn | ah... | ||
donaldh | install/bin/perl6 | ||
10:05
lelf`` joined
|
|||
jnthn | aha! | 10:05 | |
Well, it creates a perl6.bat there that runs it under Windows :) | |||
So seems like progress | 10:06 | ||
donaldh | wheee | ||
10:06
lelf` left
10:07
daxim joined
|
|||
dalek | kudo/nom: 965beb5 | (Donald Hunter)++ | / (4 files): Added an install target for JVM. |
10:08 | |
kudo/nom: a1cdd7f | jnthn++ | / (4 files): Merge branch 'jvm-install-target' of git://github.com/donaldh/rakudo into nom |
|||
jnthn | donaldh: Agree things need further cleanup, but this so far is a decided improvement on "no working make install" :) | ||
donaldh | When PERL6LIB is used to configure @*INC, it clobbers the load path defined by the runner. So I'd like to use java properties for the setting path and the module home. | 10:09 | |
jnthn | Makes sense. | ||
donaldh | Also, I'm guessing that the sysytem specified module path, i.e. by the runner, should always be the fallback, even when PERL6LIB is used? | 10:10 | |
jnthn | I think PERL6LIB is meant to augment, yeah | 10:11 | |
donaldh | certainly, that's how Perl 5 behaves :-) | ||
jnthn | Anyways, this is very nice to have in time for today's release :) | 10:12 | |
donaldh | I plan to refactor the nqp install too, but people rely on it's current layout. | ||
jnthn | > 98% of tests *and* a make install :) | ||
*nod* | |||
donaldh | What's the best way to handle the transition. | ||
jnthn | Well, a --gen-nqp could be good too... | ||
donaldh | True | ||
And use install-jvm as the PREFIX for both? | 10:13 | ||
jnthn | Best way? Perhaps do it in a branch first, write up how it's changing, etc. | ||
donaldh | Yep, okay. | ||
jnthn | install-jvm is nice in so far as it lets you have a Parrot and JVM install side by side. | ||
Without having to tweak :) | 10:14 | ||
But maybe that's optimizing for the wrong use case :) | |||
donaldh | heh. | 10:15 | |
Shall we change the install target to install-jvm before anyone uses it :-) | 10:17 | ||
*default* | |||
10:20
lelf`` is now known as lelf
10:23
pupoque left
|
|||
timotimo | i'm going to add lazy .kv, .first and .pairs to list for the release, too, including tests | 10:27 | |
just gimme a few minutes :) | |||
timotimo.gimme(:minutes(*)) | 10:28 | ||
i thought the compiler release would happen the day after tomorrow, so i had high hopes of including the nodal branch in there, but it may be a bit tight :( | |||
10:29
salv0 left
|
|||
donaldh | github.com/rakudo/rakudo/pull/182 | 10:29 | |
jnthn | timotimo: I think we should do that in the aug relesae | 10:30 | |
timotimo: Large changes just before the release are not so good | |||
timotimo | you're right and i am sad ;) | 10:31 | |
jnthn | timotimo: Especially when they could have ecosystem fallout ;) | ||
;) | |||
10:33
colomon joined
10:34
crab2313 joined,
pupoque joined
|
|||
timotimo | wow, the tests for lazy lists are really not thorough | 10:36 | |
unless in S02-types/lazy-lists.t i'm looking at the wrong file | |||
jnthn | Clearly, they're going to be written as they are needed... | ||
timotimo | is that the right place for '(gather { take $_ for 1..9; say "D'oh!" }).first(3) does not say "D'oh!"'? | 10:37 | |
jnthn | timotimo: Maybe there or in gather.t...I suspect many aspects of laziness get tested by the features that rely on it. | 10:40 | |
timotimo | mhm | 10:42 | |
is it kinda-known that for tends to gobble up lists eagerly? | |||
jnthn | yeah | ||
moritz | kinda-known, yes | ||
jnthn | And on Pm's todo list, but Pm tuits are rare at the moment | ||
timotimo | good to know | 10:43 | |
workarounds in the setting are acceptable to make a few methods behave lazily properly? | |||
10:43
crab2313 left
|
|||
hoelzro | are all of the submatches in Perl6::Grammar's patterns available in Actions.pm via $/? | 10:44 | |
I'd like to find out exactly what string <sym> matches | |||
timotimo | should be, yeah | ||
hoelzro | hmm | ||
timotimo | should even give you submatches many many levels down | ||
hoelzro | I tried adding nqp::say($/<sym>), but no dice | ||
timotimo | you want $<sym> instead, no? | ||
hoelzro | maybe? | ||
hoelzro tries | |||
moritz | those two are the same, really | 10:45 | |
jnthn | timotimo: Depends...probably best not to pile up a load of workarounds... | ||
jnthn needs to do $dayjob stuff for a bit | |||
timotimo | perhaps it's a list of matches in that case? | 10:46 | |
hoelzro | does .WHAT work in nqp-land? | ||
timotimo | not in the way you want it to, i think | 10:47 | |
10:49
FROGGS left
|
|||
hoelzro | curses | 10:49 | |
jnthn | $obj.HOW.name($obj) may help | 10:54 | |
hoelzro | ah, I'll try that next! | 10:55 | |
timotimo | when going to sleep last night, i was thinking about nagare, the continuation passing style web framework built upon stackless python | 10:56 | |
could running gather/takes be serialised away and later thawed and continued? | |||
iiuc that's at the base of nagare, in their case it's having stackless python green threads block on channels so that they can be pickled to disk or database and then later restoring them | 10:57 | ||
11:00
pupoque left
11:02
FROGGS joined
|
|||
moritz | I think serializing gather/takes isn't easy | 11:09 | |
colomon | OMG, we haven't closed down perl6 language mailing list yet? | 11:12 | |
timotimo | OK, case closed for now then :) | ||
it seems a bad idea to replace list's "keys" method from (0..self.end).list with (0, 1 ... { !self.exists($^idx) }) in the general case, should i guard it with .definite or something? | 11:14 | ||
11:14
rindolf joined,
pupoque joined
|
|||
timotimo | maybe i could build something like (0..self.end-of-reified-part) concatenated with (end-of-reified-part, * + 1 ... { !self.exists($^idx) }) | 11:16 | |
"significant subsets of the set specification" *snrk* :) | 11:17 | ||
colomon | moritz++ is more polite than I would have been | 11:18 | |
11:18
pupoque left
11:19
rindolf left
|
|||
tadzik | I hate to have to do this folks, but can someone take over the release today from me? | 11:20 | |
I'm having a surprise trip to Oslo | |||
moritz | I can try | 11:21 | |
worst case: it happens tomorrow | |||
tadzik | that'd be awesome. I can't guarantee any time from me in the next 7 days, basically | ||
FROGGS | tadzik: how comes you are going to oslo? | ||
tadzik | FROGGS: I'll tell you, but that involves a lot of swear words and probably an NDA violation | 11:22 | |
moritz fears the worst for tadzik | |||
tadzik | long story short, the company's sending me | ||
timotimo | i wish you a good time nevertheless! | 11:23 | |
tadzik | I'll try to get some :) | ||
timotimo | sad to see you and your piano torn apart so quickly again :( | ||
tadzik | yeah | ||
the current record is two days in a row | |||
moritz | united or divided? | 11:24 | |
tadzik | united | ||
nwc10 | tadzik: do oslo.pm know yet? :-) | 11:28 | |
I'm sure they can take you out for an evening to let off steam. | |||
lizmat seems to recall merlyn going there soonish as well | |||
or was that London.pm only? | 11:29 | ||
tadzik | nwc10: I'm not sure I'll have a free evening :) | 11:30 | |
moritz | I recall something about merlyn traveling the Norwegian coast | ||
nwc10 | tadzik: that on its own sounds like a reason for swearing :-( | ||
jnthn | hugme: hug tadzik | 11:35 | |
hugme hugs tadzik | |||
moritz wonders if hugme should randomly ask "why don't you hug tadzik yourself? are you shy?" | 11:36 | ||
11:38
iSlug left
|
|||
donaldh is reminded of a cartoon of Wally sitting drunk in a bar, saying 'Nobody asks how's Wally?' | 11:38 | ||
timotimo saw that one | |||
11:39
iSlug joined
11:41
census joined
|
|||
timotimo | gist.github.com/anonymous/a9bf644318b068262734 - pls2apply; it passes all the spectests | 11:44 | |
11:46
pupoque joined
|
|||
dalek | kudo/nom: 56fad03 | (Timo Paulssen)++ | src/core/Any.pm: lazy implementation of List.first. colomon++ Signed-off-by: Moritz Lenz [email@hidden.address] |
11:58 | |
timotimo | now it went through 3 people! :D | ||
Ulti | wait if you guys want a hug bot I made an automatic one in perl6 ;) | 12:00 | |
12:01
kaleem left,
lelf left
|
|||
Ulti | github.com/MattOates/Text--Emotion...ter/emobot well it could be hacked to tell hugme to give someone a hug anyway | 12:01 | |
12:03
amkrankruleuen left,
stevan_ left
12:07
kaleem joined,
stevan_ joined
12:09
amkrankruleuen joined,
amkrankruleuen left,
amkrankruleuen joined
12:22
konundra left
|
|||
GlitchMr | prn: my $x = 42; $x = ++$x + $x++; say $x | 12:29 | |
camelia | rakudo 56fad0, pugs: OUTPUT«86» | ||
..niecza v24-88-g1f87209: OUTPUT«87» | |||
GlitchMr | Sounds like undefined behavior without warning or anything. | 12:30 | |
prn: my $x = 42; $x = $x++ + ++$x; say $x | |||
camelia | rakudo 56fad0, niecza v24-88-g1f87209, pugs: OUTPUT«86» | ||
12:31
benabik joined
|
|||
FROGGS | I think niecza is right | 12:33 | |
GlitchMr | Yeah, I think that too. | ||
FROGGS | this would agree with Perl 5 fwiw | ||
GlitchMr | But, wasn't ++ undefined in Perl? | 12:34 | |
FROGGS | how can it be undefined? | ||
prn: my $x = 42; $x = $x++-++$x; say $x # sad that infix + isnt working here | 12:36 | ||
camelia | rakudo 56fad0, niecza v24-88-g1f87209, pugs: OUTPUT«-2» | ||
12:36
rindolf joined
|
|||
FROGGS | now that is weird: | 12:37 | |
perl -E 'my $x = 42; $x = ++$x + ++$x; say $x' | |||
88 | |||
rnp: my $x = 42; $x = ++$x + ++$x; say $x | |||
camelia | niecza v24-88-g1f87209: OUTPUT«88» | ||
..rakudo 56fad0, pugs: OUTPUT«87» | |||
12:37
skids left
|
|||
FROGGS | well, okay, I understand how that works | 12:38 | |
12:39
census left
12:40
benabik left
|
|||
GlitchMr | FROGGS: perldoc.perl.org/perlop.html#Auto-i...-decrement | 12:40 | |
FROGGS | ahh, k, thanks | 12:42 | |
12:42
benabik joined
|
|||
Ulti | print ++($foo = "zz"); # prints "aaa" <--- wat | 12:44 | |
GlitchMr | Ulti: everything is fine. | ||
This is a feature. | |||
Ulti | I had no idea the ++ operator in Perl5 even had that behaviour | 12:45 | |
:3 | |||
GlitchMr | In Perl 5, it was broken, but yes. | ||
Broken, as in, sometimes it does work, sometimes not. | |||
Ulti | if you do ++ on any punctuation you get 1 too | 12:46 | |
GlitchMr | glitchmr@feather ~> perl -E 'my $foo = "zz"; say ++$foo; my $bar = "zz"; $bar + 0; say ++$bar' | ||
aaa | |||
1 | |||
Yeah, $bar + 0 causes the feature to break. | 12:47 | ||
12:47
mls left
|
|||
Ulti | I'd love to know what modules on CPAN rely on that :) | 12:48 | |
GlitchMr | JSON | 12:49 | |
Ulti | really?! | 12:50 | |
GlitchMr | glitchmr@feather ~> perl -MJSON -E'my $foo = 0; say encode_json [$foo]; $foo . ""; say encode_json [$foo]' | ||
[0] | |||
["0"] | |||
Well, actually JSON accesses Perl internals | |||
But still | |||
12:51
colomon left
|
|||
GlitchMr | Also, bitwise operators. | 12:51 | |
12:51
rindolf left
12:52
colomon joined
|
|||
GlitchMr | This only applies to Perl 5. Perl 6 doesn't have such strange behavior anywhere. | 12:52 | |
colomon | GlitchMr: huh? that's not a bug. when you say $bar + 0, $bar gets a numeric value (for the addition). and ++ prefers the numeric value over the string value. That's basic perl 5 | ||
GlitchMr | colomon: of course it's not a bug. | 12:53 | |
But it's still strange. | |||
(then again, that depends on the meaning of "bug") | |||
Still, it's better to not depend on such behavior, and use += 0, or something instead (so it would be noticeable that variable was modified). | 12:55 | ||
Ulti | there are plenty of other oddball things in Perl5 its just I had no idea ++ would act that way on strings, mostly the overflow is really unexpected (by me) | 12:57 | |
FROGGS | and it is unexpected to me because I never use such things | 12:58 | |
12:59
sqirrel joined
|
|||
GlitchMr | Spreadsheets do it that way. | 12:59 | |
After Z, you have AA. | |||
Ulti | also I'd sort of expect zz to maybe go to AA rather than wrap to aa | ||
GlitchMr | Nothing strange. | ||
Ulti | apart from its case sensitive and why would I expect it acts like a spreadsheet rather than the ordinal value of each character increase by one so 'zz' going to '{{' | 13:01 | |
though how it does work is a lot more useful | |||
GlitchMr | After 'yz' you have 'za'. | ||
hoelzro | apparently $/ does not contain a 'sym' key =( | ||
GlitchMr | You probably wouldn't want 'y{' or something. | 13:02 | |
hoelzro | (when processing a regex decl) | ||
GlitchMr | rnp: say "{'yz'.succ} {'zz'.succ}" | ||
camelia | pugs: OUTPUT«*** No such method in class Str: "&succ" at /tmp/5meqTynwHH line 1, column 7-16» | ||
..rakudo 56fad0, niecza v24-88-g1f87209: OUTPUT«za aaa» | |||
GlitchMr | (I through that pugs has .succ... looks like I was wrong, not that it matters) | 13:03 | |
13:06
konundra joined
13:08
kaleem_ joined,
kaleem left
|
|||
FROGGS | hoelzro: it does usually | 13:09 | |
[Coke] | p: say 3.succ | 13:14 | |
camelia | pugs: OUTPUT«*** No such method in class Int: "&succ" at /tmp/asBV_Cm6l8 line 1, column 5 - line 2, column 1» | ||
13:15
[particle]1 joined
13:16
[particle] left
|
|||
hoelzro | make $<...>.ast grabs the current AST and designates it as the result of the given action, right? | 13:17 | |
am I understanding this correctly? | |||
13:19
bluescreen10 joined
|
|||
FROGGS | nr: grammar Test { proto token TOP {*}; token TOP:sym<bla> { <sym> } }; say Test.parse("bla") | 13:20 | |
camelia | niecza v24-88-g1f87209: OUTPUT«「bla」» | ||
..rakudo 56fad0: OUTPUT«「bla」 sym => 「bla」» | |||
FROGGS | hoelzro: right | 13:21 | |
13:22
kaare__ joined,
kaare__ is now known as kaare_
13:27
rindolf joined
|
|||
hoelzro | ok, found it | 13:31 | |
$*METHODTYPE | |||
13:36
rindolf left
13:41
ecocode joined
13:43
ajr joined,
ajr is now known as Guest47219
13:44
Guest47219 is now known as ajr_,
notjack joined
13:46
xilo joined
13:58
xilo left
|
|||
JimmyZ | rnp: my $x = 42; $x = ++$x + ++$x; say $x # known bug? | 13:59 | |
camelia | niecza v24-88-g1f87209: OUTPUT«88» | ||
..rakudo 56fad0, pugs: OUTPUT«87» | |||
13:59
lelf joined
|
|||
FROGGS | JimmyZ: might be no bug at all | 14:01 | |
JimmyZ | why? | ||
notjack | I think niecza has it right, and rakudo wrong | 14:02 | |
both ++s should happen before the sum | |||
FROGGS | is it specced how it should behave when having two incr/decr in the same statement? | ||
14:02
skids joined,
colomon left
|
|||
FROGGS | Perl 5 says the result is undefined, dunno what our specs say | 14:02 | |
notjack: the ++'s are happending before the sum | 14:03 | ||
JimmyZ | how could niecza be 88? | ||
14:03
[particle]1 is now known as [particle]
|
|||
FROGGS | JimmyZ: think of $x as references | 14:03 | |
a *reference | |||
gfldex | i'm failing to build rakudo: Error: Could not find or load main class perl6 | 14:04 | |
JimmyZ can't image | |||
gfldex | any leads? | ||
14:04
colomon joined
|
|||
FROGGS | it does: ++42, then the right side is 43, it does ++ on it then $x is 44, then it does 44 + 44 | 14:05 | |
timotimo | gfldex: did you run the configuration step very recently? | ||
FROGGS | and rakudo treats it a bit like values, so it is 43 when incrementing it on the right side, and then it does 43 + 44 | 14:06 | |
JimmyZ | FROGGS: that's crazy | ||
gfldex | i did rm -r rakudo, so yes | ||
timotimo | hm, okay | ||
FROGGS | JimmyZ: that's why it is undefined in Perl 5 :o) | ||
14:06
rindolf joined
|
|||
notjack | FROGGS: yes, it is, and I think that's correct | 14:06 | |
timotimo | i'll try to build it here | ||
[Coke] | "why would you expect code like that to do anything sane" | ||
14:06
xilo joined
|
|||
FROGGS | "why would one expect my code to do anything sane" | 14:07 | |
JimmyZ | that's not DWIMish | ||
FROGGS | :D | ||
14:07
pupoque left
|
|||
timotimo | gfldex: did you make install, too? | 14:07 | |
gfldex | i believe so, will test | 14:08 | |
JimmyZ | TimToady: ^^ | ||
FROGGS | niecza feels a bit more right IMO | ||
gfldex | timotimo: didn't change anything | ||
timotimo | huh. i'm building it now, going to see what's going on | ||
JimmyZ | rnp: my int $x = 42; $x = ++$x + ++$x; say $x | 14:09 | |
camelia | niecza v24-88-g1f87209: OUTPUT«===SORRY!===Malformed my at /tmp/ImME6dE_dw line 1:------> my⏏ int $x = 42; $x = ++$x + ++$x; say $xParse failed» | ||
..pugs: OUTPUT«87» | |||
..rakudo 56fad0: OUTPUT«Cannot modify an immutable value in sub prefix:<++> at src/gen/CORE.setting:3617 in sub prefix:<++> at src/gen/CORE.setting:2065 in block at /tmp/mcXFD6idSN:1» | |||
timotimo | JimmyZ: ++ is NYI for native integers ;_; | ||
JimmyZ | pugs: ... | ||
camelia | pugs: OUTPUT«*** Cannot use this control structure outside a 'routine' structure at /tmp/VZBUUaBAoO line 1, column 1 - line 2, column 1» | ||
14:10
rindolf left
|
|||
JimmyZ | FROGGS: if you use 'my int $x = 42', you won't think niecza is right | 14:10 | |
timotimo | gfldex: cannot reproduce; what are your exact steps? | ||
and checked out version of nqp and rakudo? JVM version? | 14:11 | ||
oh | |||
FROGGS | JimmyZ: I dont get the connection | ||
timotimo | more importantly: what binary are you using? install-jvm/bin/perl6? | ||
gfldex | timotimo: solved, i have a bad symlink somewhere in $PATH | ||
timotimo | ah! that's annoying! :) | ||
JimmyZ | FROGGS: native int is not reference | 14:12 | |
gfldex | well, i think | ||
FROGGS | JimmyZ: hmmm, okay | ||
as long as I can do that I'm happy: if --$x && do-something($x) { | 14:13 | ||
notjack | perl6: say 5 if 4>3 if 2>1; | 14:14 | |
camelia | rakudo 56fad0: OUTPUT«===SORRY!===Confusedat /tmp/37QRlgTtuu:1------> say 5 if 4>3 ⏏if 2>1; expecting any of: postfix» | ||
..niecza v24-88-g1f87209: OUTPUT«===SORRY!===Two terms in a row at /tmp/WJ1WkeyRzk line 1:------> say 5 if 4>3 ⏏if 2>1;Parse failed» | |||
JimmyZ is waiting for someone to fix assign op in MoarVM :) | |||
FROGGS | whoever does ++$x + $x++ has other major problems I suppose | ||
gfldex | odd, somehow the jakudo perl6 script file (the one that tells java what class to load) ended up in /usr/local/bin/ | ||
notjack | perl6: say 5 if 4>3; | ||
camelia | rakudo 56fad0, niecza v24-88-g1f87209: OUTPUT«5» | ||
timotimo | gfldex: how did that happen? on my end, nothing in the output of make install seems to point at something like that | 14:15 | |
FROGGS | perl6: say 5 if 4>3 for 2>1 | ||
camelia | rakudo 56fad0, niecza v24-88-g1f87209: OUTPUT«5» | ||
gfldex | i tried jakudo two days before and i may have cp where i should have ln | ||
timotimo | may be, yeah | 14:18 | |
timotimo is looking forward to the naysayers downplaying the success of getting rakudo onto the jvm so far. | |||
notjack | perl6: say 5 for 4>3 for 3>2; | 14:19 | |
camelia | rakudo 56fad0: OUTPUT«===SORRY!===Confusedat /tmp/LB0XPKGUGA:1------> say 5 for 4>3 ⏏for 3>2; expecting any of: postfix» | ||
..niecza v24-88-g1f87209: OUTPUT«===SORRY!===Two terms in a row at /tmp/BHNLWL5ryS line 1:------> say 5 for 4>3 ⏏for 3>2;Parse failed» | |||
notjack | damn you perl6, I want confusingly nested postfix conditionals and I want them now | ||
timotimo | r: (say 5 if 4 > 3) if 5 > 4 | ||
camelia | rakudo 56fad0: OUTPUT«5» | ||
timotimo | newline.rakudo.jvm: 2 todo tests unexpectedly succeeded | 14:20 | |
notjack | say 2>1 ?? 4>3 ?? 5; | ||
nr: say 2>1 ?? 4>3 ?? 5; | 14:21 | ||
camelia | niecza v24-88-g1f87209: OUTPUT«===SORRY!===Found ?? but no !! at /tmp/xakC0EE4qk line 1:------> say 2>1 ?? 4>3 ?? 5⏏;Confused at /tmp/xakC0EE4qk line 1:------> say 2>1 ?? 4>3 ?? 5⏏;Parse failed» | ||
..rakudo 56fad0: OUTPUT«===SORRY!===Found ?? but no !!at /tmp/ZxPrqb0kRX:1------> say 2>1 ?? 4>3 ?? 5⏏;Confusedat /tmp/ZxPrqb0kRX:1------> say 2>1 ?? 4>3 ?? 5⏏; expecting any of: postfix» | |||
notjack | nr: say 2>1 ?? 4>3 ?? 5 !! 'boo' !! 'hoo'; | ||
camelia | rakudo 56fad0, niecza v24-88-g1f87209: OUTPUT«5» | ||
timotimo | i shall unfudge. | ||
14:23
pupoque joined
|
|||
jnthn | timotimo: (unfudge) be wary, they may be bogus...there are two fails there too :) | 14:25 | |
timotimo | oh, hm. | 14:27 | |
probably are, yeah | |||
14:32
colomon left
14:33
kingbeast joined
|
|||
[Coke] | r: say 25922 / 26184 | 14:39 | |
camelia | rakudo 56fad0: OUTPUT«0.989994» | ||
jnthn | [Coke]: Is that the current standing? | 14:40 | |
[Coke] | r: say 25923 / 26184 | ||
camelia | rakudo 56fad0: OUTPUT«0.990032» | ||
[Coke] | jnthn: just did a run, aye. | ||
the first one. the second is where you want to be before the release. ;) | |||
jnthn | argh, off by one test! :P | ||
[Coke] | that might be accomplished by judicious fudging of aborting tests. | ||
timotimo | there's a test in sink that succeeds on jvm and is todo on parrot | 14:41 | |
regarding nested temps | |||
or rather recursive temps | 14:42 | ||
donaldh | Just looking at resurrecting CUSTOM_LIB on JVM. It's needed by panda | ||
timotimo | not in sink. in S04-blocks-and-statements/temp.t | ||
[Coke] | jnthn: might also be able to unskip some tests, not sure what you've fixed. | ||
donaldh | It's prefix is $VM<config><libdir> on parrot. Is that install-jvm/languages/perl6/lib for us? | 14:43 | |
s/us/jvm/ | |||
14:44
colomon joined
14:56
robinsmidsrod left,
robinsmidsrod joined
15:09
fhelmberger left
|
|||
notjack | I'm trying to use Padre as a p6 IDE. | 15:09 | |
15:09
cognominal left
|
|||
notjack | When I set View Document As>Perl 6 and hit "run", I get "no execution mode defined for ... perl6" | 15:10 | |
but I can't seem to find anywhere where I an associate execution modes with interpreters | |||
or anything to that effect | |||
ideas? | |||
moritz | maybe ask in #padre? | 15:11 | |
notjack | yeah, just /j'd there | ||
15:22
bluescreen100 joined
15:26
bluescreen10 left
|
|||
timotimo | do "unexpectedly passing TODO" tests count towards the number of passed tests in the summary? | 15:30 | |
moritz would hope so, since they passed | 15:31 | ||
timotimo | hm, i was going to write one or two tests for lazy .first, probably also lazy .grep and .map. maybe that'll get us above 90% ;) | ||
are gather/take using tests acceptable in S02-types/lazy-list.t? | 15:32 | ||
i think they would be, but what do i know? | |||
jnthn is taking a break from $dayjob to see if he can get us a couple more... | |||
15:40
Rotwang left
|
|||
timotimo | oh! | 15:40 | |
the lazy-list test file isn't even in spectest.data and also doesn't run correctly. | 15:41 | ||
r: say (1..Inf).shift | |||
camelia | rakudo 56fad0: OUTPUT«No such method 'shift' for invocant of type 'Range' in block at /tmp/W0gLwtJtn6:1» | ||
timotimo | this is a wrong test, yes? | ||
dalek | kudo/nom: 98911a5 | moritz++ | docs/ChangeLog: update changelog |
15:42 | |
moritz | timotimo: yes | ||
15:42
lelf` joined
|
|||
moritz | if you think I missed interesting stuff in the changelog, please tell me | 15:42 | |
timotimo | r: my @a = 1, 2, 3; @a[1].delete # this should be :delete, yes? | 15:43 | |
camelia | rakudo 56fad0: OUTPUT«No such method 'delete' for invocant of type 'Int' in block at /tmp/fLAgrR7JeJ:1» | ||
timotimo | r: my @a = 1, 2, 3; @a[1]:delete | ||
camelia | rakudo 56fad0: ( no output ) | ||
timotimo | r: my @a = 1, 2, 3; @a[1]:delete; say @a; | ||
camelia | rakudo 56fad0: OUTPUT«1 2 3» | ||
timotimo | hum, apparently not. | ||
notjack | r: say (1,2,3).delete(1); | 15:45 | |
camelia | rakudo 56fad0: OUTPUT«No such method 'delete' for invocant of type 'Parcel' in block at /tmp/foOU1FiT5L:1» | ||
timotimo | wow, this test assigns 1000000 elements to a list and that's supposed to work? is list assignment supposed to be lazy!? | ||
maybe with binding it could be | |||
15:46
lelf left
|
|||
timotimo | my @a = 1, 2, 3; @a.delete(1); say @a; | 15:46 | |
r: my @a = 1, 2, 3; @a.delete(1); say @a; | |||
camelia | rakudo 56fad0: OUTPUT«1 Nil 3» | ||
timotimo | ah, so that's how it works now. | ||
r: my @a := 1..*; @a.delete(1); say @a[^5]; | 15:47 | ||
camelia | rakudo 56fad0: OUTPUT«No such method 'delete' for invocant of type 'Range' in block at /tmp/m0_6wxbRX8:1» | ||
timotimo | r: my @a := 1...*; @a.delete(1); say @a[^5]; | ||
camelia | rakudo 56fad0: OUTPUT«No such method 'delete' for invocant of type 'List' in block at /tmp/XnQPIbtgZU:1» | ||
timotimo | hum. only for arrays then? | ||
r: say (1..Inf).pop; | |||
camelia | rakudo 56fad0: OUTPUT«No such method 'pop' for invocant of type 'Range' in block at /tmp/MVm1b7VJux:1» | ||
timotimo | r: say (1...Inf).pop; | ||
camelia | rakudo 56fad0: OUTPUT«Cannot .pop from an infinite list in method gist at src/gen/CORE.setting:10542 in method gist at src/gen/CORE.setting:915 in sub say at src/gen/CORE.setting:11436 in block at /tmp/egZ3cGFope:1» | ||
timotimo | r: say (1..Inf).list.pop; | 15:48 | |
camelia | rakudo 56fad0: OUTPUT«Cannot .pop from an infinite list in method gist at src/gen/CORE.setting:10542 in method gist at src/gen/CORE.setting:915 in sub say at src/gen/CORE.setting:11436 in block at /tmp/5SULvQkrSL:1» | ||
timotimo | i wonder why i don't get that error here. | ||
notjack | r: say (1..Inf).push(1); | ||
camelia | rakudo 56fad0: OUTPUT«Cannot call 'push'; none of these signatures match::(Any:U \SELF: *@values, Mu *%_) in method push at src/gen/CORE.setting:1475 in block at /tmp/Fi0rOyI_4G:1» | ||
colomon | r: say (1..10).pop | ||
camelia | rakudo 56fad0: OUTPUT«No such method 'pop' for invocant of type 'Range' in block at /tmp/rXdci0rAO0:1» | ||
colomon | r: say (1..10).list.pop | ||
camelia | rakudo 56fad0: OUTPUT«10» | ||
15:50
nebuchadnezzar left,
nebuchadnezzar joined,
ecocode left
15:52
domidumont left
|
|||
notjack | r: say (1,(2,3,(4,5)))[1].WHAT; | 15:53 | |
camelia | rakudo 56fad0: OUTPUT«(Int)» | ||
notjack | r: say (1,(2,3,(4,5))).WHAT; | ||
camelia | rakudo 56fad0: OUTPUT«(Parcel)» | ||
notjack | shouldn't [1] be List (or something List-y)? | ||
dalek | ast: 51ebe45 | (Timo Paulssen)++ | S02-types/lazy-lists.t: lazy-lists.t updated, new tests: first, grep, X, Z |
||
timotimo | this test file needs to be included in spectest.data now if you want to run it | ||
notjack | oh, I see, (Int) means list-of-Int | 15:54 | |
timotimo | no, it doesn't | ||
it means "undefined value of type Int" | |||
notjack | I'd expect (1,(2,3,(4,5)))[1] to be (2,3,(4,5)) and so .WHAT would say List, one way or another | 15:55 | |
TimToady | me too | ||
timotimo | parcels flatten, don't they? | ||
TimToady | oh, wait, rakudo flattens parcels | 15:56 | |
timotimo | r: say (1, (2, 3, (4, 5) ) )[1] | ||
camelia | rakudo 56fad0: OUTPUT«2» | ||
timotimo | r: say (1, (2, 3, (4, 5) ) )[2] | ||
camelia | rakudo 56fad0: OUTPUT«3» | ||
timotimo | r: say (1, (2, 3, (4, 5) ) )[3] | ||
camelia | rakudo 56fad0: OUTPUT«4» | ||
timotimo | r: say (1, (2, 3, (4, 5) ) ).tree[1] | ||
camelia | rakudo 56fad0: OUTPUT«2 3 4 5» | ||
notjack | that doesn't make sense to me | ||
timotimo | r: say (1, (2, 3, (4, 5) ) ).tree[1].perl | ||
camelia | rakudo 56fad0: OUTPUT«$(2, 3, (4, 5))» | ||
jnthn | Parcels are flattened lazily | ||
timotimo is just an innocent bystander | |||
TimToady | I think we defined some other method for pulling raw args out of a parcel by position | ||
jnthn | Depending on context | ||
And subscripting is a context that flattens | |||
notjack | hmm | 15:57 | |
timotimo | r: say (1, (2, 3, (4, 5) ) ).flattens | ||
camelia | rakudo 56fad0: OUTPUT«No such method 'flattens' for invocant of type 'Parcel' in block at /tmp/cBAZXlNZVO:1» | ||
timotimo | mhm | ||
notjack | r: say (1,2,(:a<b>,(foo=>bar, hex=>sept),99))[1]; | 15:58 | |
camelia | rakudo 56fad0: OUTPUT«===SORRY!===Undeclared routines: bar used at line 1. Did you mean '&bag'? sept used at line 1. Did you mean '&set'?» | ||
notjack | r: say (1,2,(:a<b>,('foo'=>'bar', 'hex'=>'sept'),99))[1]; | ||
camelia | rakudo 56fad0: OUTPUT«2» | ||
notjack | r: say (1,2,(:a<b>,('foo'=>'bar', 'hex'=>'sept'),99))[2]; | ||
camelia | rakudo 56fad0: OUTPUT«"a" => "b"» | ||
notjack | weird | ||
15:59
pmichaud joined
|
|||
timotimo | weird how? | 15:59 | |
that seems somewhat expected given the knowledge that parcels flatten | |||
notjack | yes; it's the flattening I find weird | ||
TimToady | r: say (1,(2,3,(4,5))).arg(1) | ||
camelia | rakudo 56fad0: OUTPUT«No such method 'arg' for invocant of type 'Parcel' in block at /tmp/nNmeFb80R9:1» | ||
TimToady | NYI I guess | ||
notjack | I mean, it kinda-sorta makes sense for homogeneous lists | ||
TimToady | S07:69 | ||
synopsebot | Link: perlcabal.org/syn/S07.html#line_69 | ||
pmichaud | Parcels flatten in flattening contexts. | ||
notjack | but lists with complex, intricate structure... | ||
weird to flatten them | 16:00 | ||
TimToady | a parcel isn't a list yet | ||
pmichaud suspects he needs to read backscroll | |||
notjack | but it quacks like a list | ||
diakopter | pmichaud: heh.. but how far back... ;) | ||
notjack | r: my List ducky=(1,2,(:a<b>,('foo'=>'bar', 'hex'=>'sept'),99)); say @ducky[2]; | 16:01 | |
camelia | rakudo 56fad0: OUTPUT«===SORRY!===Type 'List' is not declaredat /tmp/MwTnJ_gVAE:1------> my List ⏏ducky=(1,2,(:a<b>,('foo'=>'bar', 'hex'=>Malformed myat /tmp/MwTnJ_gVAE:1------> my List ⏏ducky=(1,2,(:a<b>,('foo'=>'bar', 'hex'=>[… | ||
timotimo | moritz: if you're desparate for changelog entries, you can mention my pod6 parsing improvements - not that many people seem to be using the formatting codes anyway :P | 16:02 | |
afk& | |||
notjack | I always forget my sigils | ||
jnthn | o/ pmichaud :) | 16:03 | |
16:03
kaleem_ left
|
|||
pmichaud | o/ jnthn | 16:03 | |
jnthn++ # excellent interview articles | 16:04 | ||
jnthn | :) | ||
FROGGS | hi pmichaud | ||
16:05
rindolf joined
|
|||
colomon | pmichaud! \o/ | 16:05 | |
16:06
domidumont joined
|
|||
jnthn | Got a parametric role type-checking fix that should win at least a couple of tests. | 16:11 | |
Possibly many of the left-over failures in S14-roles, if we're lucky. | |||
colomon | \o/ | 16:12 | |
16:12
abnorman joined
16:13
pecastro_ joined
|
|||
[Coke] | jnthn: have you committed yet? | 16:14 | |
roast version already set, but I can hold off a minute before kicking off the jvm run. | |||
jnthn | [Coke]: No, I really should test this locally first. | ||
[Coke]: I can push it in 10 mins or so. Is that soon enough? | |||
16:14
pecastro left
|
|||
[Coke] | Sure. I'm heading out to lunch, I'll kick it off when I return. | 16:15 | |
jnthn | ok | ||
If it works out I'll want to do some unfudging anyways... | |||
16:15
sqirrel left
16:17
benabik left,
rindolf left
|
|||
jnthn | S14-roles/parameter-subtyping.t failures are gone, and S14-roles/parameterized-type.t now runs as on Parrot. | 16:21 | |
timotimo | jnthn: will adding S02-types/lazy-lists.t make a cameo? :) | ||
16:21
FROGGS left
|
|||
timotimo | hey, that sounds great! :) | 16:21 | |
jnthn | Also found I could unfudge all but 1 of the Rakudo JVM regressions in S06-multi/type-based.t. :) | 16:24 | |
16:24
SamuraiJack_ left
|
|||
timotimo | sounds like 99% passing tests are secured :) | 16:26 | |
16:27
SamuraiJack joined
|
|||
jnthn | So long as I ain't busted anything :) | 16:28 | |
16:28
sqirrel joined
16:33
pupoque left
16:35
FROGGS joined
16:38
cbk joined
|
|||
dalek | p: 4f1edcc | jnthn++ | src/vm/jvm/runtime/org/perl6/nqp/runtime/Ops.java: Fix failure to reach type_accepts type check mode. This was behind various of the parametric roles failures in Rakudo. |
16:41 | |
jnthn | Seems it gets rid of our final failure in S12 too | 16:42 | |
[Coke]: OK, got for it when you're ready :) | 16:43 | ||
oh, wait... | |||
16:43
abnorman left
|
|||
dalek | ast: f0abac5 | jnthn++ | S (2 files): Rakudo unfudging for JVM. |
16:43 | |
jnthn | OK, now :) | ||
timotimo | hey | ||
add the lazy-lists.t file before pretty please? | 16:44 | ||
jnthn | ? | ||
16:44
mls joined
|
|||
timotimo | it's been around, but wrong and not in the spectest.data, but i freshened it up and added a few tests. it's in S02-types/ | 16:44 | |
16:45
Rotwang joined
16:46
lelf` left,
lelf` joined
|
|||
dalek | kudo/nom: 6034340 | jnthn++ | t/spectest.data: Run S02-types/lazy-lists.t. |
16:46 | |
16:46
benabik joined
|
|||
jnthn | timotimo: What should ChangeLog say on the Pod stuff you did? | 16:48 | |
16:48
lelf` left,
lelf`` joined
|
|||
timotimo | \o/ | 16:48 | |
i was only half serious about it, but let me review the pullrequest closely | 16:49 | ||
the first part is properly parsing formattingcodes with bracketing other than <>, like multiple < as well as « | 16:50 | ||
the second part is allowing POD_TO_TEXT_ANSI to be set in the environment and getting somewhat formatted output from Pod::To::Text | |||
so maybe: "Pod formattingcodes are now properly parsed and rendered in Pod::To::Text with POD_TO_TEXT_ANSI=1" or something like that? | 16:57 | ||
hoelzro | whoa, GH really changed their pull request UI | 16:58 | |
16:58
FieldsaBB joined
|
|||
dalek | kudo/nom: fe792fd | jnthn++ | docs/ChangeLog: Many more ChangeLog entries. We got quite a lot done this month besides the JVM backend. |
16:59 | |
timotimo | good catches! :) | 17:00 | |
jnthn | Don't want folks thinking we're slacking off making Rakudo generally more awesome while we do the JVM port :) | 17:05 | |
17:06
lelf`` left,
kaare__ joined
17:08
kaare_ left
17:10
dakkar left
17:12
sqirrel left
17:15
birdwindupbird left
17:16
araujo left,
araujo joined
17:20
sqirrel joined
17:21
ajr_ left
|
|||
[Coke] returns from finding some lamb saag. ZOMGYUM. | 17:21 | ||
17:22
lelf joined
|
|||
[Coke] will re-kick off today's full run, to catch last minute roast changes. | 17:22 | ||
timotimo | \o/ | 17:23 | |
17:29
cxreg left
17:30
daxim_ joined
17:32
lelf` joined,
daxim left
|
|||
Ulti | hoelzro: perhaps in response to the comments Linus Torvalds made? | 17:33 | |
perigrin | Ulti: I don't think so, I think they've just been doing a lot of UI overhauls. | 17:34 | |
17:34
lelf left
|
|||
colomon | pretty sure we broke 99% with that last patch. :) | 17:35 | |
jnthn, sorear: I'm pretty sure it will take one of you guys to sort out this one: gist.github.com/colomon/6026323 | 17:37 | ||
jnthn votes sorear++ :D | 17:39 | ||
17:42
cxreg joined
|
|||
colomon | jnthn: sometime when you've got a few minutes, I'd like to discuss the next steps for sprintf. but no rush, I should be $working now... | 17:43 | |
17:43
cxreg left,
cxreg joined
17:45
abnorman joined,
spider-mario joined,
spider-mario left
17:47
spider-mario joined
17:52
ribasushi joined,
census joined
17:53
donaldh left
17:54
ajr joined
17:55
ajr is now known as Guest95243
18:02
Guest95243 is now known as ajr_,
lelf`` joined
18:03
daxim_ left
18:04
lelf` left
|
|||
[Coke] | tadzik: you still planning to release the compiler today? | 18:10 | |
colomon | [Coke]: tadzik asked moritz++ to take over for him today | 18:11 | |
[Coke] | hokay. hopefully the daily run will finish in advance. | 18:12 | |
18:14
kaleem joined
|
|||
lizmat | re: github.com/rakudo/rakudo/commit/56fad03b58 : why would one use "first" instead of "grep" ? | 18:18 | |
afaik in the Perl5 world, "first" is guaranteed to retuirn *on* first match, not returning the first match after having tried everything | |||
in other words: that commit feels *wrong* to me | 18:19 | ||
18:19
stevan_ left
|
|||
[Coke] | lizmat: I also think it doesn't feel right, but it does fix the "first needs to be lazy" bug. | 18:21 | |
lizmat | r: my @a=1,2,3; say first( {@a[$_]++}, ^3 ); say @a # hmmm… seems this *is* lazy | 18:25 | |
camelia | rakudo fe792f: OUTPUT«02 2 3» | ||
colomon | lizmat: grep is lazy | ||
[Coke] | is this r running post-that commit? | ||
colomon | lizmat: that patch (at least in theory) carefully asks for only the first element returned by grep | 18:26 | |
r: say (1000..*).first(*.is_prime) | 18:27 | ||
camelia | rakudo fe792f: OUTPUT«No such method 'is_prime' for invocant of type 'Int' in block at /tmp/1iB9bXjTFg:1» | ||
lizmat | [Coke]: it returns the same result as I have here *with* that commit | ||
colomon | r: say (1000..*).first(*.is-prime) | ||
camelia | rakudo fe792f: OUTPUT«1009» | ||
colomon | [Coke]: yes, that's latest rakudo there | 18:28 | |
r: say (1000...*).first(*.is-prime) | 18:29 | ||
timotimo | lizmat: i wrote tests to make sure that this implementation of .first will return on the first match and not try any more things | ||
camelia | rakudo fe792f: OUTPUT«1009» | ||
timotimo | i also wrote tests to make sure that grep is lazy as well :) | ||
lizmat realizes she still doesn't quite grok laziness yet | 18:30 | ||
colomon | it's possible that's not a long term solution, if someone modifies grep to lazily return answers in batches instead of one at a time. (timotimo++ for adding tests to roast so we can detect if it becomes a problem!) But it's definitely more correct than the previous version was. | 18:32 | |
timotimo | i should probably make the tests a bit stricter for that | 18:34 | |
so that they fail as soon as one more item is evaluated than needed | |||
[Coke] | timotimo++ | 18:36 | |
cxreg | how is nativecall working with jvm? call java libraries? | 18:38 | |
or is that rakudo -> jvm -> jni -> libc? | |||
timotimo | NativeCall is for calling C | ||
there will be something different for java things | 18:39 | ||
cxreg | well, jnthn++ said "Happily, arnsholt++ has already started working on the NativeCall support | ||
i was wondering what exactly that meant | |||
timotimo | ah. yes, it means the same as on parrot ;) | ||
colomon | that's on JVM | ||
cxreg | so ... still for calling native C libraries? | ||
timotimo | that's my interpretation, yes | 18:40 | |
cxreg | ok | ||
really amazing progress on that port. just astounding | |||
timotimo | it really is | 18:42 | |
[Coke] | 07/17/2012 - last day niecza ran the daily run with no errors. | 18:43 | |
lizmat | timotimo: wrt to "first": maybe a .gimme(1) might be in order, if I understand .gimme correctly (as it is under documented) | 18:45 | |
[Coke] wonders if adding another test file will screw up the 99% run, since it will change the percentages. | 18:47 | ||
segomos | [Coke]: depends on how many test files there are | 18:49 | |
dalek | rlito: 183a6ee | (Flavio S. Glock)++ | src5/lib/Perlito5/ (2 files): Perlito5 - indirect-object - fix builtin list; add more rules |
18:50 | |
nwc10 | [Coke]: try it in a branch, and cherry-pick it if it works out? :-) | 18:51 | |
timotimo | [Coke]: i added 24 passing tests; we should be over 99% still | ||
18:51
colomon left
|
|||
[Coke] | java run is done. just waiting for parrot run to (re)complete | 18:52 | |
timotimo | adding the same number to the numerator and denominator should keep the number growing all in all | 18:56 | |
18:57
grondilu joined
18:58
kaleem left
18:59
vk_ joined
19:02
census left
19:04
SamuraiJack left
19:05
sqirrel left
19:06
domidumont left
19:16
colomon joined
|
|||
[Coke] | r: say 100 / 150; say 105 / 150 | 19:19 | |
camelia | rakudo fe792f: OUTPUT«0.6666670.7» | ||
[Coke] | r: say 100 / 150; say 105 / 155 | ||
camelia | rakudo fe792f: OUTPUT«0.6666670.677419» | ||
timotimo | your point being? :) | 19:20 | |
should i have rather made 19 (not 24, i misremembered) old tests pass rather than adding 19 new passing ones? ;) | |||
colomon | well, making 19 failing tests pass is probably a greater achievement. | 19:23 | |
but writing new tests is a good thing too | |||
timotimo | it is, yeah | 19:24 | |
colomon | I mean, I toyed with getting us pass 99% by adding a few thousand new passing tests. ;) | 19:25 | |
timotimo | well, those tests were there before and they would have aborted earlier than half way through | ||
but they were not in the spectest.data | |||
Ulti | in the limit of 100% implemented :/ I'm surprised I haven't heard stuff marketed like that before | 19:27 | |
19:29
FieldsaBB left
19:32
ggoebel2 left
19:33
ggoebel joined
19:34
cognominal joined
|
|||
[Coke] | need to move the rest of these tests off feather. | 19:34 | |
diakopter: any ideas on the locale problem | |||
? | 19:35 | ||
19:47
donaldh joined,
grondilu left
19:48
census joined,
rindolf joined
19:49
stevan_ joined
|
|||
dalek | rl6-roast-data: 25751df | coke++ | / (5 files): today (automated commit) |
19:55 | |
colomon | what's the word, [Coke] ? | ||
lizmat | 99.07%! | ||
colomon | \o/ | ||
jnthn | \o/ | ||
donaldh | \o/ | ||
jnthn | Easily past the post! | ||
colomon | so, is that about 250 tests to go to reach parity with Parrot? | 19:56 | |
jnthn | r: say 26203 - 25960 | ||
lizmat | 243 by the looks of it | ||
camelia | rakudo fe792f: OUTPUT«243» | ||
donaldh | If I add some tests for CUSTOM_LIB then they'll be new and _all pass_ :-) | ||
lizmat | .oO( mental arithmetic beats typing any time ;-) |
19:57 | |
FROGGS | \o/ | ||
jnthn will celebrate with a Yeti :) | |||
nwc10 | \o/ | ||
what's a Yeti? | |||
nwc10 is on Glenmorangie | 19:58 | ||
FROGGS | beer | ||
jnthn | WHAT? | ||
nwc10 | (it's open, and at the front) | ||
donaldh is celebrating with a St Mungo and a pizza | |||
FROGGS | it is always beer *g* | ||
lizmat is celebrating with some tea | |||
nwc10 | did tea earlier. | ||
FROGGS | well, I have coffee | ||
lizmat | unspiked, I might add | ||
colomon has a nice new bottle of Talisker, but it's too early to celebrate here. :) | |||
nwc10 | jnthn: what "WHAT?" | 19:59 | |
jnthn | nwc10: greatdivide.com/beer/year-round/yet...ial-stout/ | ||
nwc10 is on second. It's actually related to the awesome 99% result | |||
ooh, Yeti looks nice | |||
jnthn | It's very nice :) | ||
nwc10 | but fattening | ||
jnthn | shhh :P | ||
FROGGS | sheepshagger ftw! | 20:00 | |
donaldh | someone had to | ||
FROGGS | I had that once: www.travelblog.org/Photos/4282848 | ||
20:01
kaare__ left
|
|||
FROGGS | that is not me though | 20:01 | |
donaldh | oO( you shag one sheep ) | ||
FROGGS | they bartender said they try to convince the ppl that it is "sheeps hagger", but nobody believes it :o) | ||
jnthn | .oO( whitespace is overrated :P ) |
20:03 | |
FROGGS | :P | ||
timotimo | donaldh: did the custom lib things make it into nom already? wow, you're fast | ||
donaldh | timotimo: in my working copy | 20:04 | |
timotimo | oh | ||
donaldh | trying to do enough to resurrect panda | ||
timotimo | you gotta be fast to still get it into the release :) | ||
donaldh is debugging panda | 20:05 | ||
jnthn suspects we might just be able to make a JVM-based Star release next month :) | |||
donaldh is also eating pizza and drinking beer | |||
timotimo | next month will be very possible, this month may even work; donaldh would know better :) | 20:06 | |
r: for ([Z] <wanze tanzen>.map({ (reverse [\~] $^word.comb).item })) -> $wanze, $tanzen { say "Sieh dir diese $wanze an, wie die $wanze $tanzen kann!" } | |||
camelia | rakudo fe792f: OUTPUT«Sieh dir diese wanze an, wie die wanze tanzen kann!Sieh dir diese wanz an, wie die wanz tanze kann!Sieh dir diese wan an, wie die wan tanz kann!Sieh dir diese wa an, wie die wa tan kann!Sieh dir diese w an, wie die w ta kann!» | ||
FROGGS | hehe, timotimo++ | 20:07 | |
nwc10 | a JVM star would be mighty interesting. | ||
timotimo | reverse triangle reduce and Z-reduction :) | ||
maybe [OP/] should be a thing, too? :3 | 20:08 | ||
donaldh is thinking too sloooowly | 20:11 | ||
donaldh just realised that the 'use lib' magic is implemented by lib.pm6 | |||
timotimo | indeed. and it's not really crazy magic either | ||
donaldh | export with side effects is all | 20:12 | |
timotimo | EXPORT, not export ;) | ||
lizmat | abusing EXPORT for fun and profit | ||
TimToady | isn't the next goal 99.44% pure, like Ivory Soap? | 20:13 | |
[Coke] | r: say 26203 * .9944 - 25960 | 20:15 | |
camelia | rakudo fe792f: OUTPUT«96.2632» | ||
[Coke] | so, about a hundred to go for that. | 20:16 | |
jnthn | mebbe I'll work on Buf at the weekend. | 20:17 | |
dalek | kudo/nom: ebb1a63 | (Elizabeth Mattijsen)++ | README: Adjust README for 99%+ passing spectests |
||
lizmat | seemed appropriate :-) | 20:18 | |
timotimo | that seems pretty conservative ;) | ||
jnthn | It's less capable, apart from in the ways it's more capable :P | 20:19 | |
donaldh | jnthn: any idea how close rakudo-debugger might be to working? | ||
lizmat | yes, but the more capable parts are still experimental and unspecced, right ? | ||
donaldh | jnthn: I gave it a spin and got gist.github.com/donaldh/6032692 | ||
[Coke] | I might add "slightly" before less. | ||
jnthn | lizmat: yeah | ||
donaldh: It'll need some love, I think. :) | 20:20 | ||
donaldh: It shouldn't be too bad, though. | |||
donaldh | jnthn: I imagine bootstrapping is not entirely compatible. | ||
jnthn | donaldh: I'd quite like to be able to show it running on JVM in my Rakudo JVM session at YAPC::EU. :) | 20:21 | |
donaldh: So I'm quite motivated to get it fixed in time for that :) | |||
colomon | YAPC::EU++ ;) | ||
jnthn has 3 talks and wants to show something nice in each of them :) | 20:22 | ||
20:25
stevan_ left
|
|||
donaldh | how do I append the contents of an array to another array in nqp ? | 20:26 | |
jnthn | donaldh: nqp::splice | 20:28 | |
donaldh | jnthn++ | ||
20:28
vk_ left
20:29
rindolf left
20:31
spider-mario left
|
|||
lue | hello world o/ | 20:32 | |
dalek | kudo/nom: 4f210b1 | (Elizabeth Mattijsen)++ | CREDITS: Added recently active contributors to CREDITS |
20:37 | |
lizmat was bored waiting for the compiler release | 20:38 | ||
segomos | tadzik: inside of coroutines, is it possible for me to 'say' things to stdout or is there some work around for it? | 20:42 | |
20:43
BenGoldberg joined
|
|||
lizmat | rakudo has coroutines ? | 20:44 | |
dalek | kudo/nom: 3384d0f | moritz++ | docs/announce/2013.07.md: add announcement for 2013.07 release |
20:45 | |
moritz | I won't get around to do the rest of the release today | 20:46 | |
if somebody wants to pick up from here (lizmat? you were bored? :-), please do | |||
otherwise I'll do the rest tomorrow | |||
lizmat | I don't know what needs to be done | ||
is there a guide somewhere ? | 20:47 | ||
FROGGS | in /doc | ||
release_guide or so | |||
lizmat checks | |||
moritz | lizmat: docs/release_guide.pod | ||
I've done the steps up to no. 5 | 20:48 | ||
(though if somebody wants to double-check the announcement, that would be great too) | |||
lizmat: and if you give me your public ssh key, I can add it to rakudo.org so that you can upload the tarballs there | 20:49 | ||
awwaiid_ | moritz: s/This is only some of the changes/These are only some of the changes/ | 20:50 | |
moritz | (pmichaud, jnthn, PerlJam, tadzik, masak and [Coke] can do that too) | ||
20:51
tylathos joined
|
|||
tylathos | Hey | 20:51 | |
20:52
konundra left
|
|||
FROGGS | hi tylathos | 20:55 | |
tylathos | now i think , i should write what i want here :-) so i want to know if i can help by perl6 , und excuse my bad english im from germany :-) | 20:56 | |
FROGGS | hehe, I'm from near Berlin, you? | 20:57 | |
lizmat trying to solve some passwd issues to get the release going | |||
FROGGS | and yes, there are several ways you can help: 1) use it, every bit of feedback help to evolve the language/compiler (even though it is pretty mature) | 20:59 | |
tylathos | at the moment at tenriffa but normaly at thuringia( City :saalfeld) | ||
FROGGS | ahh, I lived in Gera like 20 years or so | ||
Ulti | would be nice if .trim-trailing could take a parameter of what you want to trim if not white space | ||
20:59
skids left
|
|||
FROGGS | Ulti: what about .subst(/...$/, '') ? | 21:00 | |
having a trim-trailing that just is a subst method with implicit end-of-line matching is, well, a bit odd IMO | 21:01 | ||
tylathos: what are you up to anyway? | 21:02 | ||
Ulti | its already that but just limited to white space | ||
donaldh | should @*INC include . or is that a special case for build? | ||
jnthn | Should not include . by default | 21:03 | |
Grrr...of all the things...my mouse if failing... | 21:04 | ||
FROGGS | :/ | ||
jnthn | *is | 21:05 | |
tylathos | im actually up for everything. i just want to help to get perl6 as wounderfull as perl5 | 21:06 | |
dalek | kudo/nom: 70d2306 | (Elizabeth Mattijsen)++ | docs/release_guide.pod: Step #6 of release process |
||
21:06
cognominal left
|
|||
segomos | tylathos: async ;) | 21:06 | |
lue | some thoughts I had on Unicode in Perl 6 --> gist.github.com/lue/6033091 | 21:07 | |
jnthn | segomos: As in async { } blocks? :) | ||
segomos | jnthn: yes | 21:09 | |
lizmat | I guess I'm not upping PARROT_REVISION for the release, right? | ||
jnthn | lizmat: Right, the release contained nearly nothing, certainly nothing we depend on. | ||
lizmat | ok, leaving that untouched then to be on the safe side | ||
tylathos | @segomos no i dont love perl5 becaus of his async or becaus of his easy Syntax. i love perl becaus of his community und becaus it was the First language i learned | 21:10 | |
jnthn | segomos: Rakudo on JVM has very preliminary async { } support, if you didn't know :) | ||
segomos | tylathos: ? i was responding to you want to help p6 be as wonderful as p5. i love p6 thus far | ||
jnthn: i'll switch to jvm and try it out.. | 21:11 | ||
jnthn | segomos: See my last blogpost for some info on it. | ||
FROGGS | tylathos: if you are not a compiler artist, you could port modules to Perl 6, or write new ones... That is one of the main blockers for most ppl | ||
segomos | jnthn: where do i find your blog on the information super highway? | 21:12 | |
tylathos | Sry than i understood u wrong :-) My fault. | ||
21:12
tylathos left
|
|||
FROGGS | segomos: 6guts.wordpress.com/ | 21:12 | |
and this is a must-read: www.josetteorama.com/all-about-perl...rt-1-of-3/ | 21:13 | ||
donaldh | jnthn: I need to be patient enough for the whole spectest, but it looks like jvm runs fine now w/o -Xbootclasspath | ||
21:13
tylathos joined
|
|||
jnthn | donaldh: Hmm. | 21:13 | |
donaldh: OK. | |||
colomon | hey, parts 2 and 3 are up now! \o/ | ||
timotimo | oh, they are! | ||
jnthn | donaldh: I wonder if something we've done that tickled the bug is gone | 21:14 | |
timotimo | without much trara | ||
segomos | i was trying tadzik 's Thread module but got lazy | ||
FROGGS | yeah, and they are awesome :o) | ||
21:14
konundra joined
|
|||
donaldh | jnthn: I remember that there was an intermittent bug that you fixed after the bootclasspath, there were probably others. | 21:15 | |
timotimo | lue: i like the thing you did with thea headings | ||
dalek | p: a76c974 | (Elizabeth Mattijsen)++ | VERSION: bump VERSION to 2013.07 |
||
lue | (except the one that was added after-the-fact and inbetween existing ones :) | ||
timotimo | yeah | 21:16 | |
21:17
tylathos left
|
|||
dalek | kudo/nom: a397320 | (Elizabeth Mattijsen)++ | docs/announce/2013.07.md: Small grammar fix for announcement, suggested by awwaiid++ |
21:18 | |
lizmat | -- release status: checking nqp (step 3 in nqp release guide) | 21:20 | |
21:23
vk_ joined
|
|||
lizmat | -- release status: created tarball (step 4 in nqp release guide) | 21:23 | |
-- release status: testing tarball (step 5 in nqp release guide) | 21:24 | ||
jnthn | .oO( lizbot ) |
21:25 | |
21:32
notjack left
21:34
census left
|
|||
lizmat | -- release status: tagging NQP (step 6 in nqp release guide) | 21:34 | |
-- release status: uploading tarball (step 7 in nqp release guide) (to be done by jnthn, as I have an access snafu to rakudo.org) | 21:36 | ||
jnthn | Should be there now | ||
FROGGS | lizmat: please dont send the announcement till it is up | 21:37 | |
lizmat | -- release status: continuing with rakudo release process (step 8 in nqp release guide) | ||
FROGGS: till nqp tarball is up ? | |||
FROGGS | both | ||
lizmat | okidoki | 21:38 | |
dalek | kudo/nom: 01b39fd | (Elizabeth Mattijsen)++ | tools/build/NQP_REVISION: [release] bump NQP revision |
21:40 | |
kudo/nom: b15bdcb | (Elizabeth Mattijsen)++ | VERSION: [release] bump VERSION |
21:41 | ||
lizmat | -- release status: check if everything compiles from a clean slate (step 11 in rakudo release guide) | 21:42 | |
timotimo | i wonder if i can rebase the nodal branch upon current nom ... | 21:44 | |
21:45
colomon left
|
|||
BenGoldberg | rpn: my @a := gather { }; my @b; say @a[0], @b[0]; | 21:46 | |
camelia | niecza v24-88-g1f87209: OUTPUT«(Any)(Any)» | ||
..rakudo 70d230: OUTPUT«Nil(Any)» | |||
..pugs: OUTPUT«» | |||
lizmat | that's actually a known bug in rakudo | ||
BenGoldberg | Oh, ok :) | 21:47 | |
timotimo | lizmat has been banging 'er head against nil/default/Any/... for a few days recently :) | ||
lizmat | r: my $a=Nil; say $a # should sau (Any) | ||
jnthn | timotimo: probably :) | ||
camelia | rakudo 70d230: OUTPUT«Nil» | ||
jnthn | lizmat: I thought we fixed that bit? :) | ||
lizmat | r: my Int $a=Nil; say $a # says (Int) correctly | ||
camelia | rakudo 70d230: OUTPUT«(Int)» | ||
timotimo | jnthn: "can" was the wrong word. probably "can feel comfortable to" or something like that | ||
i guess i can just do it. | |||
lizmat | jnthn: no, if I do that, half of the test-suite fails | ||
jnthn | timotimo: Sure you can. rebase is immutable :) | ||
lizmat: ah... :) | |||
timotimo: If you don't like the result, you can always undo it ;) | 21:48 | ||
lizmat | and before I think we can fix that, we need "is default(Nil)" to work, I think | ||
jnthn | Yeah, I know, I need to get var traits in :) | ||
timotimo | jnthn: i was refering to "don't rebase something you've pushed" | 21:49 | |
jnthn | timotimo: ah, true | ||
timotimo: Well, you can always greate a new branch that is the other thing but rebased :) | 21:50 | ||
timotimo | people will have it in their reflog if they even have it checked out :) | ||
and if they don't, it'll be overwritten by default iirc. | |||
21:51
colomon joined
21:52
donaldh left
|
|||
BenGoldberg | So did anyone figure out why the following happens? | 21:52 | |
rpn: my @a := gather { take 'one'; say 'HUH?' }; say 'zero'; for (@a) { say $_; last } | |||
camelia | niecza v24-88-g1f87209: OUTPUT«zeroone» | ||
..pugs: OUTPUT«HUH?zeroone» | |||
..rakudo 70d230: OUTPUT«zeroHUH?one» | |||
timotimo | yes, for is non-lazy by default it appears. | 21:53 | |
BenGoldberg | Can it be made lazy? | 21:54 | |
timotimo | should, yeah | 21:55 | |
timotimo doesn't really know how | |||
BenGoldberg | niecza gets it right ;) | ||
timotimo | did you see i made .first lazy on rakudo based on colomon++'s work :) | 21:56 | |
BenGoldberg | Yes, timotimo+++ :) | 21:57 | |
Opps, timotimo++ | |||
timotimo | now i have two ++'s? | 21:58 | |
FROGGS | karma timotimo | ||
err | |||
.karma timotimo | |||
hmmm | |||
BenGoldberg | .ping | ||
yoleaux | There is no ping command; nor can this be construed as a response. | ||
geekosaur | *snrk* | ||
FROGGS | preflex: karma timotimo | 21:59 | |
preflex | timotimo: 97 | ||
timotimo | is that so? \o/ | ||
BenGoldberg | But we don't know what your karma was before the +++ | 22:00 | |
preflex: karma BenGoldberg | |||
preflex | BenGoldberg has no karma | ||
BenGoldberg | BenGoldberg+++ | ||
preflex: karma BenGoldberg | |||
preflex | BenGoldberg has no karma | ||
FROGGS | preflex: karma timo | ||
preflex | timo: 2 | ||
FROGGS | preflex: karma Timo Paulssen | ||
preflex | Timo Paulssen: 75 | ||
colomon | .karma colomon | ||
FROGGS | :o) | ||
BenGoldberg | BenGoldberg++ | ||
preflex: karma BenGoldberg | |||
preflex | BenGoldberg: -1 | ||
BenGoldberg | Heh | ||
lizmat | -- release status: creating tarball (step 12 in rakudo release guide) | ||
FROGGS | lizmat++ | 22:01 | |
lizmat | -- release status: testing tarball (step 13 in rakudo release guide) | ||
colomon | preflex: karma colomon | 22:02 | |
preflex | colomon: 250 | ||
FROGGS | preflex: karma FROGGS | ||
preflex | FROGGS: 119 | ||
FROGGS | preflex: karma Tobias Leich | ||
preflex | Tobias Leich: 103 | ||
timotimo | you're doing good, froggs :) | ||
FROGGS | uhh, 103 is my userid at $work | ||
:o) | |||
FROGGS .oO( I know where I belong in mysql tables ) | 22:03 | ||
and now I belong in $bed | |||
gnight all | |||
timotimo | good night FROGGS :) | ||
22:03
ajr_ left
|
|||
lizmat | gnight FROGGS! | 22:03 | |
colomon | \o | ||
timotimo | 'tis a good release, i think. people are going to respond less negatively to it than usual, won't they? | ||
lizmat | tis a good release, I don't care much what negatively predisposed people think of it | 22:07 | |
BenGoldberg | 6st 1 2 3 | 22:08 | |
22:08
vk_ left
|
|||
BenGoldberg | ordinal 1 2 3 | 22:08 | |
preflex: 6st 1 2 3 | |||
preflex | 1st 2rd 3th | ||
22:12
iSlug left
22:14
vk_ joined
22:15
bluescreen100 left
|
|||
lizmat | -- release status: tagging release (step 14 in rakudo release guide) | 22:21 | |
-- release status: uploaded tarball and verified availability (step 15 in rakudo release guide) | |||
22:22
Rotwang left
|
|||
lizmat | -- release status: announce on perl6-compiler (step 16 in rakudo release guide) | 22:26 | |
colomon | \o/ | ||
lizmat++ | |||
lizmat | -- release status: update Wikipedia entry (step 17 in rakudo release guide) | ||
-- release status: appropriate amounts of fun! (step 18 in rakudo release guide) | |||
dalek | ecs: 1cce200 | jnthn++ | S12-objects.pod: Flesh out EXPORTHOW specification a bit. Provide for safe compositional use of meta-objects as well as custom package declarators. Also spec that compilers should complain about trying to import two different replacement meta-objects for the same declarator in a single scope. |
22:27 | |
timotimo | \o/ | 22:29 | |
dalek | kudo/nom: 099f0b3 | (Elizabeth Mattijsen)++ | docs/release_guide.pod: Tweaks for next rakudo release |
22:30 | |
jnthn | Will get Rakudo caught up with that new spec update sometime in the next days. :) | 22:34 | |
(Yes, it's part of a plan for something.) | 22:35 | ||
lizmat | I always see a lot of warnings like "warning: unknown warning option '-Wno-long-double'; did you mean | 22:36 | |
'-Wno-long-long'? [-Wunknown-warning-option]" | |||
shouldn't the makefile be tweaked for this? at least on OS X ? | |||
r: my @a:= squish( 1..Inf ); say @a[3] # glad to see squish() is also lazy thanks to grep() | 22:45 | ||
huh? | |||
camelia | rakudo b15bdc: OUTPUT«4» | ||
lizmat | yeah! | ||
n: my @a:= squish( 1..Inf ); say @a[3] | 22:47 | ||
camelia | niecza v24-88-g1f87209: OUTPUT«===SORRY!===Undeclared routine: 'squish' used at line 1Unhandled exception: Check failed at /home/p6eval/niecza/boot/lib/CORE.setting line 1502 (die @ 5)  at /home/p6eval/niecza/src/STD.pm6 line 1147 (P6.comp_unit @ 36)  at /h… | ||
dalek | ast: 0d03605 | (Elizabeth Mattijsen)++ | S32-list/squish.t: Make sure squish() is lazy |
22:50 | |
lizmat | p: my @a:= squish( 1..Inf ); say @a[3] | 22:53 | |
camelia | pugs: OUTPUT«*** No such subroutine: "&squish" at /tmp/x2rGIOCQhA line 1, column 1-25» | ||
dalek | ast: 03a7771 | (Elizabeth Mattijsen)++ | S32-list/squish.t: Properly fudge squish tests to Niecza and Pugs |
22:54 | |
lizmat | and on that thought, I call it a day! And what a day it was, suddenly becoming release manager because I was bored :-) moritz++ | 22:55 | |
sleep& | |||
timotimo | good night lizmat :) | 22:56 | |
22:57
PacoAir left
|
|||
jnthn | 'night, #perl6 | 23:13 | |
colomon | \o | 23:14 | |
23:35
colomon left
23:38
vk_ left
|