»ö« Welcome to Perl 6! | perl6.org/ | evalbot usage: 'perl6: say 3;' or rakudo:, niecza:, std:, or /msg p6eval perl6: ... | irclog: irc.perl6.org/ | UTF-8 is our friend! Set by sorear on 4 February 2011. |
|||
jnthn | diakopter++ | 00:04 | |
00:09
s1n joined,
s1n left
|
|||
dalek | p-jvm-prep: 2de6909 | jnthn++ | nqp-jvm-cc.nqp: Sketch a frontend. Doesn't do anything useful yet, since it can't handle the stuff that NQP puts into every QAST tree it makes. Once that stuff is sorted out, this should enable us to start to cross-compile/run snippts of NQP on the JVM. |
00:09 | |
p-jvm-prep: c3b1376 | jnthn++ | docs/ROADMAP: Remove completed. |
|||
jnthn | 'night, #perl6 | ||
japhb | o/ | 00:10 | |
tadzik | o/ | ||
00:21
stevan_ joined
00:22
stevan_ left
00:23
cognominal left
00:29
cognominal joined
00:30
Celelibi left
00:34
thou joined
00:41
aindilis joined
|
|||
colomon | rn: say Int === Real | 00:59 | |
p6eval | rakudo c3f565, niecza v24-17-gd343a2a: OUTPUT«False» | ||
colomon | rn: say Int === Nil | ||
p6eval | rakudo c3f565: OUTPUT«False» | ||
..niecza v24-17-gd343a2a: OUTPUT«Unhandled exception: No value for parameter '$r' in 'infix:<===>' at /home/p6eval/niecza/lib/CORE.setting line 0 (infix:<===> @ 1)  at /tmp/CuEdkqkzIX line 1 (mainline @ 3)  at /home/p6eval/niecza/lib/CORE.setting line 4218 (ANON @ 3)  at /home/p6e… | |||
colomon | rn: say Nil.perl | 01:02 | |
p6eval | rakudo c3f565, niecza v24-17-gd343a2a: OUTPUT«Nil» | ||
timotimo | maybe niecza has something like :D in there? | 01:03 | |
colomon | try.t is doing blah === Nil, any objections to my changing that to blah.perl eq "Nil" | ||
? | |||
timotimo | in the signature of infix:<===> i meant | ||
colomon | timotimo: it doesn't, I already checked. :) | ||
rn: say 1 + Nil | |||
p6eval | niecza v24-17-gd343a2a: OUTPUT«1» | 01:04 | |
..rakudo c3f565: OUTPUT«use of uninitialized value of type Nil in numeric context in block at /tmp/h8ZkdQ0IVp:11» | |||
01:04
bitonic left
|
|||
colomon | rn: say Nil.WHICH | 01:04 | |
p6eval | rakudo c3f565: OUTPUT«Nil» | ||
..niecza v24-17-gd343a2a: OUTPUT«Nil[A414780]» | |||
colomon | rn: say Int == Nil | 01:06 | |
p6eval | rakudo c3f565: OUTPUT«use of uninitialized value of type Int in numeric context in block at /tmp/KMq53smHNH:1use of uninitialized value of type Nil in numeric context in block at /tmp/KMq53smHNH:1True» | ||
..niecza v24-17-gd343a2a: OUTPUT«True» | |||
colomon | though I admit I don't understand why Niecza doesn't work here. | ||
01:15
Celelibi joined
|
|||
colomon | rn: say infix:<===>(Int, Nil) | 01:16 | |
p6eval | rakudo c3f565: OUTPUT«False» | ||
..niecza v24-17-gd343a2a: OUTPUT«Unhandled exception: No value for parameter '$r' in 'infix:<===>' at /home/p6eval/niecza/lib/CORE.setting line 0 (infix:<===> @ 1)  at /tmp/jYxCoRL7W9 line 1 (mainline @ 3)  at /home/p6eval/niecza/lib/CORE.setting line 4218 (ANON @ 3)  at /home/p6e… | |||
colomon | rn: say infix:<===>(Nil, Nil) | ||
p6eval | niecza v24-17-gd343a2a: OUTPUT«Unhandled exception: No value for parameter '$l' in 'infix:<===>' at /home/p6eval/niecza/lib/CORE.setting line 0 (infix:<===> @ 1)  at /tmp/ytmMeisID2 line 1 (mainline @ 3)  at /home/p6eval/niecza/lib/CORE.setting line 4218 (ANON @ 3)  at /home/p6e… | ||
..rakudo c3f565: OUTPUT«True» | |||
colomon | hurmph. don't understand how rakudo works. don't understand why niecza doesn't. | 01:17 | |
01:17
PacoAir left
|
|||
dalek | ast: a03dd1a | (Solomon Foster)++ | / (7 files): Fudge for Niecza. |
01:37 | |
02:13
FROGGS_ joined
02:16
FROGGS left
02:26
slayer101_ joined
|
|||
_sri wishes TimToady would return to perl5 for a bit and turn things around before everything goes up in flames speakerdeck.com/stevan_little/perl...a-dead-end | 02:32 | ||
timotimo opens the git repo. sees no t/ folder. closes it again | 02:41 | ||
may be ready in 30 years. | |||
slayer101_ | perl6 is available right? | 02:55 | |
02:57
slayer101_ left
02:58
slayer101_ joined,
slayer101_ left,
slayer101_ joined
|
|||
tadzik | whoa | 03:13 | |
timotimo: actually, there's src/test | 03:15 | ||
it seems to be scala's way of doing things | |||
03:19
cognominal left
03:27
countley joined
03:40
Pleiades` left
03:41
rxrxrx joined
03:43
rxrxrx left
03:46
Pleiades` joined
04:01
MikeFair_ left
04:02
MikeFair_ joined
04:03
juiko joined
|
|||
xenoterracide | _sri ok I think I hate stevan right now | 04:07 | |
too much timtowtdi.. too much fragmentation | 04:08 | ||
_sri | stevan is right though, perl5-porters is in a terrible state, volunteers working on cool features get totally destroyed | 04:10 | |
xenoterracide | _sri yeah I agree with the state of perl5, and even perl6 | ||
but I'm not sure that perhaps trying to port nqp to a better vm wouldn't be a better use of time | 04:11 | ||
_sri | i don't agree about the premise of the new language though, it is bound to fail, like stevan said himself, perl6 is the future, you can't get people excited for an interim language | 04:12 | |
xenoterracide | I feel like some people are simply constantly restarting the same damn things and abandoning the old.. Moose -> Moo -> mo (oh for the love of $)(*@#) | ||
_sri | then again, perl6 is changing too much, perl5 too little, maybe there is a need for a language in between | 04:13 | |
xenoterracide | perl6 might slow down if we could get it to a useable state | 04:14 | |
just my thought | |||
_sri | i would port all my code to perl6 in a heartbeat if it was anywhere near production ready, but realistically, stevan is not too far off with his 10 years | 04:15 | |
xenoterracide | _sri do you think it'd be another 10 years if all the people complaining actually started working on it? | 04:17 | |
_sri | not everyone is a language designer | ||
once at least the primitives are there we can talk | 04:18 | ||
xenoterracide | that's true... I guess I'm not thinking about language design as much as making useful shit so people can do work... and perhaps porting nqp to a decent vm (since I keep hearing parrot sucks, 3rd hand info though) | ||
I guess I don't really know what's really going on with most of this | 04:20 | ||
xenoterracide also wonders why niecza isn't just nqp ported to the CLR, seriously fragmentation everywhere | 04:22 | ||
I just feel like I could name 10 people going 10 different ways so it's going to take 10 years because they're all going there own way. obviously adding people ! = faster in all cases, but perhaps it could. I am probably completely wrong | 04:26 | ||
flussence | I tried making useful stuff. Having to fix other people's modules to get there is fine with me. Fighting bugs that it turns out don't exist, for weeks/months, because the *runtime* is broken is not fun. | 04:28 | |
xenoterracide | flussence yeah, I understand, and I understand not everyone can do it. but it seems those that can are all interested in working on competing ones | 04:30 | |
xenoterracide wonders if perl 6 could be reduced to an achievable goal | 04:31 | ||
so that some of it's features could be deferred until 6.2 and 6.4 | 04:32 | ||
04:32
preflex left,
preflex_ joined,
preflex_ is now known as preflex
|
|||
flussence | One thing worries me: panda was broken due to bugs in rakudo for most of the advent calendar and up until about a week ago. During that time I can count the number of new people I saw complaining about it on one hand. That's maybe four people taking an active interest in the language. The silent majority just see it's broken and uninstall it. | 04:36 | |
TimToady | I see the pessimists are out in force tonight :) | ||
skids thinks the fact that development has proceeded in the face of such pessimism for so long is reason for optimism :-) | 04:38 | ||
xenoterracide | flussence yeah I've been rather burned out for the last ~1-2 months, so I stopped coding on personal time | ||
skids++ | 04:42 | ||
04:43
am0c joined
|
|||
TimToady | Of course, just because the naysayers are wrong doesn't necessarily mean that the yeahsayers are right. :) | 04:48 | |
Usually everyone turns out to be wrong. :) | |||
_sri wants to be an optimist :( | |||
skids | Initially I was discouraged that things "as basic" as concurrency and native types were NYI. I just had to adjust to the fact that under a different paradigm, these things are not so "basic" | ||
04:48
slayer101_ left
|
|||
xenoterracide | I prefer to think of myself as a realist. unfortunately I don't talk about the positives because I don't see them as needing fixing | 04:48 | |
TimToady | I prefer to think of myself as the unreasonable man upon whom all progress depends. :) | 04:49 | |
xenoterracide | on the positive note I am in #perl6 talking about perl6 having written some very basic perl6 code, wishing I could write perl6 for work. So something is write about it, because I'm not in #python #node or #ruby | 04:50 | |
TimToady | well, there is that :) | 04:51 | |
TimToady can't help being optimistic even when depressed :) | 04:54 | ||
flussence | I'm very good at waiting, if nothing else | 04:59 | |
skids | A true pessimist/considers their predictions/as optimistic | 05:07 | |
xenoterracide | keeps thinking that the most worthwhile thing would be too build cpan6 (and not whatever Overmeer was thinking ), with a jenkins ci system | ||
skids notices you can't paste into a github gist. WTH?!? | 05:12 | ||
05:13
countley left
|
|||
grondilu watches the presentation "perl is a dead end" | 05:13 | ||
flussence | skids: they seem to expect you to use ctrl+c/v style pasting now | 05:14 | |
I've just stopped using it entirely | 05:15 | ||
.oO( I'm sure they'd know about it through their bug tracker... if they had one. ) |
05:22 | ||
skids | gist.github.com/4522473 | 05:33 | |
05:35
am0c left
05:48
Pleiades` left
|
|||
lue | The fact that nqp can be ported to the JVM makes me optimistic (even though, on my system, Parrot < JVM ≪ AMD64 in terms of speed (IIRC, haven't used JVM in a while)) | 05:50 | |
05:53
werwerwer joined
05:54
Pleiades` joined
06:00
juiko left
06:06
kaare_ joined
|
|||
moritz | \o | 07:00 | |
07:01
quester joined
07:07
Chillance joined
07:09
sundar left
07:13
sundar joined
07:14
Pleiades` left
07:16
sundar left,
sundar joined
07:18
Pleiades` joined
07:19
sundar left
07:37
Pleiades` left
07:39
Pleiades` joined
|
|||
diakopter | moritz: o/ | 08:08 | |
08:09
SamuraiJack joined
|
|||
quester | r: macro postfix:<!> ($n) { quasi { [*] 1..{{{$n}}} }; }; for 3..5 { say $_! }; | 08:13 | |
p6eval | rakudo c3f565: OUTPUT«624120» | 08:14 | |
quester | r: macro postfix:<!> ($n) { quasi { [*] 1..{{{$n}}} }; }; say $_! for 3..5; | ||
p6eval | rakudo c3f565: OUTPUT«use of uninitialized variable $max of type Any in numeric context1use of uninitialized variable $max of type Any in numeric context1use of uninitialized variable $max of type Any in numeric context1» | ||
quester idly wonders who this $max guy is and why he doesn't like macros... | 08:15 | ||
grondilu | I'm not sure macros can be implemented as operators yet | ||
sorear | why are you using a macro for this anyway | 08:16 | |
a sub would work just as well | |||
grondilu | rn: sub postfix:<!> { [*] 1 .. $^n } ; say 6! | ||
p6eval | rakudo c3f565, niecza v24-17-gd343a2a: OUTPUT«720» | ||
quester | True, I was playing with macros and not trying to do anything really useful. It's just that I'm... puzzled... by the fact that that the macro works in "for 3..5 { say $_! };" and fails in "say $_! for 3..5;". | 08:18 | |
grondilu | weird indeed | ||
quester | Defining it as an operator (or sub if you think of it that way) works both ways. | 08:19 | |
grondilu | rn: sub postfix:<!> { [*] 1 .. $^n } ; say $_! for 3..5; | 08:20 | |
p6eval | rakudo c3f565, niecza v24-17-gd343a2a: OUTPUT«624120» | ||
08:20
Pleiades` left
|
|||
grondilu | rn: macro postfix:<!> { "foo" } ; say $_! for 3..5; | 08:20 | |
p6eval | niecza v24-17-gd343a2a: OUTPUT«===SORRY!===Action method macro_def not yet implemented at /tmp/e7VKKmOhep line 1:------> macro postfix:<!> { "foo" } ⏏; say $_! for 3..5;Action method routine_declarator:macro not yet implemented at /tmp/e7VKKmOhe… | ||
..rakudo c3f565: OUTPUT«===SORRY!===Too many positional parameters passed; got 1 but expected 0at /tmp/vPkDA16w6J:1------> » | |||
grondilu | rn: macro postfix:<!> { quasi { "foo" } } ; say $_! for 3..5; | 08:21 | |
p6eval | rakudo c3f565: OUTPUT«===SORRY!===Too many positional parameters passed; got 1 but expected 0at /tmp/IM3NDCGFWv:1------> » | ||
..niecza v24-17-gd343a2a: OUTPUT«===SORRY!===Action method quasiquibble not yet implemented at /tmp/_B5uH03hbZ line 1:------> macro postfix:<!> { quasi { "foo" }⏏ } ; say $_! for 3..5;Action method quote:quasi not yet implemented at /tmp/_B5uH03hb… | |||
grondilu | rn: macro postfix:<!>($) { quasi { "foo" } } ; say $_! for 3..5; | ||
p6eval | niecza v24-17-gd343a2a: OUTPUT«===SORRY!===Action method quasiquibble not yet implemented at /tmp/p0RSqquNyI line 1:------> macro postfix:<!>($) { quasi { "foo" }⏏ } ; say $_! for 3..5;Action method quote:quasi not yet implemented at /tmp/p0RSqq… | ||
..rakudo c3f565: OUTPUT«foofoofoo» | |||
grondilu | rn: macro postfix:<!>($n) { quasi { $n+1 } } ; say $_! for 3..5; | 08:22 | |
p6eval | niecza v24-17-gd343a2a: OUTPUT«===SORRY!===Action method quasiquibble not yet implemented at /tmp/w9qhdjb0WB line 1:------> macro postfix:<!>($n) { quasi { $n+1 }⏏ } ; say $_! for 3..5;Action method quote:quasi not yet implemented at /tmp/w9qhdj… | ||
..rakudo c3f565: OUTPUT«Cannot call 'Numeric'; none of these signatures match::(Mu:U \v: Mu *%_)current instr.: 'Numeric' pc 147844 (src/gen/CORE.setting.pir:67331) (src/gen/CORE.setting:844)called from Sub 'infix:<+>' pc 54603 (src/gen/CORE.setting.pir:25394) (src/gen/CORE.setting:28… | |||
grondilu stops spamming the channel now | 08:23 | ||
quester | rn: macro postfix:<!>($n) { quasi { {{{$n}}}+1 } } ; say $_! for 3..5; | ||
p6eval | niecza v24-17-gd343a2a: OUTPUT«Use of uninitialized value in string context at /home/p6eval/niecza/boot/lib/CORE.setting line 1295 (warn @ 5)  at /home/p6eval/niecza/boot/lib/CORE.setting line 266 (Mu.Str @ 15)  at <unknown> line 0 (ExitRunloop @ 0)  at /home/p6eval/niecza/boot/… | ||
..rakudo c3f565: OUTPUT«use of uninitialized variable $_ of type Any in numeric context1use of uninitialized variable $_ of type Any in numeric context1use of uninitialized variable $_ of type Any in numeric context1» | |||
quester | rn: macro postfix:<!>($n) { quasi { {{{$n}}}+1 } } ; for 3..5 {say $_!}; | 08:24 | |
p6eval | rakudo c3f565: OUTPUT«456» | ||
..niecza v24-17-gd343a2a: OUTPUT«Use of uninitialized value in string context at /home/p6eval/niecza/boot/lib/CORE.setting line 1295 (warn @ 5)  at /home/p6eval/niecza/boot/lib/CORE.setting line 266 (Mu.Str @ 15)  at <unknown> line 0 (ExitRunloop @ 0)  at /home/p6eval/niecza/boot/… | |||
quester agrees that this is enough spam, but idly wonders if this is a rakudo bug | 08:26 | ||
08:26
Pleiades` joined
08:32
FROGGS_ is now known as FROGGS
|
|||
FROGGS | r: say "a" ~~ /<[abc]-[\W]>/ # trying to fix this these days | 08:33 | |
p6eval | rakudo c3f565: OUTPUT«「a」» | ||
FROGGS | r: say "a" ~~ /<[abc]-[\w]>/ # trying to fix this these days | ||
p6eval | rakudo c3f565: OUTPUT«===SORRY!===Error while compiling block : Error while compiling op call: Error while compiling block : Error while compiling block : Unrecognized subtype 'zerowidth' in QAST::Regex cclass» | ||
FROGGS | n: say "a" ~~ /<[abc]-[\w]>/ # check | ||
p6eval | niecza v24-17-gd343a2a: OUTPUT«Match()» | ||
FROGGS | n: say "a" ~~ /<[abc]-[\W]>/ # check | 08:34 | |
p6eval | niecza v24-17-gd343a2a: OUTPUT«#<match from(0) to(1) text(a) pos([].list) named({}.hash)>» | ||
FROGGS | r: say "a" ~~ /<[abc]-[\D]>/ # wrong too | ||
p6eval | rakudo c3f565: OUTPUT«「a」» | ||
FROGGS | n: say "a" ~~ /<[abc]-[\D]>/ # check | ||
p6eval | niecza v24-17-gd343a2a: OUTPUT«Match()» | ||
FROGGS | niecza++ | ||
dalek | pan style="color: #395be5">perl6-examples: 1ea55bc | (L. Grondin)++ | rosalind/aspc-grondilu.pl: style |
08:48 | |
09:06
thou left
09:08
crazedpsyc joined
09:19
bitonic joined
09:24
quester left
09:30
PacoAir joined
09:39
PacoAir left
09:46
Patterner left
09:48
Psyche^ joined,
Psyche^ is now known as Patterner
|
|||
jnthn | FROGGS: That'll be an issue somewhere inside src/QRegex/P6Regex/Actions.pm (in the NQP repo) | 10:06 | |
10:34
snearch joined
|
|||
masak | good forenoon, #perl6 | 10:44 | |
FROGGS | jnthn: I'm already there ;o) | ||
but thanks anyway # guiding new ppl is important | 10:45 | ||
and well appreciated | |||
jnthn | It's setting zerowidth on a cclass. It probably should not do taht ;) | ||
Since subtype says what type of char to match :) | |||
masak | quester: yes, that looks like a rakudobug. | 10:46 | |
masak submits | |||
FROGGS | I've added int .zerotype to QAST::Regex, so there are no compiling issues, but /<[abc]-[\w]>/ still matches "a" | ||
jnthn | No, we don't need to add anything to fix this. | 10:47 | |
Just need to fix cclass_elem or so | |||
Adding something to QAST to fix a bug will be the wrong answer in 99% of cases :) | |||
10:48
am0c joined
|
|||
FROGGS | hmmm, okay | 10:48 | |
masak | grondilu, quester: if you're wanting to spam the channel a bit less next time, don't keep using 'rn' when testing macros and Niecza doesn't even implement them. ;) | 10:49 | |
jnthn | FROGGS: I think the problem is maybe where the zerowidth is being set in assertion:sym<[> | 10:52 | |
10:52
rindolf joined,
spider-mario joined
|
|||
nwc10 | when I see 'rn' I think of en.wikipedia.org/wiki/Rn_%28newsreader%29 (even though I never used it) | 10:52 | |
masak | nr: say "What do you think about when you see 'nr'?" # :) | 10:53 | |
p6eval | rakudo c3f565, niecza v24-17-gd343a2a: OUTPUT«What do you think about when you see 'nr'?» | ||
nwc10 | OK, so is it possible to write a line that acts as a quine? | 10:54 | |
nwc10 isn't proposing to play that one | |||
actually, also, not proposing that as an invitation to everyone to spam the channel | |||
jnthn | r: say 'a' ~~ /<[\w]-[a]>/ | 10:55 | |
p6eval | rakudo c3f565: OUTPUT«#<failed match>» | ||
jnthn | r: say 'b' ~~ /<[\w]-[a]>/ | 10:56 | |
p6eval | rakudo c3f565: OUTPUT«「b」» | ||
jnthn | r: say 'b' ~~ /<[\w]-[\d]>/ | ||
p6eval | rakudo c3f565: OUTPUT«===SORRY!===Error while compiling block : Error while compiling op call: Error while compiling block : Error while compiling block : Unrecognized subtype 'zerowidth' in QAST::Regex cclass» | ||
sorear | n: say $?ORIG | ||
p6eval | niecza v24-17-gd343a2a: OUTPUT«say $?ORIG» | ||
jnthn | r: say 'b' ~~ /<[\w]+[\d]>/ | ||
p6eval | rakudo c3f565: OUTPUT«「b」» | ||
jnthn | r: say 'b' ~~ /<[\w]+[-]>/ | ||
p6eval | rakudo c3f565: OUTPUT«「b」» | ||
jnthn | r: say '-' ~~ /<[\w]+[-]>/ | ||
p6eval | rakudo c3f565: OUTPUT«「-」» | ||
tadzik | hello #perl6 | ||
masak | nwc10: it's been done. | 10:57 | |
nwc10: I'll find the relevant backlog for you. | |||
tadzik! \o/ | |||
tadzik | masak! \o/ | ||
jnthn | r: say 'b' ~~ /<[\w]-[\dz]>/ | ||
p6eval | rakudo c3f565: OUTPUT«「b」» | ||
tadzik | what a day | ||
jnthn | r: say '1' ~~ /<[\w]-[\dz]>/ | ||
p6eval | rakudo c3f565: OUTPUT«「1」» | ||
jnthn | r: say 'z' ~~ /<[\w]-[\dz]>/ | ||
p6eval | rakudo c3f565: OUTPUT«「z」» | ||
jnthn | Hah! That's wrong. | ||
hi tadzik | 10:58 | ||
masak | nwc10: irclog.perlgeek.de/perl6/2012-12-03#i_6208750 irclog.perlgeek.de/perl6/2012-12-03#i_6208799 | ||
jnthn | FROGGS: Untested, but gist.github.com/4523527 may do it | 11:00 | |
nwc10 | thanks | 11:01 | |
masak | oh, but I misattributed the discovery, which was due to TimToady++: irclog.perlgeek.de/perl6/2012-12-03#i_6208783 | 11:04 | |
11:06
PacoAir joined
|
|||
FROGGS | jnthn: will test it | 11:10 | |
11:11
PacoAir left
|
|||
au | std: OUTPUT«===SORRY!===Undeclared name: 'OUTPUT' used at line 1Check failedFAILED 00:00 41m» | 11:12 | |
p6eval | std 7deb9d7: OUTPUT«===SORRY!===Undeclared name: 'OUTPUT' used at line 1Check failedFAILED 00:00 41m» | ||
masak | ;) | ||
that one's been done before too, but usually through the 'ok' variant. | |||
au | yeah, that was obvious :) | 11:13 | |
masak | std: print 'OUTPUT«ok 00:00 41m»' | ||
p6eval | std 7deb9d7: OUTPUT«ok 00:00 42m» | ||
masak | dang :) | ||
au | lol | ||
masak | std: print 'OUTPUT«ok 00:00 42m»' | ||
p6eval | std 7deb9d7: OUTPUT«ok 00:00 42m» | ||
au | although, it's not a quine, as it has no print. | 11:14 | |
masak | troo | ||
au | #pedantry | ||
tadzik | well | ||
std: OUTPUT«ok 00:00 41m» | |||
p6eval | std 7deb9d7: OUTPUT«===SORRY!===Undeclared name: 'OUTPUT' used at line 1Check failedFAILED 00:00 41m» | ||
tadzik shakes fist | |||
masak | still need the quotes. | ||
std: 'OUTPUT«ok 00:00 42m»' | |||
p6eval | std 7deb9d7: OUTPUT«ok 00:00 41m» | ||
masak | dang :) | ||
std: 'OUTPUT«ok 00:00 41m»' | 11:15 | ||
p6eval | std 7deb9d7: OUTPUT«ok 00:00 41m» | ||
masak | apparently, 'print' takes one extra megabyte to parse. | ||
au | or maybe, in an one-in-a-million chance, it just takes an extra byte to parse. | 11:16 | |
tadzik | well, it can't be worse than GNU grep *snicker* | ||
11:22
araujo joined,
araujo left,
araujo joined
11:27
Pleiades` left
11:32
Pleiades` joined
11:42
PacoAir joined,
PacoAir left
11:43
PacoAir joined
11:47
MayDaniel joined
12:10
tokuhiro_ joined
12:13
Pleiades` left
12:15
Pleiades` joined
12:18
SamuraiJack_ joined,
SamuraiJack_ left
12:20
SamuraiJack left
12:33
SunilJoshi joined
12:37
Targen left
12:38
tokuhiro_ left
|
|||
dalek | p: 49e0360 | jnthn++ | src/NQP/Actions.pm: Toss commented out code. |
12:47 | |
p: dae5553 | jnthn++ | src/NQP/Actions.pm: Start removing a seemingly now-unrequired hack. Exactly what this was solving seems lost in the mists of time; no NQP tests fail upon removing it, nor do any Rakudo ones. Tossing it gets rid of some odd code and some QAST::VM usages. |
|||
p: 2a53485 | jnthn++ | src/stage0/ (9 files): Update bootstrap to allow full hack removal. |
|||
p: dd550fc | jnthn++ | src/ModuleLoader.pm: Finish removing set_mainline_module. |
|||
masak | right. having good test coverage means never having to say you're sorry. just toss untested code; obviously it wasn't important enough to merit a test :) | 12:48 | |
jnthn | I think it could well have been working around a problem that no longer exists. | 12:49 | |
masak | ah. | 12:50 | |
moritz | in such cases I usually use git blame to find the commits where it was installed | ||
and look at its commit message | |||
masak | yes, but this time it was "lost in the mists of time" :P | 12:51 | |
which I took to mean un-git-blameable. | |||
moritz | the code was last touched in the PAST -> QAST switchover | 12:52 | |
but seems to have existed previously too | 12:53 | ||
so yes, not easy to git-blame | |||
ie, would take more effort | |||
12:53
rindolf left
|
|||
masak | does that mean that the history spans several repositories? | 12:54 | |
moritz | no | ||
masak | or just that you have to blame, checkout, blame, checkout... ? | ||
moritz | yes | ||
masak | I do that now and then. | ||
nwc10 tends to like the gitweb interface to blame | |||
masak | I don't consider that as "lost in the mists of time", fwiw :P | 12:55 | |
jnthn | You can probably uncover it with enough effort :) | ||
masak .oO( "If I have seen far, it's becuse I can use git blame on other things than HEAD" ) | |||
moritz | "history became legend, legend became myth" | ||
jnthn | I was biased 'cus I wanted to kill the stupid code though :P | 12:56 | |
masak .oO( "If I have seen far, it's becuse I have been standing on the shoulders of other commits" ) | |||
jnthn++ # kills stupid code | |||
jnthn the stupid code-killer! oh wait. | |||
moritz | masak: fwiw you can do git blame <revision> <file> | 12:57 | |
no need to checkout | |||
masak | oh, even better. | ||
jnthn feels happy calling it stupid 'cus he wrote it in the first place ;) | |||
Now to try and make NQP less insane in the MAIN... | 12:58 | ||
moritz | commit 105839b24b014cc76e813e551e73f9c53a16d2af | ||
masak | jnthn: well, no-one is as stupid as oneself enough time-units ago. | ||
moritz++ # archaeologist | |||
moritz | github.com/perl6/nqp/commit/105839...c53a16d2af | ||
jnthn | Um. | 12:59 | |
12:59
SunilJoshi left
|
|||
jnthn | Well, that already doesn't work today for other reasons, so... :) | 13:00 | |
masak | seems I was involved somehow also :P | ||
jnthn | The correcter way to fix that is to structure it like Rakudo | ||
masak | this issue: github.com/perl6/nqp/issues/9 | ||
huh, I never did start toying around with language extensions like I wanted back then... :/ | 13:01 | ||
so much to do, so little time... | |||
jnthn | masak: These days there's little reason to toy around with them in NQP when you can do what perl6-debug does and do them on full-blown Perl 6 :) | ||
masak | hm, maybe. | 13:02 | |
I think I meant syntactical extensions, though. sublanguages. | |||
FROGGS | jnthn: btw, after patching the P6Regex/Actions.nqp it get stuck on compiling NQPP5QRegex.pm | 13:03 | |
I see that it calls .add_edge in NFA at the end, but I dont see why it hangs | |||
jnthn | FROGGS: Hmm | 13:06 | |
13:09
SunilJoshi joined
13:30
tokuhiro_ joined
|
|||
dalek | p: b276aab | jnthn++ | src/NQP/Actions.pm: Handle main using CompUnit :main(...). This feature was in QAST pretty much from the start, but NQP never adopted it, since it could get away with Parrot auto-invoking the first sub as the mainline. That's not very portable, though, so now NQP uses :main(...) properly. |
13:36 | |
13:37
SunilJoshi left
14:03
SunilJoshi joined
14:04
not_gerd joined
|
|||
not_gerd | hello, #perl6 | 14:04 | |
r: /<![\s]> ./ | 14:05 | ||
p6eval | rakudo c3f565: OUTPUT«===SORRY!===Error while compiling block : Error while compiling op call: Error while compiling block : Error while compiling block : Unrecognized subtype 'zerowidth' in QAST::Regex cclass» | ||
FROGGS | r: /<-[\s]> ./ | ||
p6eval | rakudo c3f565: ( no output ) | ||
FROGGS | hmmm | ||
r: /<![\S]> ./ | 14:06 | ||
p6eval | rakudo c3f565: OUTPUT«===SORRY!===Error while compiling block : Error while compiling op call: Error while compiling block : Error while compiling block : Unrecognized subtype 'zerowidth' in QAST::Regex cclass» | ||
14:13
_jaldhar joined
14:25
erkan left
14:26
_jaldhar left
|
|||
not_gerd | r: (grammar { token TOP { <print> } }).parse("").say | 14:27 | |
p6eval | rakudo c3f565: OUTPUT«<anon><-1693268129>Can not get attribute '$!pos' declared in class 'Cursor' with this object in regex TOP at /tmp/477bz1xPZF:1 in method parse at src/gen/CORE.setting:10624 in block at /tmp/477bz1xPZF:1» | ||
14:27
marloshouse left
14:28
_jaldhar joined
|
|||
dalek | p-jvm-prep: 73e6c6e | jnthn++ | t/qast_variable.t: Add test for dynamic scoped lookup/binding. |
14:29 | |
p-jvm-prep: 52cf4ce | jnthn++ | lib/QAST/JASTCompiler.nqp: Fix bug that could lead to lack of wanting. |
|||
p-jvm-prep: aa48e53 | jnthn++ | / (2 files): Implement contextual variable lookup and binding. |
|||
p-jvm-prep: 6da3aa6 | jnthn++ | src/org/perl6/nqp/runtime/StaticCodeInfo.java: Add missing null checks. |
|||
not_gerd sent bug report for the 2nd error | 14:34 | ||
14:36
marloshouse joined
|
|||
not_gerd | ENOAUTOREPLY - something wrong with the bug tracker? | 14:39 | |
14:39
erkan joined,
erkan left,
erkan joined
|
|||
dalek | p-jvm-prep: 5e37b80 | jnthn++ | t/qast_6model.t: Add test for isnull/isnull_s. |
14:42 | |
p-jvm-prep: eed37bf | jnthn++ | / (2 files): Implement isnull/isnull_s. |
|||
p-jvm-prep: c471c4e | jnthn++ | docs/ (2 files): ROADMAP and LHF updates. |
|||
14:43
SunilJoshi left,
SunilJoshi1 joined
14:52
fgomez left
14:53
not_gerd left
14:54
consus joined
14:55
not_gerd joined
|
|||
not_gerd | bye, #perl6 | 14:56 | |
14:57
not_gerd left
|
|||
dalek | p-jvm-prep: fbf9671 | jnthn++ | src/org/perl6/nqp/runtime/Ops.java: Move misplaced code. |
15:06 | |
p-jvm-prep: 5e79517 | jnthn++ | lib/QAST/JASTCompiler.nqp: Fall back to generic box/unbox. |
|||
p-jvm-prep: a127b46 | jnthn++ | lib/QAST/JASTCompiler.nqp: QAST::VM handling. |
|||
p-jvm-prep: 4bcdfeb | jnthn++ | / (3 files): Implement/test nqp::can(...). To the extent we implement method dispatch, anyway. |
|||
15:10
consus left,
consus joined
15:13
rindolf joined,
SunilJoshi joined
15:14
SunilJoshi1 left
15:16
SunilJoshi left
15:19
SunilJoshi joined
15:24
consus left
15:25
consus joined
|
|||
masak | time to do some more sprintf hacking :) | 15:27 | |
does nqp allow you to initialize a hash when you declare it? I find nothing in 18-associative.t to suggest it does. | 15:37 | ||
15:37
SunilJoshi1 joined,
SunilJoshi left
|
|||
jnthn | my %h := nqp::hash('key', 'value', 'key', 'value'); | 15:37 | |
masak | ooh. | 15:38 | |
thank you. | |||
moritz | nqp: my @a := nqp::list('a', 'b', 'c); say(@a) | 15:43 | |
p6eval | nqp: OUTPUT«Confused at line 2, near "my @a := n"current instr.: 'panic' pc 13231 (src/stage2/gen/NQPHLL.pir:4687) (src/stage2/gen/NQPHLL.pm:328)» | ||
moritz | nqp: my @a := nqp::list('a', 'b', 'c'); say(@a) | ||
p6eval | nqp: OUTPUT«3» | ||
15:44
spider-mario left
|
|||
masak | nqp: my @a := nqp::list('a', 'b', 'c'); say(@a[2]) | 15:49 | |
p6eval | nqp: OUTPUT«c» | ||
15:50
b1rkh0ff joined
|
|||
dalek | p-jvm-prep: f7b919c | jnthn++ | lib/QAST/JASTCompiler.nqp: Support parameters being bound into lexicals. Somehow, got this far with them just going into locals! |
15:50 | |
p-jvm-prep: 93693b2 | jnthn++ | t/qast_arguments.t: Test for parameters bound into lexicals also. |
|||
p-jvm-prep: 79ffc64 | jnthn++ | lib/QAST/JASTCompiler.nqp: Add a way to disable SC compilation for now. |
|||
p-jvm-prep: d7ddb25 | jnthn++ | lib/QAST/JASTCompiler.nqp: Do something sensible with :load in CompUnit. As much as we can do until we actually support some kind of module loading, anyway. |
|||
p-jvm-prep: 0b67cd7 | jnthn++ | lib/QAST/JASTCompiler.nqp: Better error for unhandled node types. |
|||
15:51
QK joined
15:52
QK left,
consus left
|
|||
masak | what's a nice nqp version of %h.exists($elem) ? | 15:57 | |
15:57
b1rkh0ff left,
b1rkh0ff joined
|
|||
masak toys with the idea of iterating through the hash, looking for the right key, loaded-uzi-style | 16:00 | ||
Ultali | r: sub test() {return "hi";} say test(); | 16:01 | |
p6eval | rakudo c3f565: OUTPUT«===SORRY!===Two terms in a rowat /tmp/4DpGXL469f:1------> sub test() {return "hi";} ⏏say test(); expecting any of: postfix infix or meta-infix infix stopper statement end statement … | ||
Ultali | r: sub test() {return "hi";}; say test(); | ||
p6eval | rakudo c3f565: OUTPUT«hi» | ||
masak | ah, nqp::defined(%h<elem>) | ||
it works, because I don't store any undefined values in %h | |||
Ultali | what's up with that extra semicolon? | 16:02 | |
jnthn | nqp::existskey(%h, 'elem') | ||
masak | ah, gracias. | ||
Ultali: it's not "extra". it separates two statements. | |||
jnthn | Ultali: A } is only a statement terminator if it's the last thing (modulo whitespace) on a line. | 16:03 | |
masak | Ultali: Perl 5 has taught you bad habits. time to unlearn. | ||
Ultali | it's not just perl5 though... I only noticed because I was doing perl6 -e 'blah..' | ||
it makes the -e kind of lame | |||
masak | no, it's not just Perl 5. that's true. | 16:04 | |
but I disgree about it making -e lame. | |||
Ultali | well it means I have to write more semicolons | ||
masak | it makes the language much more consistent. | ||
yes. | |||
moritz | but if you are into golfing, you'll love meta operators :-) | 16:05 | |
masak | and in general, Perl 6 requires you to write a bit more than Perl 5 to make one-liners. | ||
jnthn | you already wrote one semicolon more than you needed :) | ||
masak | oh, that too. | ||
jnthn | r: sub test() {return "hi"}; say test(); | ||
p6eval | rakudo c3f565: OUTPUT«hi» | ||
jnthn | :) | ||
Ultali | jnthn: yeah thats because I was playing with how many I needed :) | ||
masak | and those two pairs of parens are totally unnecessary. | ||
Ultali | pasted the max semicolons version | ||
masak | r: sub test {return "hi"}; say test | 16:06 | |
p6eval | rakudo c3f565: OUTPUT«hi» | ||
flussence | r: say { 'hi' }.() | ||
p6eval | rakudo c3f565: OUTPUT«hi» | ||
masak | and why are you doing an explicit return? | ||
Ultali | if I was trying to be minimal say "hi" | ||
masak | Ultali: point being, if you want golfing, semicolons weren't your biggest concern ;) | 16:07 | |
Ultali | yeah I know, its just something I noticed | ||
and wondered if it was part of the spec | |||
masak | it is. | ||
Ultali | k k | ||
masak | see S02. | ||
Ultali | frankly its a good idea, semicolon magic in javascript has bitten me more than once | ||
masak | yes, but the semicolon magic in JavaScript is especially bonkers. | 16:10 | |
it's disturbed in a way you can only achieve if you try to be helpful as a language designer, but don't know how. | 16:11 | ||
dalek | p-jvm-prep: e3cf74b | jnthn++ | lib/QAST/JASTCompiler.nqp: Fix a code-gen thinko. |
||
p-jvm-prep: cd6695e | jnthn++ | / (2 files): A couple of fixes to nqp-jvm-cc frontend. Can be run as: nqp nqp-jvm-cc.nqp --setting=NULL -e "nqp::say('omg jvm!')" It cross-compiles the NQP code to JVM bytecode, then runs the class file that is produced. Note, no setting or MOP yet, so it won't do much at all. |
|||
masak | \o/ | 16:12 | |
jnthn++ | |||
tadzik | oh oh | 16:13 | |
masak | I know, I know, oh oh oh! | ||
16:13
SamuraiJack joined
|
|||
tadzik | :D | 16:13 | |
I met an Imperial Unit today in a shopping mall, with a couple of stormtroopers, a jawa and an an officer | 16:15 | ||
They denied being a historical reenactment group. I find their lack of faith disturbing | |||
masak | heh. | 16:17 | |
?eval sprintf "%10%" | 16:20 | ||
(locally, gives ' %') | |||
r: say sprintf "%10%" | |||
p6eval | rakudo c3f565: OUTPUT«'%' is not valid in sprintf format sequence '%10%' in sub sprintf at src/gen/CORE.setting:2414 in block at /tmp/TQgr3KaM4Z:1» | 16:21 | |
masak | n: say sprintf "%10%" | ||
p6eval | niecza v24-17-gd343a2a: OUTPUT«%» | ||
masak | sorear: likely a Nieczabug. | ||
16:21
SamuraiJack_ joined
|
|||
masak | if someone feels so inclined, I'd be happy to learn what C does with '%10%' :) | 16:21 | |
16:22
SamuraiJack left
|
|||
masak is aiming for a Ph.D. in sprintf | 16:22 | ||
16:24
SamuraiJack_ left
|
|||
flussence | rn: say sprintf '%2$s %1$s', 'a', 'b' | 16:24 | |
p6eval | niecza v24-17-gd343a2a: OUTPUT«b a» | ||
..rakudo c3f565: OUTPUT«'$' is not valid in sprintf format sequence '%2$' in sub sprintf at src/gen/CORE.setting:2414 in block at /tmp/ylmrNnNq8H:1» | |||
flussence | eval say sprintf '%2$s %1$s', 'a', 'b' | ||
eval: say sprintf '%2$s %1$s', 'a', 'b' | |||
16:24
SamuraiJack joined
|
|||
flussence | no p5bot? | 16:24 | |
masak | apparently not. | 16:26 | |
(yes, I intend to do %2$s et al. I'm not in a big hurry to do so. there's more fun fruit to pick before that) :) | 16:27 | ||
masak peruses 'perldoc -f sprintf' and 'man 3 sprintf' | 16:28 | ||
16:29
lincolnthree joined
|
|||
nwc10 | surely an nqp-jvm bot would be more interesting than a p5bot. I've got /usr/bin/perl already :-) | 16:31 | |
tadzik | the nqp-jvm frontend doesn't quite work for me | 16:32 | |
"load_bytecode" couldn't find file 'helper.pbc' | |||
jnthn | tadzik: make helper.pbc :) | ||
nwc10 | I hit that. I suspect that the makefile targets are not quite right | ||
tadzik | I'm disappointed in the lack of 'make cake' ;P | ||
nwc10 | I can't figure out what CLASSPATH should be on my mac | ||
jnthn | yeah, was about to fix that, then got distrcated by a code-gen bug :) | ||
tadzik | now To compile on the JVM backend, QAST::VM must have an alternative 'jvm' | ||
jnthn | tadzik: you need bleeding edge NQP also | 16:33 | |
tadzik | oh, update time :) Ok, thanks | ||
16:35
SamuraiJack_ joined,
SamuraiJack left
16:47
lincolnthree left
16:48
am0c left
|
|||
moritz | if anybody is looking for a low-hanging fruit and wants to write a few lines of Perl 6 code: write a test for rt.perl.org/rt3/Ticket/Display.html?id=114202 | 17:04 | |
17:07
SunilJoshi1 left
|
|||
diakopter | jnthn: test 6 of qast_variable.t NoSuchMethodError: org.perl6.nqp.runtime.Ops.getdynlex(Ljava/lang/String;Lorg/perl6/nqp/runtime/ThreadContext;)Lorg/perl6/nqp/sixmodel/SixModelObject; | 17:07 | |
17:08
SunilJoshi joined
|
|||
jnthn | diakopter: Sounds like some out-of-date .class file | 17:08 | |
17:08
xy joined
17:09
xy left
|
|||
diakopter | why wouldn't the makefile fix that | 17:09 | |
jnthn | diakopter: Because the makefile doesn't yet compile the Java bits | ||
diakopter | so.. how to fix :) | 17:11 | |
jnthn | Open Eclipse, and hope it does the right thing? ;) | 17:12 | |
diakopter | oh yeahs | ||
dalek | p-jvm-prep: 92d7fa2 | jnthn++ | lib/QAST/JASTCompiler.nqp: A couple of statements code-gen fixes. |
17:13 | |
p-jvm-prep: e785da0 | jnthn++ | Makefile: Should compile helper.pbc by default. |
|||
p-jvm-prep: a1cb50f | jnthn++ | lib/QAST/JASTCompiler.nqp: Fix busted void handling. |
|||
diakopter | yeah, had to hit F5 | ||
timotimo | moritz: seems like rt.perl.org is down at the moment :| | 17:25 | |
moritz | timotimo: the bug was over-sharing of anon variables in the same scope | 17:28 | |
r: my @ = 1, 2, 3; say my @ | 17:29 | ||
p6eval | rakudo c3f565: OUTPUT«» | ||
moritz | that used to produce 1 2 3 | ||
masak | oh ouch. | 17:31 | |
masak .oO( highlander anonymous variables :P ) | |||
timotimo | does that example code already provide a good test case? | 17:35 | |
masak | yes. | 17:36 | |
oho, I think I found Perl 5's implementation of sprintf: github.com/mirrors/perl/blob/3041a...v.c#L10244 | |||
timotimo | in that case, i can totally do that right now :) | ||
masak | might come in handy. | ||
rnp: say 11391 - 10244 | 17:38 | ||
p6eval | rakudo c3f565, niecza v24-17-gd343a2a, pugs: OUTPUT«1147» | ||
masak | 1kLOC. not so bad given what it does. | ||
nwc10 | masak: oh, I wasn't aware that you didn't know where it was. I could have told you easily :-) | ||
or :-( | |||
masak | nwc10: no no, let the new kid figure it out by himself ;) | 17:39 | |
(but thanks. I'll keep that in mind.) | |||
nwc10 | jnthn: firstly, I seem to need to do s/import com.sun.org.apache.bcel.internal.Constants/import org.apache.bcel.Constants/ to get stuff to compile | 17:40 | |
timotimo builds a fresh rakudo first | |||
nwc10 | for reasons I don't understand, this at the top level seems to build stuff: | ||
gcj -C -I src -I 3rdparty/bcel/bcel-5.2.jar src/org/perl6/nqp/jast2bc/JASTToJVMBytecode.java | |||
masak | Rule #1 of sublanguage design: a space makes your term look like *two* visual pills, not one. | ||
(I'm looking at you, '% d') | 17:41 | ||
nwc10 | secondly, this seems to get *close* to running the tests | ||
CLASSPATH=`pwd`/src:`pwd`/3rdparty/bcel/bcel-5.2.jar:. make test | |||
jnthn | nwc10: The test runner invokes the JVM with -cp already | ||
nwc10 | oh, bother. I meant, that gcj invocaiton above, and this too: gcj -C -I src -I 3rdparty/bcel/bcel-5.2.jar src/org/perl6/nqp/jast2bc/JASTToJVMBytecode.java | 17:42 | |
but I get errors Exception in thread "main" java.lang.NoClassDefFoundError: RunTest | |||
OK. make test has that error too | 17:43 | ||
(without the CLASSPATH bodge) | |||
jnthn | Hm. | ||
nwc10 | please note that I do not know what I am doing here | ||
17:43
stevan_ joined
|
|||
jnthn | nqp t/jast.t gives that error also? | 17:44 | |
nwc10: oooh... | |||
nwc10 | yes, snap | ||
jnthn | nwc10: t/helper.nqp hardcodes the name javac as the compiler it looks for | 17:45 | |
nwc10 | (this is on x86_64 debian. I don't seem to have a working gjc on my mac) | ||
er, gcj | |||
if I don't have a working Java, that's even better. Harder to be pwned. | 17:46 | ||
masak | rn: say sprintf '<%*s>', 6, "a" | ||
p6eval | rakudo c3f565: OUTPUT«< a>» | ||
..niecza v24-17-gd343a2a: OUTPUT«Unhandled exception: invalid format specifier at /home/p6eval/niecza/lib/CORE.setting line 1301 (sprintf @ 4)  at /tmp/c3g1_apnzJ line 1 (mainline @ 3)  at /home/p6eval/niecza/lib/CORE.setting line 4218 (ANON @ 3)  at /home/p6eval/niecza/lib/CORE.s… | |||
tadzik | there's RunTest.java somewhere | ||
masak | rakudo++ | ||
sorear: would you like me to collect sprintf bugs into an issue? | |||
nwc10 | tadzik: but there isn't a JASTTest, that it needs | 17:47 | |
tadzik | oh, I see | 17:48 | |
jnthn | need to done some dinner stuff, back in a bit | 17:49 | |
*do | |||
nwc10 | enjoy | ||
not sure when I'll be gone, and after that, when I'll be back | |||
masak | nothing is certain. | 17:50 | |
masak .oO( "sprintf. You will never find a more wretched hive of exceptions and special cases. We must be cautious." ) | 17:57 | ||
nwc10 | yes. that roughly sums it up | 17:59 | |
18:00
snearch_ joined
|
|||
masak | and yet, this feels like a smaller and more contained project than pack/unpack, which I never really got anywhere with. | 18:01 | |
perhaps after I finish sprintf I'll have a second look at pack/unpack. | 18:02 | ||
18:12
marloshouse left
18:16
marloshouse joined
18:18
SunilJoshi left
18:22
Su-Shee joined
|
|||
Su-Shee | good evening everyone.. | 18:22 | |
tadzik | hey Su-Shee | 18:24 | |
18:25
b1rkh0ff left
|
|||
masak | Su-Shee! \o/ | 18:25 | |
Su-Shee | everybody seen the nice "perl is a dead end" talk already? :) that was funny. | 18:29 | |
tadzik | seen the slides, yeah | ||
aloha | the slides, yeah was last seen in 15718 days 18 hours ago . | ||
tadzik | go home aloha. You're drunk | ||
Su-Shee | the slides I meant, yes. | 18:30 | |
tadzik | actually, I'm most interested in why isn't p5-mop happening | ||
I'm not in position to buy stevan_++ a beer tho :) | |||
Su-Shee | tadzik: I just love a good rant and a friendly kick :) | ||
dalek | ast: b905097 | (Timo Paulssen)++ | S04-declarations/my.t: a small test for RT #114202: oversharing my @; % |
18:31 | |
18:38
b1rkh0ff joined
18:49
rindolf left
18:58
snearch_ left,
spider-mario joined
19:18
ilogger2 joined,
ChanServ sets mode: +v ilogger2
|
|||
tadzik | ah, I see | 19:25 | |
stevan_: what is it, ooc? | 19:27 | ||
stevan_ | occ? | 19:28 | |
tadzik | out of curiosity | ||
as in: I'm probably not able to help anyway :) | |||
stevan_ | tadzik: you will have to ask doy or rafl | 19:29 | |
tadzik | ok | 19:30 | |
Su-Shee | stevan_: how was the resonance in live about your talk? | 19:31 | |
tadzik | I regret not seing the faces of the audience when you revealed scala | ||
watching the slides I was like "oh, yeah, not this, not that, just say already that it's going to be C...... oh." | 19:32 | ||
Su-Shee | well so far I've read mostly a bunch of tired "meh, won't work anyways" comments here and there (set aside vti and sawyerx :) | 19:34 | |
colomon | quick summary for those of us unable to read the slides at the moment? | 19:37 | |
diakopter | Perl 5 has problems; Perl 6 is the future; I'm reimplementing Perl 5 and improving it | 19:38 | |
colomon | reimplementing Perl 5 in scala? | ||
tadzik | aye | ||
github.com/stevan/moe | |||
colomon | awesome | ||
tadzik | real AST, concurrency, and SUBROUTINE SIGNATURES damnit | ||
or so I hope:) | |||
Su-Shee | just click through the slides, they're pretty funny, too :) | 19:42 | |
well at least on my scale of techie humor.. | |||
colomon | I don't know why, but CHrome has been an absolute pig on my machine the last couple of days -- routine 100% CPU utilization, etc. So I'm running without any sort of browser at all at the moment so the machine runs fast enough for me to try to work. | 19:43 | |
$work, I mean. | |||
stevan_ | Su-Shee: the audience responded pretty well actually | 19:44 | |
tadzik: Scala was met with a meh | |||
but they can try and write it in Java if they want | |||
my opinion on C is that it is premature optimization now | |||
Su-Shee | \o/ Jerl! ;) | ||
doy | it also misses the point | ||
stevan_ | this is an experiment | ||
this is Pugs for Perl 5 | |||
this is not Parrot for Perl 5 | 19:45 | ||
colomon | stevan_++ # Pugs5 | ||
doy | having the base implementation in c misses out on the entire opportunity to move off of the single backend sort of vm | ||
Su-Shee | stevan_: you made that pretty clear in the slides.. | ||
stevan_ | yeah though I am not sure that has been communicated outwards effectively | 19:46 | |
stevan_ really needs to write an F.A.Q. | |||
Su-Shee | well I read some motivating butt kicking in it too, but that might just be me. what's the english word.. envigorating? | ||
invigorating. | 19:47 | ||
masak | aww, stevan_ just quit. | 19:50 | |
I just finished his slide deck and I wanted to karma him so much. | |||
ah well, not too late, I guess. | |||
doy | yeah, he just left for his flight | ||
masak | do I karma 'stevan' or 'stevan_'? :) | 19:51 | |
karma stevan | |||
aloha | stevan has karma of 2. | ||
masak | karma stevan_ | ||
aloha | stevan_ has karma of 1. | ||
masak | stevan++ stevan++ stevan++ stevan++ stevan++ stevan++ stevan++ stevan++ stevan++ stevan++ stevan++ stevan++ stevan++ stevan++ stevan++ stevan++ | ||
karma stevan | |||
aloha | stevan has karma of 3. | ||
masak | heh. | ||
diakopter | :) | ||
colomon | stevan++ | ||
since I karma'd the wrong one earlier | 19:52 | ||
nwc10 | phenny: tell jnthn ~/bin/javac as a shell script to invoke gcj plus first hunk of this gets t/jast.t passing. All others fail. Error is "Could not find the main class: QAST2JASTOutput. Program will exit." strace reveals that QAST2JASTOutput.class is being opened and read. | 19:53 | |
phenny | nwc10: I'll pass that on when jnthn is around. | ||
timotimo | r: use Test; is (my &), Any; | ||
p6eval | rakudo c3f565: OUTPUT«use of uninitialized value of type Any in string context in sub is at lib/Test.pm:81use of uninitialized value of type Any in string context in sub is at lib/Test.pm:81ok 1 - » | ||
timotimo | how do i best get rid of this error? | ||
Su-Shee | masak: so I take it you like the idea? ;) | ||
timotimo | r: use Test; ok (my &) == Any; | ||
p6eval | rakudo c3f565: OUTPUT«use of uninitialized variable anon of type Any in numeric context in block at /tmp/jlV6YOQ6IR:1use of uninitialized value of type Any in numeric context in block at /tmp/jlV6YOQ6IR:1ok 1 - » | ||
timotimo | r: use Test; ok (my &) eqv Any; | 19:54 | |
p6eval | rakudo c3f565: OUTPUT«ok 1 - » | ||
timotimo | is that a good way to do it? | ||
masak | Su-Shee: this idea has been floating around for at least two years in discussions and stuff. I'm glad someone is doing something about it. if anyone has a chance of success, it's stevan++. | 19:55 | |
colomon | what's the big picture on what he's trying to do? | 19:56 | |
masak | Su-Shee: in my mind, it had gotten the label "Perl 5 and a half", because it is a cleanup of Perl 5 that aims to get closer to Perl 6. | ||
colomon: reimplementation of Perl 5. | |||
colomon: but with sanity. | 19:57 | ||
colomon | masak: understood that, but just to be an implementation of Perl 5? or is there a larger plan? | ||
masak | it's not clear to me that any implementation of Perl 6 will ever be able to talk to perl (the Perl 5 runtime) very successfully. there is a much larger chance of Perl 6 and Perl 5-and-a-half interoperating. | 19:58 | |
colomon | yeah, I was just wondering if Niecza and scala on .net could work together... | ||
masak | you'll have to ask sorear about that. | 19:59 | |
colomon | sorry, I meant p5.5 on scala on .net. :) | ||
masak | heh, I read you that way :) | 20:00 | |
colomon | I'm pretty sure niecza can work with anything on .net in theory. | ||
_sri | scala does seem a lot less annoying than java | 20:03 | |
doy | i keep hearing good things about it | ||
colomon had a remarkably positive response to hearing it mentioned in this context, dunno why. | 20:05 | ||
masak | $dayjob wants me to give courses in it. which means that there is interest. | ||
Su-Shee | I see it quite a bit in startup jobs.. | 20:11 | |
masak | yeah. | 20:14 | |
Su-Shee | masak: how does "perl" in general look in sweden, btw? | 20:15 | |
jnthn | nwc10: Does javap produce anything sensible on that file? That is, does it actually contain stuff? | 20:16 | |
phenny | jnthn: 19:52Z <nwc10> tell jnthn ~/bin/javac as a shell script to invoke gcj plus first hunk of this gets t/jast.t passing. All others fail. Error is "Could not find the main class: QAST2JASTOutput. Program will exit." strace reveals that QAST2JASTOutput.class is being opened and read. | ||
masak | Su-Shee: .pm groups are quite inactive. the only live one I know of is Stockholm.pm, really. a handful of big companies still use Perl. I've been teaching it some in the past year. | 20:17 | |
Su-Shee | masak: and job-wise? | ||
masak | Su-Shee: so, not dead but not impressively alive either. | ||
Su-Shee: I've been doing consulting work with Perl. there are openings for this, especially because good Perl developers seem few and far between. | 20:18 | ||
Su-Shee | masak: I'm always a little taken aback by us/uk postings about "perl is alive and kicking" in terms of jobs and cpan growth.. | ||
masak: yes, because many abandoned it and are doing something else... | |||
masak | right. | ||
Su-Shee | masak: set aside my last job I haven't done perl in years before.. | ||
masak | I've been doing Perl in most of my jobs. | 20:21 | |
but it might be because I like it, and had free-enough hands to choose my tools. | 20:22 | ||
Su-Shee | masak: in private I used it a lot and then I wanted a perl job again, but sadly it usally means "cleaning up horrible perl code" and not "doing shiny new things in a shiny startup with interesting ideas" | 20:23 | |
masak | I've been in both sorts of job. they are very different. | 20:25 | |
but I suspect I have a higher tolerance for cleaning up legacy code than most do. | 20:26 | ||
I enjoy writing tests after the fact. :) | |||
Su-Shee | oh I don't mind it per se, but it's not really a thing to showcase your language.. | ||
I like cleaning up in general, because it's so satisfying afterwards ;) | |||
doy | the trick is to find people willing to pay you for cleaning up code | 20:28 | |
moritz | no, the trick is to find people willing to let you write new code | ||
much more fun :-) | |||
colomon | :) | ||
colomon would be happy if people would stop finding bugs in his old code for six months or so... | 20:29 | ||
doy | that depends a huge amount on what the existing code looks like | ||
(: | |||
Su-Shee | I don't mind fixing bugs, too :) | ||
moritz | depends on the bugs :-) | 20:30 | |
an application at $work has its own custom (and horrible, I might add) error handling module | |||
colomon | Su-Shee: I don't mind fixing sane bugs. | ||
moritz | and on newish perls it complains that goto into a construct is deprecated | 20:31 | |
that will be so much "fun" to fix | |||
20:31
MayDaniel joined
|
|||
colomon | The bug I'm looking at right now was first reported back in, oh, August or so. Only every reported by one customer. (At least it's completely reproducible with his data.) | 20:33 | |
Su-Shee | colomon: I gues it's a streak of classical housewife and maid in me - cleaning up after the guys... ;) | ||
20:33
bluescreen10 joined
|
|||
colomon | Rakudo got noticeable optimizations months ago attempting to get one of the programs I wrote to analyze the data that doesn't work running. | 20:33 | |
Never actually worked for this file, alas. | |||
The big problem here is the incredibly awful STEP standard for CAD. | 20:34 | ||
masak | Su-Shee: I got a sudden impulse to ask you not to be so sexist... :P | ||
moritz | (the error handling system consists of "return problem($string)", and &problem stores the error message somewhere, and returns undef; then you have to call report_error($numeric_flags) to actually spit them out) | ||
20:35
stevan_ joined
|
|||
masak | stevan_++! \o/ | 20:35 | |
stevan_ | masak: ahoy | ||
20:35
slayer101_ joined
|
|||
Su-Shee | masak: haha, you realize that reality still says I'm not even really joking? ;) | 20:35 | |
20:36
Targen joined
|
|||
moritz | reality is sexist too, occasionally | 20:37 | |
masak | reality has a clearly sexist bias. | ||
Su-Shee | "occasionally.." :) | ||
masak | stevan_: sir, I approve of you wholeheartedly tonight. I will buy you at least one beer next time we meet. :) | 20:38 | |
stevan_: best of luck on your admittedly insane venture. :D | |||
stevan_ | masak: thank you :) | ||
masak | and don't listen to the people saying Scala was a bad choice. Scala is alright. | 20:39 | |
it even has a bit of that Perl 6 feel to it. | |||
Su-Shee | "that Perl 6 feel".. aha :) | 20:41 | |
nwc10 | jnthn: 2512 bytes, file says that it's compiled Java class data, version 49.3 | ||
jnthn | nwc10: That's...really odd. | 20:42 | |
nwc10: (that it doesn't load...the file seems legit) | |||
stevan_ | masak: yes, thats how i feel about it too | 20:48 | |
I remember looking at it a lot with Audrey back in the Pugs days | |||
there is even a Class::MOP test that implements scala style traits | |||
masak | stevan_: I'm very glad someone is investigating the "clean up Perl 5" road. | ||
stevan_ | masak: I just got sick of talking to people about this (and I have been talking to people about this for YEARS!) | 20:49 | |
masak | aye. | ||
stevan_++ | |||
nwc10 | jnthn: other think that makes little sense is this: | 20:52 | |
nqp nqp-jvm-cc.nqp --setting=NULL -e "nqp::say('omg jvm')" | |||
To compile on the JVM backend, QAST::VM must have an alternative 'jvm' | |||
current instr.: 'as_jast' pc 45158 (QASTJASTCompiler.pir:15069) (lib/QAST/JASTCompiler.nqp:2003) | |||
... | |||
whereas `nqp t/jast.t` works. | 20:53 | ||
jnthn | nwc10: That just means your NQP is too old | ||
nwc10 | it's the *same* NQP | ||
colomon | jnthn++ # improved rakudo error messages (at least, I think that was him) | ||
Su-Shee | explain a laysperson how difficult it is to write a perl in <whatever> language if it's "just" about writing the same language with some improvements? | ||
aloha | positive: nothing; negative: nothing; overall: 0. | ||
nwc10 | oh, crap, hanon | 20:55 | |
jnthn | nwc10: Yes, but the changes that went into NQP today to make the QAST trees it produces be suitable for turning into JVM code are needed by the cross-compiler, but not by the stuff t/jast.t does (which isn't using NQP as a frontend, just to drive tests) | ||
nwc10 | aha | ||
moritz | Su-Shee: suppose you have a hospital where the staff has 25 years of experience running it. Now you fire all people at once. How difficult can it be to achieve the previous performance, plus some improvements? | ||
Su-Shee: same for reimplementing perl :-) | |||
colomon is debugging by adding printfs to his C++ code, then writing a p6 script to analyze the output from the printfs. ;) | 20:58 | ||
Su-Shee | moritz: well as you're hiring new people who actually already worked in other hospitals - probably comparatively seemless.. also it's a bad example because I know how emegencies etc work, I worked in one for two years. :) | ||
masak | could we just disconnect aloha? she's drunk, as tadzik pointed out. | ||
Su-Shee | moritz: seamless. | ||
moritz | Su-Shee: ok. The better analogy is probably building an entire new hospital | 20:59 | |
20:59
MayDaniel left
|
|||
moritz | from ground, and with just one or two persons | 20:59 | |
20:59
slayer101_ left
|
|||
Su-Shee | moritz: no, stop the metaphor, it really doesn't work :) | 20:59 | |
stevan_ | burning the entire hospital to the ground, then reassembling it from the ashes | 21:00 | |
Su-Shee | moritz: ok, then compare it to the other rubies and pythons.. they're all new complete implementations on another stack, if I remember correctly.. they came to life pretty fast and gotten stable? | ||
stevan_ | and no photographic record to work from | ||
moritz | Su-Shee: always depends on the complexity of the building and prcoesses (languages/compilers) you're trying to build | 21:02 | |
Su-Shee | moritz: I'm deliberately not using schemes and lisps and smalltalks as an example. | ||
moritz | some aren't too hard to do, some are more like Elbphilharmonie or BER | ||
Su-Shee | moritz: yes, moritz, I figured as much ;) | 21:03 | |
nwc10 | jnthn: OK. yes. PEBCAK. If I rebuild nqp as master (d'oh! - how many times did you have to say that) | 21:06 | |
then nqp nqp-jvm-cc.nqp --setting=NULL -e "nqp::say('omg jvm')" | 21:07 | ||
goes boom like the tests: | |||
oh. | |||
moritz | stevan_: one piece of advice from Perl 6 land: don't call it "Perl" if it's not backwards compatible to Perl 5 :-) | ||
it's way too late to change the name of Perl 6, but many people wish it hadn't been called Perl | 21:08 | ||
nwc10 | it does after I fix it to add `src` to the classpath | ||
moritz | or call it "<mumble> Perl", so people can just call it "<mumble>" eventually :-) | 21:09 | |
jnthn | nwc10: bin should be in classpath, not src | ||
nwc10 | what goes in bin? | ||
masak | moritz++ # "<mumble> Perl" advice | ||
jnthn | nwc10: The results of compiling the stuff in src | ||
masak | that's worked very well with Rakudo Perl. | 21:10 | |
nwc10 | aha. | ||
jnthn | nwc10: Where did gcj put the .class it made? | ||
nwc10 | gcj was dumping foo.class as a file next to foo.java | ||
jnthn | Ah | ||
nwc10 | aye. aha | ||
Su-Shee | name it after what language is used to implement it.. Jerl, Scerl, Lerl, Cerl.. ;) | ||
nwc10 | I told you that I don't know what I am doing :-) | ||
stevan_ | moritz: thats why it is called Moe | ||
jnthn | nwc10: Did you get all the things in src? | ||
moritz | stevan_: oh right :-) | ||
nwc10 | I believe so | ||
jnthn | nwc10: Oh, oculd it be that the class path is missing . | ||
? | |||
Maybe it's not looking in the current directory...which is where the file is. | 21:11 | ||
stevan_ | jnthn: just a warning, doy and I will be picking your brain a lot :) | ||
moritz | do steal from 6model :-) | ||
colomon is wondering if the CAMERA_IMAGE objects are messing up his STEP translator. | |||
stevan_ | moritz: we will be stealing from p5-mop, whcih stole from 6model,... so yeah | 21:12 | |
21:12
aindilis joined
|
|||
nwc10 | jnthn: it's something like that. Seem to have it running | 21:13 | |
going to try to work back to the mininmal needed edits | |||
OK. It says 3All tests successful. | 21:15 | ||
jnthn | In green, even! | ||
moritz | .oO( Green IT: all tests pass! ) |
21:16 | |
jnthn | ffs | ||
masak | time to write more tests. | ||
jnthn | my $dayjob got me a new printer. | ||
I'm too stupid to install the cartridges. | |||
Really, how the heck do they go in... | |||
nwc10 | with a hammer? Oh, you mean, go in *and work*? :-) | ||
moritz | there's usually a manual coming with the printer | ||
masak | this is why you buy a printer with cartridges already in them. | ||
and when they run dry, you throw the printer away and buy a new one. | 21:17 | ||
moritz | speaking of green IT -- that is not! | 21:18 | |
jnthn | moritz: Yes, the manual tells me all about the printers built in web server (wtf...) but not how to stick the ink in :P | 21:19 | |
nwc10 | jnthn: OK. So, if I `ln -s src bin`, I can remove all the hacks, apart from the s/import com.sun.org.apache.bcel.internal.Constants/import org.apache.bcel.Constants/ | ||
and the other hack of a ~/bin/javac | 21:20 | ||
moritz | jnthn: well, ipp (the printing-over-IP protocal) basically runs over HTTP | ||
so a web server in there isn't quite surprising | |||
nwc10 | $ nqp nqp-jvm-cc.nqp --setting=NULL -e "nqp::say('This is shorter than Hello World written in Java. Yay')" | ||
This is shorter than Hello World written in Java. Yay | |||
colomon | completely off topic, but look at my current debugging assistant: plus.google.com/105195123179018346...kC5Sv5qYmM | 21:24 | |
jnthn | $ nqp nqp-jvm-cc.nqp --setting=NULL -e "my $a := -> { nqp::say('And it has closures') }; $a()" | 21:25 | |
And it has closures | |||
\o/ | |||
nwc10 | No registered operation handler for 'associative_bind' | ||
colomon | \o/ | ||
nwc10 | your nqp is from the future? | ||
oh. no. | |||
arnsholt | Probably =D | ||
nwc10 | your shell is Win32 | ||
jnthn | nwc10: Closures already work :) | 21:26 | |
(in what's checked in) | |||
nwc10 | yes. does for me when I transpose " and ' | ||
jnthn | associative_bind...hm, hashes need some work I guess :) | ||
nwc10 | jnthn++ # creating even more inefficient ways to print hello world | ||
strace recorded 11471 system calls for the hello world | 21:27 | ||
jnthn | nwc10: Well, given that doing so invokes the JVM twice... :) | ||
lue | Does "To compile on the JVM backend, QAST::VM must have an alternative 'jvm'" mean I need to enable icedtea support somewhere? | 21:32 | |
jnthn | lue: No, it means your NQP needs updating to latest | 21:33 | |
lue | Ah. Makes sense (but that would require updating rakudo as well, which I'm going to wait to do) | 21:34 | |
colomon | lue! \o/ | 21:36 | |
lue | o/ | ||
21:37
stevan_ left
|
|||
nwc10 | gah. Lexical lookup by name NYI | 21:39 | |
you evil evil person. You've made something that tempts me to hack on it. Bad jnthn. No cookie^Wbeer | 21:40 | ||
:-) | |||
jnthn | oh, that task is in the LHF file too :) | 21:42 | |
nwc10 | jnthn++ # a frontend, making it possible to feed it programs, not just syntax trees | 21:47 | |
jnthn | It's darn distracting though. :) | 21:48 | |
jnthn has an almost fully commented out nqp-mo.pm that he's now started to move through | |||
nwc10 | sleep is for the weak :-) | 21:49 | |
jnthn | OK, OK, I'll at least do attribute scope in QAST::Var :P | 21:50 | |
lue hopes the future JVM nqp (and therefore JVM rakudo) is at least a little faster than Parrot on his machine | 21:53 | ||
masak | lue! \o/ | 21:54 | |
lue | o/ | ||
21:56
pmurias joined
|
|||
masak | 'night, #perl6 | 21:58 | |
lue | g'knight masak o/ | 22:00 | |
dalek | kudo-js: 8fbe88e | (Paweł Murias)++ | runtime.js: Deserialize knowhows and knowhow attributes. |
22:02 | |
kudo-js: d36e172 | (Paweł Murias)++ | run (2 files): Deserialize non flattend P6opaque attributs, pass test 28. |
|||
kudo-js: 4529261 | (Paweł Murias)++ | run_tests: Add more passing tests to run_tests. |
|||
kudo-js: 08974cd | (Paweł Murias)++ | src/QAST/Compiler/JavaScript.nqp: Delete no longer used serialization code. |
|||
kudo-js: 0b0b138 | (Paweł Murias)++ | src/QAST/Compiler/JavaScript.nqp: Remove more unused code. |
|||
kudo-js: 213c59d | (Paweł Murias)++ | / (5 files): Add NQPCapture and NQPMatch, pass test 29. |
|||
kudo-js: 582dc79 | (Paweł Murias)++ | src/ (2 files): set grammar in EXPORTHOW |
|||
kudo-js: dc040b5 | (Paweł Murias)++ | run_tests: Add passing tests to run_tests. |
|||
p-jvm-prep: c073be5 | jnthn++ | t/qast_6model.t: Tests for QAST::Var with attribute scope. |
22:09 | ||
p-jvm-prep: fcbe1f0 | jnthn++ | lib/QAST/JASTCompiler.nqp: Implement QAST::Var attribute scope. |
|||
22:10
slayer101_ joined
22:13
xinming_ joined
22:15
slayer101_ left
22:24
cognominal joined
|
|||
dalek | p: 4344610 | jnthn++ | src/QAST/Operations.nqp: Add nqp::decont; maps to pir::nqp_decontainerize. |
22:29 | |
p: 12e4c66 | jnthn++ | src/stage0/ (9 files): Update bootstrap. |
|||
p: 33a8ea0 | jnthn++ | src/NQP/Actions.pm: Switch some QAST::VM uses to new nqp::decont. |
|||
22:30
spider-mario joined
|
|||
Ayiko | rn: CATCH { default { say 'ok' } }; die 'BAD'; # no CATCH in mainline? | 22:31 | |
p6eval | rakudo c3f565: OUTPUT«BAD in block at /tmp/qgNmSyJuaj:1» | ||
..niecza v24-17-gd343a2a: OUTPUT«ok» | |||
jnthn | Ayiko: Apparently not... | 22:32 | |
Ayiko: Probably should be. | |||
tadzik | r: { CATCH { default { say 'ok' } }; die 'BAD'; } | 22:37 | |
p6eval | rakudo c3f565: OUTPUT«ok» | ||
tadzik | odd, I thought YOU_ARE_HERE is blockified somewhat | ||
dalek | p-jvm-prep: c5db4ec | jnthn++ | / (2 files): Implement iscont, stub decont. |
22:40 | |
p-jvm-prep: 91924a7 | jnthn++ | docs/ROADMAP: Remove completed item. |
|||
p-jvm-prep: 5c3611d | jnthn++ | lib/QAST/JASTCompiler.nqp: Label uniqueness fix. |
|||
22:43
slayer101_ joined
|
|||
dalek | p: 26d8805 | jnthn++ | src/how/NQPCurriedRoleHOW.pm: One more pir => nqp in nqp-mo. |
22:57 | |
jnthn | 'night, #perl6 | 23:07 | |
tadzik | good knight | ||
23:08
cognominal left
|
|||
pmurias | jnthn: 'night | 23:09 | |
23:13
cognominal joined
23:16
cognominal left
23:30
noam_ joined
23:36
pmurias left
23:38
Khisanth joined
23:47
benabik joined
23:59
slayer101_ left
|