IRCloggy #perl6 2013-06-23

Logs Search ←Prev date Next date→ Channels Documentation

Provider of IRC logs since 2005.
WARNING: As Freenode became unjoinable and lost all warnings in topics, we cannot log channels on Freenode anymore.

2013-06-23

timotimo now i finally understand what »ö« is %)00:04
sorear LD00:04
:D00:04
timotimo holy hell, the camelia.svg is *weird*00:06
moritz joined00:06
timotimo every line seems to be made up of rectangles00:06
and they are aligned to create lines; except in inkscape i can see little slits between the rectangles00:07
moritz left00:07
telex joined00:08
diakopter well, building nqp-jvm from scratch took 6 minutes; 6.5 minutes for rakudo-jvm00:08
_ilbot joined00:08
_ilbot left00:09
telex left00:09
telex joined00:10
timotimo oh, even *weirder*, there is little pie-slices between the rectangles even00:11
telex left00:12
telex joined00:14
sorear timotimo: i think that if you make a svg that looks approximately like the current one but is neater it would be gladly accepted00:15
timotimo i have a wacom tablet at home, i could surely invest a few minutes00:16
_ilbot joined00:17
_ilbot left00:17
telex left00:25
araujo joined00:26
ugexe left00:26
sorear ugh. nqpclasshow assumes nqp::where values are unique00:26
telex joined00:26
sorear in addition to the multi cache00:26
ugexe joined00:26
raiph joined00:27
labster Int.round($base) is failing because Int defines a method round () {self; }. What I don't know is if making a multi in Real.pm is worth the Int.round() optimization.00:28
ugexe left00:29
moritz joined00:30
moritz left00:30
Chillance left00:31
ugexe joined00:31
colomon 496 even, 504 odd00:33
1000 good versus 0 bad00:33
jnthn++00:33
Rotwang left00:35
pdurbin joined00:37
diakopter Files=713, Tests=19638, 1905 wallclock secs ( 4.58 usr 1.32 sys + 22.96 cusr 7.30 csys = 36.16 CPU)00:37
(only 2 cores)00:38
pdurbin off topic but... something is amiss with http://irclog.perlgeek.de/perl6 it seems...00:38
sorear 13:06 < moritz_bck> two short announcements regarding the IRC logs: 1) the network connection to the logging host suffers from massive packet loss; don't be surprised if it's slow/unresponsive00:39
diakopter hrm00:39
sorear pdurbin: i think moritz is painfully aware at the moment of how much his connection is sucking00:39
labster Yeah. ilbot is not here at present, please leave a message with yoleaux if you need to get through to someone.00:40
Guest1337 left00:40
pdurbin ah. thanks for the info. I'll check for updates at http://colabti.org/irclogger/irclogger_log/perl600:41
moritz joined00:41
moritz left00:41
labster ^^ see, there goes moritz' spotty connection again.00:42
diakopter sorear: heh, that test run left an eval-server running00:42
pdurbin poor guy00:43
sorear diakopter: see why I'm keen to fix it? :)00:44
pdurbin he's been making a ton of commits at https://github.com/moritz/ilbot lately too00:44
census left00:48
timotimo what html templating engine and what web app is currently the closest to "usable"?00:49
i'm guessing bailador?00:49
and what is sensible for templating?00:49
moritz joined00:53
moritz left00:53
tadzik I like Template::Mojo00:53
but I wrote it, so I'm biased :P00:53
timotimo can you comment on the completeness?00:56
ok $err ~~ /Failed\sto\sparse\sthe\stemplate/, 'Bad template exception'; - this makes me sad :(00:58
[Coke] trying to get ghc up and running on a new box for pugs testing. it's complaining about the install of stringtable-atom - any suggestions?01:00
sorear seems it's possible to run perl6 without -Xbootclasspath01:02
ugexe left01:02
ugexe joined01:02
sorear and . should probably be removed in any event, I think that's the root cause of the calss problems01:02
BenGoldberg joined01:02
pdurbin left01:03
moritz joined01:04
moritz left01:04
labster dumb question, but how do you specify that a multi method takes exactly zero arguments?01:07
sorear multi foo() { ... }01:08
moritz joined01:09
ssutch r: sub protofile($fn) { say $filename; }; module Mod is protofile('hello.proto');01:09
camelia rakudo 51f4eb: OUTPUT«===SORRY!===␤Variable '$filename' is not declared␤at /tmp/cqovE4tFar:1␤------> sub protofile($fn) { say $filename⏏; }; module Mod is protofile('hello.prot␤ expecting any of:␤ postfix␤»01:09
moritz left01:09
ssutch r: sub protofile($fn) { say $fn; }; module Mod is protofile('hello.proto');01:09
camelia rakudo 51f4eb: OUTPUT«===SORRY!===␤'Mod' cannot inherit from 'protofile' because it is unknown.␤at /tmp/r1uQoGL77S:1␤------> ␤»01:09
[Coke] here are the 2 cabal install failures I get: any help appreciated.01:09
https://gist.github.com/coke/584332201:09
labster sorear: multi method round(Int:D:) { self } gives me: ambiguous call ... :(Int:D : Mu *%_) in rakudo01:11
colomon 19638 tests now?01:12
labster is that a bug, then?01:12
sorear labster: what other candidates do you have?01:13
labster :(Int : $scale = { ... }, Mu *%_)01:13
The Mu *%_ is automatically generated on both, it seems.01:14
moritz joined01:14
_ilbot joined01:14
_ilbot left01:14
moritz left01:14
labster I guess that's an issue of no arguments not being more specific than an optional argument.01:15
sorear labster: oh, NAMED arguments01:15
labster: well, when you declare round(Int:D:) you do get a method which takes zero positional arguments01:15
Mu *%_ only matches named arguments01:16
it's specced that methods ignore unknown named arguments01:16
timotimo chtop 01:21
...01:21
labster Iâ ftaghn01:23
Round is specced to return Int, but is there any real reason why this shouldn't work?01:23
r: say 10.35.round(0.5)01:23
camelia rakudo 51f4eb: OUTPUT«10.5␤»01:23
colomon is starting to suspect that throws_like does not work on rakudo jvm01:24
ugexe left01:24
ugexe joined01:24
moritz joined01:24
moritz left01:25
colomon ===SORRY!===01:25
Wrong number of arguments passed; expected 1..1, but got 001:25
konundra joined01:25
konundra_ joined01:26
FROGGS_ joined01:27
moritz joined01:31
moritz left01:31
FROGGS left01:31
_ilbot joined01:33
_ilbot left01:34
JimmyZ joined01:34
moritz joined01:36
moritz left01:36
ssutch how can i make a trait that will run like this: "module Foo is bar('abcdef');"01:39
for instance, this: https://github.com/perl6/roast/blob/master/S14-traits/package.t#L8 doesn't seem to work01:39
rakudo complains: Method 'declares_method' not found for invocant of class 'NQPClassHOW'01:40
ugexe left01:41
ugexe joined01:41
moritz joined01:41
moritz left01:41
ssutch r: https://gist.github.com/samuraisam/584339101:42
camelia rakudo 51f4eb: OUTPUT«===SORRY!===␤Method 'declares_method' not found for invocant of class 'NQPClassHOW'␤at /tmp/3SiVVFUH5Y:15␤------> ␤»01:42
_ilbot joined01:42
ugexe left01:42
_ilbot left01:43
[Coke] diakopter++01:43
ugexe joined01:46
timotimo itym is(thing, :$described!01:46
sorear [Coke]: hey, you're TPF aren't you?01:48
_ilbot joined01:50
ugexe left01:50
[Coke] sorear: I'm on the grants committee. Pretty much as little TPF as one could be. What's up?01:50
_ilbot left01:50
ldthien0 joined01:51
ugexe joined01:51
sorear [Coke]: oh, I just mailed a CLA on the 18th and waiting impatiently for any indication that it was successfully delivered01:52
JimmyZ ssutch: this test is not passed in rakudo01:56
[Coke] what was the zip on the delivery?01:56
ssutch ah i see01:56
how does nativecall do it then01:56
[Coke] ... actually, nevermind. doesn't matter, I'd never see it. :)01:56
... let me see if I have a google doc or something.01:57
JimmyZ ssutch: it does role[]01:59
ssutch: not role()01:59
[Coke] sorear: I have access to to a google doc you're not on yet.01:59
you'll probably hear about it before I notice.01:59
good luck! ;)01:59
sorear Thanks :D02:02
_ilbot joined02:03
_ilbot left02:03
sorear um. is it just me, or is there no getopt-equivalent in the java standard library?02:07
for something this *big* getopt would be a pretty glaring omission...02:08
benabik Java doesn't like command line arguments.02:08
There is gnu.getopt02:08
Or commons CLI02:09
Or, or, or... But, yes, it's all third pary.02:09
_ilbot joined02:10
_ilbot left02:10
ssutch r: https://gist.github.com/samuraisam/584339102:11
camelia rakudo 51f4eb: OUTPUT«===SORRY!===␤Cannot call 'trait_mod:<is>'; none of these signatures match:␤:(Mu:U $child, Mu:U $parent)␤:(Mu:U $type, :rw(:$rw)!)␤:(Mu:U $type, :nativesize(:$nativesize)!)␤:(Mu:U $type, :hidden(:$hidden)!)␤:(Mu:U $type, *%fail)␤:(Attribute:D $attr…02:11
ssutch hm, the the signature should match02:12
timotimo https://github.com/jnthn/zavolaj/blob/master/lib/NativeCall.pm6#L240 - they should look live that02:13
well, okay, those are all Routines02:14
dalek rakudo/nom: 077875a | (Brent Laabs)++ | src/core/Int.pm:02:16
rakudo/nom: add Int.round with arguments to fix RT#11854502:16
rakudo/nom: review: https://github.com/rakudo/rakudo/commit/077875a34102:16
ssutch even if i change the type to 'Any' it still won't find it02:19
JimmyZ ssutch: should be role description[Str $description]02:20
_ilbot joined02:20
_ilbot left02:20
ssutch r: https://gist.github.com/samuraisam/584339102:24
camelia rakudo 51f4eb: OUTPUT«===SORRY!===␤Cannot call 'trait_mod:<is>'; none of these signatures match:␤:(Mu:U $child, Mu:U $parent)␤:(Mu:U $type, :rw(:$rw)!)␤:(Mu:U $type, :nativesize(:$nativesize)!)␤:(Mu:U $type, :hidden(:$hidden)!)␤:(Mu:U $type, *%fail)␤:(Attribute:D $attr…02:24
fgomez joined02:25
ssutch blarb!02:26
diakopter barble!02:27
timotimo i think ufo got b0rked02:27
and i still can't build rakudo::debugger; i'm slowly getting pretty mad at this whole deal02:28
ssutch is there something you use instead of 'does' on type objects?02:34
colomon ssutch: what are you trying to do?02:34
ssutch apply a trait to a Class object02:34
or a Module object02:34
diakopter "but"02:34
colomon you apply a role using does02:35
I'm not sure why you'd use "is" to apply a role to a class?02:37
ssutch doing something funky… for my protocol buffer library02:37
ssutch to use it, you say use PB; module MyIDL is proto('path/to/file.proro');02:38
moritz joined02:38
moritz left02:38
JimmyZ r: role protobuf[Str $file] {has $.file is rw;}; class Monkey does protobuf['hello'] { }02:38
camelia rakudo 51f4eb: ( no output )02:38
ssutch then all of the stuff defined in your proto is available02:39
huh, maybe that isn't possible: Method 'mixin' not found for invocant of class 'Perl6::Metamodel::ModuleHOW'02:40
JimmyZ r: role protobuf[Str $file] {has $.file is rw = $file;}; class Monkey does protobuf['hello'] { }; Monkey.new.file.say02:40
camelia rakudo 51f4eb: OUTPUT«hello␤»02:40
moritz joined02:43
moritz left02:43
ldthien0 left02:44
ldthien0 joined02:46
moritz joined02:48
moritz left02:49
ssutch left02:54
_ilbot joined02:56
_ilbot left02:57
SamuraiJack joined02:58
ldthien0 left02:58
moritz joined02:59
moritz left02:59
colomon Seems like throws_like is dying somewhere in the throw / catch process.03:00
labster it's somewhere in the throes of dying.03:01
colomon ;)03:01
diakopter heh.03:01
the Game of Throes03:01
_ilbot joined03:05
_ilbot left03:05
potatogim left03:14
potatogim joined03:14
potatogim left03:15
raiph left03:20
dalek Pugs.hs: 0d18b5d | coke++ | Pugs/src/Pugs/AST/Eval.hs:03:21
Pugs.hs: track changes needed for latest ghc03:21
Pugs.hs: review: https://github.com/perl6/Pugs.hs/commit/0d18b5dc9203:21
moritz joined03:23
moritz left03:23
dmol joined03:24
moritz joined03:28
moritz left03:28
FOAD left03:30
FOAD joined03:30
preflex left03:33
preflex_ joined03:33
ChanServ set mode: +v03:33
preflex_preflex03:34
[Coke] wonders how sad people will be if pugs daily runs fall off the map.03:41
[Coke] is getting several thousand failures on the new build box.03:42
diakopter [Coke]: hrm.03:42
Ben_Goldberg joined03:42
diakopter seems legit [not]03:43
sorear [Coke]: i would not care03:43
[Coke] I attempted a patch to get by the compilation error tripped on the new box. *boom*03:43
BenGoldberg left03:43
sorear [Coke]: there's no point continuously integrating an implementation that's not changing03:43
diakopter (you're just tracking how much the spec changes at that point) :)03:44
moritz joined03:44
moritz left03:45
woosley1 joined03:45
[Coke] hey person-who-just-updated-haskellage for pugs. If you can fix it, I'll keep testing it.03:45
diakopter has a guess..03:46
diakopter avuserow1: hi03:46
[Coke] something _sj2? doesn't look like they're here.03:47
zzz.03:48
_ilbot joined03:48
_ilbot left03:48
diakopter jeff shaw?03:48
dmol left03:52
raiph joined03:52
_ilbot joined03:53
_ilbot left03:53
_ilbot joined03:55
_ilbot left03:55
moritz joined04:06
moritz left04:06
atroxaper joined04:11
flaviusb joined04:14
_ilbot joined04:21
_ilbot left04:21
Psyche^ joined04:27
_ilbot joined04:30
Patterner left04:31
Psyche^Patterner04:31
_ilbot left04:31
_ilbot joined04:38
_ilbot left04:38
woosley1 left04:44
kaare__ joined04:48
moritz joined05:15
moritz left05:15
arlinius left05:16
moritz joined05:18
_ilbot joined05:23
moritz left05:26
moritz joined05:29
moritz left05:30
_ilbot left05:30
konundra_ left05:41
_ilbot joined05:41
_ilbot left05:41
cognominal left05:42
konundra left05:42
arlinius joined05:43
preflex left05:44
preflex joined05:46
ChanServ set mode: +v05:46
panchiniak_ left05:47
JimmyZ left05:50
JimmyZ joined05:53
JimmyZ_ joined05:58
JimmyZ left06:02
JimmyZ_JimmyZ06:02
moritz joined06:09
moritz left06:09
_ilbot joined06:13
_ilbot left06:13
_ilbot joined06:17
_ilbot left06:18
renormalist left06:25
moritz joined06:31
berekuk joined06:37
moritz left06:37
renormalist joined06:38
_ilbot joined06:40
_ilbot left06:40
berekuk left06:41
jaldhar joined06:45
berekuk joined06:51
FROGGS[mobile] joined06:52
FROGGS[mobile] o/06:53
sorear o/06:53
moritz joined06:55
moritz left06:55
kaare__kaare_06:57
_ilbot joined06:58
_ilbot left06:58
potatogim joined07:04
domidumont joined07:04
atroxaper left07:05
_ilbot joined07:06
_ilbot left07:07
labster o/07:11
logie joined07:11
_ilbot joined07:13
_ilbot left07:13
domidumont left07:16
logie left07:16
domidumont joined07:17
moritz joined07:17
moritz left07:19
labster r: round(3i)07:24
camelia rakudo 077875: OUTPUT«(timeout)»07:24
labster r: floor( 2i )07:26
camelia rakudo 077875: OUTPUT«maximum recursion depth exceeded␤current instr.: 'print_exception' pc 104724 (src/gen/CORE.setting.pir:46812) (src/gen/CORE.setting:9243)␤called from Sub 'Numeric' pc 224422 (src/gen/CORE.setting.pir:98010) (src/gen/CORE.setting:2992)␤called from Sub 'Numeric' pc 1…07:26
moritz joined07:27
moritz left07:27
labster r: (3i).floor07:29
camelia rakudo 077875: OUTPUT«maximum recursion depth exceeded␤current instr.: 'print_exception' pc 104724 (src/gen/CORE.setting.pir:46812) (src/gen/CORE.setting:9243)␤called from Sub 'Numeric' pc 224422 (src/gen/CORE.setting.pir:98010) (src/gen/CORE.setting:2992)␤called from Sub 'Numeric' pc 1…07:29
_ilbot joined07:30
raiph left07:31
_ilbot left07:31
sorear nqp-jvm: sub foo() { foo; }; foo;07:32
dukeleto joined07:32
camelia nqp-jvm: ( no output )07:32
sorear \o/ StackOverflowError works in rakudo-jvm07:33
labster good work sir07:33
raiph joined07:34
dukeleto sorear: are you interested in hacking on a real-time GC for parrot with me? The same algorithms should be useful for any VM, if we document them well07:34
dukeleto utilizes the appropriate channel07:35
_ilbot joined07:35
_ilbot left07:36
labster n: round(3i)07:36
camelia niecza v24-81-g6672fa2: OUTPUT«Unhandled exception: floor is only defined for Reals, you have a Complex()␤ at /home/p6eval/niecza/lib/CORE.setting line 3442 (floor @ 4) ␤ at /home/p6eval/niecza/lib/CORE.setting line 3445 (round @ 4) ␤ at /tmp/NNh1sqRgZq line 1 (mainline @ 3) ␤ at /h…07:36
labster niecza++07:36
JimmyZ known bug?07:37
labster dukeleto++ for planning good documentation. I was just complaining about the lack there of (in Perl 6) earlier today.07:38
dukeleto labster: :)07:38
JimmyZ: floor() is not commonly defined on reals, but I would say that floor(a+b*i) should be floor(a)+floor(b)*i07:38
because floor() is a linear function07:39
s/on reals/on complexes/07:39
sorear linear in what sense07:40
JimmyZ or LTA07:41
LTA bug, maybe07:41
labster Well, infinite loops are definitely LTA.07:41
benabik left07:41
JimmyZ afk07:41
labster I think complex floor/ceiling/round are certainly possible, it's just -- I can't think of a situation where it would be what you want mathematically. sorear? anyone with significant maths?07:42
sorear labster: i cannot think of a single way in which floor is linear, or a good use case for complex floor07:43
and since there's no obviously best definition of complex floor, I'd prefer calling it undefined and letting the user define their needed definition07:44
arlinius left07:49
moritz joined07:50
moritz left07:50
dukeleto sorear: floor(a*b+c)=floor(a)*floor(b)+floor(c) or am I mistaken?07:50
sorear: that would seemingly make it linear07:50
sorear: but i understand wanting to leave floor(a+b*i) undefined07:50
labster according to google, the use case seems to be mostly in formatting output. Mathematica defines Floor on complex values.07:54
_ilbot joined07:55
moritz joined07:55
_ilbot left07:55
moritz left07:55
_ilbot joined07:57
_ilbot left07:57
sorear dukeleto: you are mistaken. consider a=1, b=c=0.607:59
JimmyZ left08:00
_ilbot joined08:01
_ilbot left08:01
Ben_Goldberg left08:03
GlitchMr left08:06
sisar joined08:06
sisar o/08:06
how do i make the prompt ">" in the rakudo REPL colored ?08:08
GlitchMr joined08:08
FROGGS[mobile] sisar: there is a term::ansicolor module08:10
sisar FROGGS[mobile]: i thought that was for printing color output, not for controlling the REPL's color08:12
FROGGS[mobile] ahh now I understand08:12
sisar :)08:12
sorear modify your rakudo to include escape sequences in the prompt08:12
FROGGS[mobile] dunno where the repl code is though08:13
sisar sorear: how do i do that ? Need more pointers08:13
sorear https://github.com/perl6/nqp/blob/master/src/HLL/Compiler.nqp#L18408:15
FROGGS[mobile] and you can steal the escape sequences from term::ansicolor08:16
sorear could add an override to src/Perl6/Compiler08:16
man console_codes is always a good bet too08:16
_ilbot joined08:16
sisar FROGGS[mobile], sorear: ok, makes sense now. I'll give it a try. Thanks.08:16
_ilbot left08:16
moritz joined08:18
moritz left08:18
arlinius joined08:23
moritz joined08:23
_ilbot joined08:23
_ilbot left08:23
moritz left08:23
_ilbot joined08:25
_ilbot left08:25
tomyan joined08:26
tomyan left08:32
flaviusb left08:35
berekuk left08:37
_ilbot joined08:37
_ilbot left08:37
berekuk joined08:38
FROGGS[mobile] left08:40
moritz joined08:40
_ilbot joined08:42
_ilbot left08:42
moritz left08:42
berekuk left08:43
domidumont left08:44
masak good antenoon, #perl608:48
_ilbot joined08:49
_ilbot left08:49
berekuk joined08:50
FROGGS_ hi masak08:51
_ilbot joined08:52
_ilbot left08:52
berekuk left08:53
_ilbot joined08:56
_ilbot left08:57
sorear 'night, #perl608:58
FROGGS_ night sorear08:59
_ilbot joined09:04
Guest1337 joined09:05
xlat joined09:17
_ilbot left09:17
masak good night, sorear09:19
FROGGS_ masak: what do you think about passing the match (as $/) to the *_directions as the first (and only arg in most cases) ?09:21
I think I'll show you later how I'd do it09:22
masak I think I'd have to see it to be sure.09:23
hm, dagurval++ brings up a good point: should %u wrap values around some 2**N limit?09:26
FROGGS_ yeah, that is what I think too09:26
masak I definitely think we should support %u. question is how.09:26
FROGGS_ hmmm, dunno if should be limited09:27
feels strange to have bigints in core and then no way to printf it09:28
moritz joined09:32
moritz left09:32
masak I think the guiding principle should be that we want to have great bigint support.09:34
rn: say sprintf '%u', -509:34
camelia rakudo 077875: OUTPUT«4294967291␤»09:35
..niecza v24-81-g6672fa2: OUTPUT«-5␤»09:35
dukeleto +1 to great bigint support :)09:35
masak hm. maybe follow Parrot/Rakudo here for once. Niecza's is saner but sort of defeats the purpose of %u.09:35
_ilbot joined09:35
_ilbot left09:35
JimmyZ joined09:36
spider-mario joined09:37
moritz joined09:37
moritz left09:37
FROGGS_ what about %.64u, %.32u, %.*u, where the default is what perl5/C does ?09:38
masak sounds good.09:39
do C and perl5 really have a single default?09:39
FROGGS_ no idea09:40
_ilbot joined09:40
_ilbot left09:40
JimmyZ what's it? sprintf?09:40
masak I have a feeling this is one of those "defaults" that went through a 16, 32, 64 evolution over the years.09:40
JimmyZ: yes, sprintf and %u.09:41
JimmyZ well, I see %lld and %ld in APR, which one will be used depends on platform/compiler09:42
%lld can't be used in MSVC09:42
masak *sigh* this is tricky.09:43
JimmyZ well ,%lld cant be used in virtual studio 2012, said MSDN. But actually, it only can be used in printf, not sprintf.09:44
s/cant/can/09:45
masak I think it will be hard to do this without introducing "yet another standard".09:48
which is why it's useful to do it from first principles as much as possible.09:49
"sprintf: an axiomatic approach" :)09:51
_ilbot joined09:56
_ilbot left09:56
_ilbot joined10:01
_ilbot left10:01
kaare_ left10:07
GlitchMr left10:12
GlitchMr joined10:13
_ilbot joined10:15
_ilbot left10:16
rindolf joined10:16
moritz joined10:17
moritz left10:17
skids left10:20
dukeleto left10:22
flaviusb joined10:23
xlat left10:31
xlat-home joined10:32
berekuk joined10:35
timotimo genius idea of the day: compile the JVM with emscripten, so that the user doesn't have to allow a pesky java applett to run!10:36
JimmyZ where is the JVM source???10:37
Rotwang joined10:39
_ilbot joined10:40
_ilbot left10:40
berekuk left10:40
berekuk joined10:42
Chillance joined10:44
berekuk left10:44
learnmeperl joined10:45
learnmeperl left10:46
_ilbot joined10:48
_ilbot left10:49
moritz joined10:50
moritz left10:50
_ilbot joined10:54
_ilbot left10:54
_ilbot joined10:56
_ilbot left10:56
berekuk joined10:57
masak hm, is this worth replying to? https://twitter.com/marcusramberg/status/34870364893257318410:58
colomon no10:58
masak I believe the three settings "harmed", "helped", and "not affected" are all true in some sensible mixture.10:58
but tweets are not long enough.10:59
JimmyZ nope10:59
masak ok, will proceed to not reply, then.10:59
atroxaper joined11:00
colomon '"harmed", "helped", and "not affected" are all true in some sensible mixture.': exactly11:00
ggoebel2 joined11:00
JimmyZ time will explain it :P11:01
ggoebel left11:01
colomon I mean, for sure taking 13+ years to do the next major version has harmed Perl. It's a no-brainer.11:01
But, at the same time, it's not really relevant to anything, either.11:01
masak there's always been a complex give-and-take between p5 and p6. the two communities are not independent and isolated.11:02
GlitchMr left11:02
masak so saying "p6 has harmed p5" is a bit like saying "the spleen has harmed the liver".11:02
also, it's possible/easy to forget that the relative sizes of the two communities are ridiculously different.11:03
if you think in terms of deployed code and active users.11:03
colomon it seems to me very fair to say the early years of the p6 project were badly borked11:03
but that doesn't really tell you anything about what p6 is today.11:03
fgomez left11:04
fgomez joined11:04
masak it took a while for the p6 project to actually grow a development cycle that worked.11:04
colomon it might tell you something meaningful about how to approach perl 611:04
sorry, approach perl 711:04
masak colomon: you do know that there won't be a Perl 7, right? :)11:05
jnthn Right, the spec says we converge on 6.6.6, iirc? :P11:05
masak jnthn: no, that's the "if we're unlucky" scenario :)11:06
moritz joined11:06
masak "In fact, we probably wouldn't end up converging on a version number of 2*PI as the RFC suggests, but rather on 6.6.6, which would be rather unfortunate." http://www.perl6.org/archive/doc/design/apo/A01.html11:06
berekuk left11:06
flaviusb Also seems fair to note the Perl Renaissance, Modern Perl etc as being influenced by learnings from the p6 endeavour, in case people wonder about the "helped" bit.11:08
colomon certainly, perl 6 has both hurt and helped p5.11:08
GlitchMr joined11:09
tomyan joined11:09
masak and not affected it at all.11:09
_ilbot joined11:09
_ilbot left11:10
moritz is back-ish from behind a network line with massive package loss11:10
moritz sadly the clogs aren't back :/11:10
masak but rather than focus on crap like what people say at Ruby conferences, I'd find it much more useful to focus on Perl conferences, and the fruitful cross-pollinations and collaborations that happen there.11:11
that looks to me like a thriving bicameral community, not a limping one.11:11
jnthn read that as "bicaramel"11:11
masak n-thly, it's not a zero-sum game.11:11
lots of people are involved in Perl 6 who would not have been similarly involved in Perl 5.11:12
I'm one.11:12
moritz too11:12
jnthn Same.11:12
moritz I never went beyond doc patches and pure p5 module patches in p5 core11:12
colomon Here's the thing: the right way to say it is the Perl community as a whole bungled the next generation project. It's not a like a small group of perl 6 programmers came in and messed things up for perl 5. And acting like it is is grotesquely unfair to the current perl 6 developers, none of whom were even around the first 4 years.11:12
moritz and I don't think that would have changed11:13
masak colomon: I think that "bungled" is too strong. it's ongoing, it's a healthy project. people on the outside have difficulties seeing why it takes so long.11:14
colomon I meant that as "bungled the early stages", sorry11:15
pdurbin joined11:15
masak even that is risky to put in a press release :P11:15
colomon A more sensible process probably would have had a much less ambitious perl 6 that was finished a decade ago.11:17
JimmyZ will PHP6 hurts PHP5.x ? :P11:18
timotimo there will be nothing left to hurt when people see the brilliance and elegance of running your web apps as java applets directly in the user's browser11:19
colomon But the thing is... that was 10-13 years ago. Back then they made the super ambitious choice. Complaining about that when the team (formed since then) is finally getting close is beyond pointless.11:20
raiph left11:20
masak colomon: Perl 6 started out as less ambitious. then people sent in 361 RFCs.11:20
turns out people liked Perl so much they wanted to improve it all kinds of ways. :)11:21
JimmyZ I think "will Perl6 hurt perl5" is the same as "will C hurt perl5?"11:21
masak also, a smaller and more conservative change would have resulted in a Python 3 kind of situation.11:21
xlat-home left11:21
masak (still took quite some time, but now there's little momentum and even less reason to upgrade, despite the whole community pointing to p3k and nodding meaningfully)11:22
pdurbin I have a ton of respect for the ambition of Perl 6. For work I'm getting more into Java and it's clear to me that tons and tons of people are working on the language. Far more, I'd say, that work on Perl11:22
s/that/than/11:23
xlat joined11:28
crab2313 joined11:30
daniel-s__daniel-s11:31
masak well, marcusramberg sees the p5 part of the community, but not necessarily the p6 part of it.11:32
I guess that partially explains his view.11:32
timotimo but the p6 part isn't even that big ;)11:32
masak right -- it's hard to miss :)11:32
er, it's easy to miss.11:33
masak switches brain back on11:33
masak train &11:33
pdurbin the thing I always think of is that Ruby was a reaction to Perl 4. of course it's better than Perl 411:34
I guess I'm just reacting to some of the replies to that tweet11:34
_ilbot joined11:36
_ilbot left11:36
moritz I have a new search backend for the IR clogs that you can all test at http://tina.perlgeek.de/perl6/search11:38
feedback welcome :-)11:38
jnthn moritz: I seem to have trouble connecting to it11:39
ah, now it worked11:39
jeckyhl joined11:39
moritz jnthn: yes, lots of packet loss at the moment :(11:39
which is also why the logging doesn't work11:39
jnthn moritz: yes, when I glanced the log on my phone this morning I was like "whee, quiet night...not much backlog to catch up on"11:41
pdurbin moritz: yes! I saw you mention it at http://irclog.perlgeek.de/ilbot/2013-06-22 ... great news!11:41
jnthn :P11:41
moritz_ joined11:41
moritz jnthn: I've put up a notice11:42
moritz_ left11:42
jeckyhl Hi, I'm trying to build Rakudo/JVM on Windows. Something went wrong on "Stage jar", i've got java.lang.UnsupportedOperationException: 'posix:permissions' not supported as initial attribute. Did someone alreay experienced this ?11:43
JimmyZ can't connect tina11:44
jnthn jeckyhl: I've seen that but only when trying to run the tests...11:45
jeckyhl: Can you gist/nopaste me the output?11:45
moritz++11:46
jeckyhl @jnthn i was runing nmake test indeed11:46
jnthn jeckyhl: Yeah. The test/spectest targets have been set up to use an eval client/server thing for startup performance. Unfortunately, it doesn't work out on Windows yet.11:47
JimmyZ http://tina.perlgeek.de/perl6/search works now?11:47
jnthn jeckyhl: I didn't get to trying to fix it yet.11:47
jeckyhl: The good news is that the perl6 you get out will, standalone, work.11:47
Or should, at least...11:48
jeckyhl @jntnn great !11:48
rakudo>nmake install gives " NMAKE : fatal error U1073: cannot get 'install'11:50
timotimo is someone here familiar with java applets? it seems like i can easily invoke code in the applet from javascript, but i can't seem to find out how to signal something to the outside html/js world from within the applet11:50
raiph joined11:51
jnthn jeckyhl: Yes, that's still todo. Be aware that the JVM support is still very, very much a work in progress.11:51
moritz I think that's by (security) design11:51
(that was for timotimo)11:51
jnthn jeckyhl: We're moving pretty fast on it, though. ;)11:51
timotimo moritz: so, how do i put a Java Applet version of the rakudo evalserver into a website, push code in from JS and get the result back out when it's finished?11:52
would i have to poll an attribute of the applet?11:52
jeckyhl @jnthn It's worth waiting ! I will test again soon.11:52
moritz timotimo: no idea, sorry11:57
sriliam joined11:59
sriliam hi11:59
moritz hello sriliam11:59
sriliam New to perl6 and a kind of dubitative : does this project is sustained by larry wall or anyone else from other perl12:00
?12:00
jnthn sisar: Larry is Perl 6 language designer.12:04
oops12:04
sriliam: ^^12:04
sriliam Thanks jnthn12:04
OK, so what about compatibility ?12:04
There were object reference which had been a different when transition from perl4 to perl5.12:05
When perl6 test passed : is there is a transition on the road, or does Perl6 will be used both with Perl5 ?12:06
jnthn sriliam: Not backwards compatible; Perl 5 will continue to be developed/maintained a *long* way into the future too. :)12:07
sriliam: We're working on various kinds of interop between the two so you don't have to ditch existing Perl 5 code in order to start writing Perl 6 code too.12:08
hoelzro timotimo: I could, but I really did the pygments thing because I wanted GH support for Perl612:09
jeckyhl jnthn: Rakudo-JVM buid sucessfully (with nmake v11 / Java JRE1.7 64 bits)12:09
hoelzro and I'm much more keen on Python than JS =)12:09
moritz_ joined12:09
moritz_ left12:09
sriliam "Not backwards compatible" ??? What about XS code with perl5 ?12:09
^^ In perl6, of course : what about xs code in perl6 ?12:10
_ilbot joined12:11
_ilbot left12:11
sriliam "e're working on various kinds of interop between [...] start writing Perl 6 code too" : ok, understood.12:12
I'm always worring about "we will done all for you ..." !!12:12
:)12:12
_ilbot joined12:13
_ilbot left12:14
birdwindupbird joined12:14
timotimo hoelzro: well, codemirror is used in gist and the github on-line editor ;)12:14
there's of course no obligation for you to do it12:14
moritz_ joined12:14
moritz_ left12:15
timotimo sriliam: Perl5-XS is kind of hard to interop with. currently there's a module in the works called "rakudo-v5", which will let you write perl5 code in side perl6 and the other way around when you're using rakudo, but that won't give you XS12:15
_ilbot joined12:16
SunilJoshi joined12:16
hoelzro grr12:16
timotimo: it's the only highlighter used for gists?12:16
_ilbot left12:16
timotimo oh, wait, gist doesn't have codemirror, does it?12:16
sriliam: MoarVM, on the other hand, which will become a rakudo backend, is going to use libperl, so there will be some degree of using XS in perl5 code together with perl612:16
hoelzro: you get as-you-type highlighting on gists if you turn on the "ACE editor" i suppose12:17
jeckyhl left12:17
timotimo but it's nod codemirror, it seems!?12:17
jnthn A bunch of the things you might do with XS in Perl 5, you can do with NativeCall in Perl 6.12:17
timotimo it's apparently thi: #lives_ok { eager $req.params<hello> }, 'Request data parses without dying';12:17
#is ~$resp.content, $data, 'POST data string roundtrips correctly';12:18
... wat.12:18
#is $req.params<a>, '1;b=2', 'application/x-www-form-urlencoded POST data should only split on &';12:18
it's apparently this: http://ace.ajax.org/#nav=about (for real this time)12:18
_ilbot joined12:18
sriliam ok timotimo : read you carefully : MoarVM the second answer is more interresting. Thanks12:18
_ilbot left12:18
timotimo oh, i forgot XS was used for legitimate purposes, too. in that case, you can use NativeCall on perl612:19
i thought XS was only for doing crazy/dirty stuff with the internal state of perl512:19
moritz_ joined12:19
moritz_ left12:19
timotimo http://ace.ajax.org/tool/mode_creator.html - this seems like a pretty darn cool tool12:20
sriliam No timotimo : the most XS deal is efficiency !!! NativeCall talks to me.12:20
:)12:20
timotimo has never used perl5, to be honest12:20
sriliam lol12:21
And even perl4 ... XS are very old.12:21
timotimo i should be more precise: perl6 is the only perl i've ever tried12:21
ztt_ joined12:22
hoelzro I'm hoping that having "regular" syntax highlighting on GH will inspire someone else to port my efforts to CodeMirror12:23
sriliam timotimo : Ok, you lost nothing with other versions will be a bad joke. Really.12:23
hoelzro =)12:23
moritz_ joined12:24
moritz_ left12:25
timotimo i was wrong, github uses ACE everywhere, not codemirror12:25
sriliam Ok, another question for you hackers ... Does recursive programming works with perl6. It does with perl5 but very pool experiments results.12:25
timotimo you can recurse, but the compiler will not (yet?) do things like tail-call optimization, if you mean that12:26
sriliam Read you timotimo : need to go. Thanks for you all !!!! Perl[1-6] are the best languages !!!!!12:28
timotimo have a good time! :)12:29
sriliam left12:29
timotimo now that's what i call enthusiasm :)12:29
hoelzro: this ACE mode creator editor tool thingie looks super nice, i think i'll spend at least a few minutes toying around with it! :)12:30
hoelzro cool =)12:30
timotimo from the example i'm looking at, it seems pretty limited, though; as in flat12:35
oh, no, i was wrong12:35
dalek nqp: f3cab58 | jnthn++ | src/vm/ (3 files):12:35
nqp: Add nqp::getpid for both JVM and Parrot.12:35
nqp: review: https://github.com/perl6/nqp/commit/f3cab58fb712:35
xlat is Grammar::Debugger working on W7?12:40
jnthn xlat: I know Grammar::Tracer will work at least, *but* it emits ANSI color codes, so needs something like ansicon12:40
moritz_ joined12:40
xlat ok, I install ansicon, and I see colors with Tracer which works12:41
moritz_ left12:41
timotimo maybe Term::ANSIColor should check at compile-time what OS it's being run on and give stub methods that do nothing on windows?12:41
or look for an environment variable i guess12:41
jnthn timotimo: Well, I'd pondered a Term::WinColor and then around the two a Term::PortaColor at some point :)12:42
xlat jnthn: but when I use Debugger, as soon as I try to single-step it throws an exception12:42
jnthn xlat: That may not be Windows specific :(12:42
xlat: Did you try using the perl6-debug that is included with Rakudo *? It also knows how to do grammar single-stepping and should be working.12:43
xlat jnthn: I'll try now...12:44
jnthn Sorry 'bout the grammar::debugger bug. That's almost certainly my fault... :/12:44
xlat jnthn: the error msg: http://pastebin.com/DRQitCje12:45
cognominal joined12:45
jnthn ugh12:45
xlat: Filed it in issue tracker12:47
dalek nqp: 7fa12e2 | jnthn++ | src/vm/parrot/QAST/Operations.nqp:12:48
nqp: Fix nqp::getpid on Parrot.12:48
nqp: review: https://github.com/perl6/nqp/commit/7fa12e2b5912:48
rakudo/nom: c050747 | jnthn++ | src/core/Range.pm:12:51
rakudo/nom: Port Range reify fast-path.12:51
rakudo/nom: review: https://github.com/rakudo/rakudo/commit/c050747edb12:51
rakudo/nom: 7f0af9b | jnthn++ | / (2 files):12:51
rakudo/nom: Use new nqp::getpid() op for $*PID.12:51
rakudo/nom:12:51
rakudo/nom: Means $*PID is now available on JVM backend also.12:51
rakudo/nom: review: https://github.com/rakudo/rakudo/commit/7f0af9bca512:51
pdurbin left12:53
raiph left12:56
timotimo it doesn't seem like ACE allows capturing in the tokens, so heredocs will practically be impossible13:00
xlat jnthn: debugger's coloration is impressive!13:02
_ilbot joined13:05
_ilbot left13:05
flaviusb left13:08
raiph joined13:08
xlat jnthn: tryed perl6-debug but still got the same error, my script: https://gist.github.com/xlat/5be8c961d21b6350a2eb13:11
tomyan_ joined13:13
kaare_ joined13:15
jnthn xlat: Wait, the debugger tells you the same error? Does it tell you which line?13:15
tomyan left13:15
jnthn xlat: You did remove the "use Grammar::Debugger" from your script before running it under perl6-debug?13:16
dayangkun joined13:16
jnthn If not then you're debugging Grammar::Debugger... ;)13:16
SunilJoshi left13:16
xlat left13:22
dalek nqp: cf6cfb3 | jnthn++ | src/vm/jvm/runtime/org/perl6/nqp/runtime/Ops.java:13:23
nqp: Implement accepts_type handling.13:23
nqp:13:23
nqp: This is the primitive that makes things like subset types work.13:23
nqp: review: https://github.com/perl6/nqp/commit/cf6cfb3f0013:23
JimmyZ left13:26
ztt_ left13:29
atroxaper left13:31
JimmyZ joined13:31
woosley1 joined13:35
xlat joined13:36
xlat jnthn: u were right, I was debugging Grammar::Debugger ^^13:43
jnthn .oO( yo dawg... )13:44
masak yo debawg.13:51
woosley1 left13:54
konundra joined13:55
timotimo how confident can one be in the restricted setting?13:55
r: say dir();13:56
camelia rakudo 7f0af9: OUTPUT«IO::Path<star> IO::Path<src> IO::Path<.subversion> IO::Path<.bashrc> IO::Path<nom-inst1> IO::Path<toqast> IO::Path<test3.pl> IO::Path<.profile> IO::Path<t> IO::Path<nom-inst2> IO::Path<nom-inst> IO::Path<toqast-inst> IO::Path<toqast-inst2> IO::Path<examples> IO::Pa…13:56
timotimo r: slurp("test3.pl")13:56
camelia rakudo 7f0af9: ( no output )13:56
timotimo r: slurp("test3.pl").say13:56
camelia rakudo 7f0af9: OUTPUT«use Test;␤␤{␤ "fooxbar" ~~ /x/;␤ is $/.prematch, "foo", ".prematch works";␤ is $/.postmatch, "bar", ".postmatch works";␤␤ is ("foo" ~~ /(f)/).kv.join("|"), '0|f', '.kv sees positional';␤ is ("foo" ~~ /$<x>=[f]/).kv.join("|"), 'x|f', '.kv sees names';…13:56
_ilbot joined13:56
timotimo r: dir("/etc").say13:57
_ilbot left13:57
camelia rakudo 7f0af9: OUTPUT«IO::Path</etc/terminfo> IO::Path</etc/issue.net> IO::Path</etc/login.defs> IO::Path</etc/issue> IO::Path</etc/rcS.d> IO::Path</etc/shells> IO::Path</etc/logcheck> IO::Path</etc/sysctl.d> IO::Path</etc/python> IO::Path</etc/resolv.conf> IO::Path</etc/locale.gen> IO:…13:57
timotimo huh.13:57
r: rename("foo", "bar")13:57
camelia rakudo 7f0af9: OUTPUT«rename is disallowed in restricted setting␤ in sub restricted at src/RESTRICTED.setting:2␤ in sub rename at src/RESTRICTED.setting:12␤ in block at /tmp/IRYbZjk3oE:1␤␤»13:57
timotimo righto.13:58
ajr joined13:58
timotimo so only the things that are supposed to write or modify are blocked13:58
ajrGuest2968913:58
Guest29689ajr_13:58
timotimo r: qx{echo hello}.say13:59
camelia rakudo 7f0af9: OUTPUT«qx, qqx is disallowed in restricted setting␤ in sub restricted at src/RESTRICTED.setting:2␤ in sub QX at src/RESTRICTED.setting:9␤ in block at /tmp/MuJlWm3Ybh:1␤␤»13:59
konundra_ joined13:59
timotimo r: my Mu $pio := nqp::open(nqp::unbox_s("echo 'exploit' > harmless_testfile.txt"), "rp"); $pio.close;14:00
camelia rakudo 7f0af9: ( no output )14:00
timotimo r: slurp("harmless_testfile.txt").say14:00
camelia rakudo 7f0af9: OUTPUT«exploit␤␤»14:00
timotimo :(14:00
masak Perl 6 is exploit-complete. a restricted setting is just a guideline, not a real protection. nor can it ever be.14:01
timotimo so for a try.perl6.org one would want a java applet or a pure-js interpreter.14:02
masak yes, definitely.14:03
timotimo shudders at the thought of using swing14:04
moritz_ joined14:05
moritz_ left14:05
_ilbot joined14:08
_ilbot left14:09
benabik joined14:13
atroxaper joined14:13
timotimo how can Task::Star fail its tests?14:14
dunno if i asked that on this channel already: does compiling MoarVM with emscripten sound sensible?14:16
logie joined14:17
moritz_ joined14:18
moritz_ left14:18
timotimo r: dir("t")14:21
camelia rakudo 7f0af9: ( no output )14:21
timotimo r: dir("t").say14:21
camelia rakudo 7f0af9: OUTPUT«IO::Path<t/fileops.t> IO::Path<t/ImportTest.pm6> IO::Path<t/jsync.data> IO::Path<t/frontend-std.t> IO::Path<t/run_spectests_p5> IO::Path<t/update_passing_test_data.pl> IO::Path<t/jsync.t> IO::Path<t/spectest_p5.data> IO::Path<t/clr.t> IO::Path<t/fudgeandrun> IO::Pa…14:21
timotimo r: dir("t").grep(*.Str eq "t")14:22
camelia rakudo 7f0af9: ( no output )14:22
timotimo r: dir("t").grep($_ eq "t")14:22
camelia rakudo 7f0af9: OUTPUT«use of uninitialized value of type Any in string context in block at /tmp/nhuxRjNb_L:1␤␤»14:22
FROGGS_ masak: https://gist.github.com/FROGGS/584517614:22
colomon left14:22
timotimo the dirwalk in ufo is recursing into itself endlessly, because apparently dir("foo", :test(*)) is returning foo now, too14:22
FROGGS_ masak: I think it is easier to maintain when the directives differ more (like they would do for binary for example)14:23
timotimo r: dir("t", :test(*)).say14:23
camelia rakudo 7f0af9: OUTPUT«IO::Path<t/..> IO::Path<t/fileops.t> IO::Path<t/ImportTest.pm6> IO::Path<t/jsync.data> IO::Path<t/frontend-std.t> IO::Path<t/run_spectests_p5> IO::Path<t/update_passing_test_data.pl> IO::Path<t/jsync.t> IO::Path<t/spectest_p5.data> IO::Path<t/clr.t> IO::Path<t/fudg…14:23
timotimo even worse, .. is contained in there!14:23
jnthn Everything matches whatever, I guess14:24
timotimo yeah. it must have changed some time in the past, though14:25
cognominal left14:26
timotimo r: dir("t", :test(*))[0].cleanup.say14:27
camelia rakudo 7f0af9: OUTPUT«IO::Path<t/..>␤»14:27
cognominal joined14:28
moritz_ joined14:28
moritz_ left14:30
masak FROGGS_: looking.14:30
FROGGS_ (20 lines more in total)14:30
_ilbot joined14:32
_ilbot left14:32
moritz_ joined14:33
moritz_ left14:33
masak FROGGS_: nice. it looks good, overall.14:34
FROGGS_: suggestion: 'sprintf', not 'SprintF'.14:35
FROGGS_: also, would it be possible to move the args checks from the TOP rule to the TOP action method?14:35
FROGGS_ masak: that should work, yes14:35
masak I don't see immediately why $*PADDING is needed, rather than just something like $<size><padding>14:37
er, $<size><padding>.ast14:37
timotimo masak: https://gist.github.com/timo/a7f69bb57820a9e5ce88 <- opinions?14:38
FROGGS_ masak: well, $*PADDING defines the default padding (for example if there is no size)14:38
masak: I updated the gist btw14:39
timotimo: I would use File::Spec.updir instead of '/..', because it can be something else on other systems14:40
masak timotimo: looks good.14:40
Rotwang left14:40
masak modulo what FROGGS_ just said :)14:41
FROGGS_: I'm not too fond of dynamicals where something else works just as well, is all.14:41
FROGGS_ true14:43
cognominal hi, is there a way to huffmanize this action : make $/{$/.keys[0]}.ast14:44
xlat-home joined14:45
jnthn cognominal: I'm...not sure that makes sense? "look up a randomish key in the match object"?14:45
Hashes aren't ordered in any way, so .keys[0] could give any of the keys14:45
cognominal if the rule is something like : A | B | C | D14:46
...it does make sense14:46
oops, I forgot the <>14:46
replay: if the rule is something like : <A> | <B> | <C> | C<D>14:47
arf14:47
timotimo FROGGS_: good point. masak do you have a moment to do that change yourself or should i make an updated patch? because i'll be afk for a bit now.14:47
cognominal <A> | <B> | <C> | <D>14:47
timotimo well, bbl.14:48
xlat left14:48
JimmyZ cognominal: https://gist.github.com/FROGGS/5845176#file-sprintf-pl-L138 like this?14:49
cognominal Jimmyz, that's exactly the natural form of what I want to huffmanize. I should have started by showing something like that.14:51
doing make $<rule>.ast for each rule is exactely what I want to avoid.14:52
FROGGS_ bbl, masak you can apply my patch from the gist if you want...14:52
cognominal also because I need to modify the action each time I had a rule to the alternation.14:52
JimmyZ cognominal: you may want ```for my $key (keys $/) { make $<$key>.ast; }```14:53
cognominal on the other hand, like jnthn said, but with other words make $/{$/.keys[0]}.ast is cryptic14:53
JimmyZ or something14:54
cognominal that sort of code come over and over. Probably some syntactic sugar could be invented.14:55
not that I think of one out of hand.14:56
crab2313 left14:57
crab2313 joined14:58
cognominal make $|/.ast # probably, that's what I would like to write14:58
crab2313 left15:00
cognominal but probably such huffmanization should address rules with quantifiers as well like <A> | <B>+ | <C>*15:00
may be I just need some routine.15:00
* need to write15:00
raiph left15:00
_ilbot joined15:06
_ilbot left15:07
raiph joined15:08
cognominal left15:10
panchiniak_ joined15:14
FROGGS[mobile] joined15:15
tomyan_ left15:22
masak timotimo: I leave it to you to make the patch. I don't feel involved enough in the issue at hand.15:22
konundra_ left15:26
konundra left15:26
timotimo OK15:29
_ilbot joined15:32
_ilbot left15:32
dmol joined15:34
tomyan joined15:39
tomyan left15:42
cognominal joined15:49
crab2313 joined15:52
skyheights joined15:52
konundra joined15:53
_ilbot joined15:53
konundra_ joined15:53
_ilbot left15:53
JimmyZ left15:56
ajr joined15:58
ajr_ left15:58
ajrGuest4264915:58
Guest42649ajr_15:58
Ulti sorear I'm only using IO::Pty::HalfDuplex because it's part of try.rakudo.org I'll try and work out what's happening, the tests hang and eventually fail on the first spawn()15:59
_ilbot joined16:00
_ilbot left16:01
_ilbot joined16:06
_ilbot left16:07
dmol left16:10
dmol joined16:10
tomyan joined16:11
_ilbot joined16:21
_ilbot left16:21
moritz_ joined16:21
moritz_ left16:21
colomon joined16:22
moritz_ joined16:26
moritz_ left16:26
domidumont joined16:28
yoleaux left16:28
[Coke] ok, the last pugs change I made didn't break everything on the original testing box, that's good.16:29
domidumont left16:30
moritz_ joined16:31
moritz_ left16:31
moritz_ joined16:36
moritz_ left16:36
_ilbot joined16:37
_ilbot left16:37
moritz_ joined16:41
moritz_ left16:42
pmichaud cognominal: ( <A> | <B> | <C> | <D> ) there are several ways around it16:48
one is to use protoregexes16:48
another is to use aliases16:48
for example16:48
<X=A> | <X=B> | <X=C> | <X=D> and then make $<X>.ast16:49
cognominal that's nice, I like it.16:49
pmichaud: what's about protoregex(es)? And what is the plural of regex btw?16:50
_ilbot joined16:51
_ilbot left16:52
pmichaud proto regex foo {...}; proto regex foo:sym<A> { <A> }; protoregex foo:sym<B> { <B> }; ... then each foo: candidate can have its own action method (and you know what the matching subrule is)16:52
cognominal nice to know. But pretty verbose in my case16:53
pmichaud++16:53
or <X = <A> | <B> | <C> | <D> > I suppose16:55
pmichaud I don't think that works16:56
cognominal oh, that should be $<X> = [ <A> | <B> | <C> | <D> ]16:57
rindolf left17:00
pmichaud that doesn't give you $<X>.ast, though.17:00
$<X> simply matches whatever text is matched by whatever is in the brackets.17:00
xilo joined17:01
pmichaud s/matches/contains/17:01
cognominal indeed17:02
atroxaper left17:06
cognominal so should I interpret you answer as "I think it should work" or "I think it should not work". With my syntax interpreted as some inline rule as opposed to mere capturing.17:06
pmichaud which answer?17:06
cognominal [18:56] <pmichaud> I don't think that works17:07
pmichaud I know that <X=A> | <X=B> | <X=C> | <X=D> will work, with $<X>.ast containing the .ast of whichever subrule matched17:07
<X = <A> | <B> | <C> | <D> > isn't valid syntax afaik17:07
konundra left17:08
konundra_ left17:08
yoleaux joined17:09
ChanServ set mode: +v17:09
pmichaud I'm afk again17:09
cognominal that's gives: Quote words construct too complex to use in a regex17:10
moritz_ joined17:10
jnthn Did you accidentally a space after a "<"?17:11
moritz_ left17:12
birdwindupbird left17:13
moritz_ joined17:15
cognominal jnthn, what do you want to say?17:16
moritz_ left17:16
fgomez left17:18
fgomez joined17:18
jnthn cognominal: The erorr you reported.17:19
gdey left17:20
_ilbot joined17:20
jnthn cognominal: I think you may have typed < foo=bar> or so, not <foo=bar>. The space after the < turns it into quote words.17:20
_ilbot left17:20
cognominal jnthn, no that's expected. I just said to pmichaud what was the error message for the example I gave that pmichaud said it would not work.17:21
_ilbot joined17:22
diakopter what do you people think about being 1/8 done with this century?17:22
_ilbot left17:22
ajr_ left17:23
moritz_ joined17:33
moritz_ left17:33
raiph left17:36
_ilbot joined17:37
_ilbot left17:37
jnthn Seems I've got a talk accepted at YAPC::EU :)17:37
masak \o/17:38
diakopter: I am disappointed at the rate of human colonization across our galaxy.17:39
domidumont joined17:41
cognominal masak: I am afraid that people think that's an alternative to fixing our problems in our home planet.17:42
masak it's not an either-or thing, IMHO. both are highly important.17:44
moritz_ joined17:44
moritz_ left17:45
xilo left17:46
xilo joined17:46
_ilbot joined17:47
_ilbot left17:47
cognominal well, I shoud reformulate in "fixing our problems in our culture". colonization, extra-terrestrial or not does not fix these problems17:48
benabik left17:50
crab2313 left17:53
Guest1337 left17:53
SamuraiJack left17:54
moritz_ joined17:55
lue .oO(Having another planet to overpopulate would give us more time. Alternatively, underwater colonies)17:55
moritz_ left17:55
masak overpopulation in general becomes a slightly smaller problem when there's more than one planet to choose from.17:58
FROGGS_ UFP WTF!18:00
panchiniak_ left18:00
FROGGS_ masak: any objections left about sprintf::Grammar?18:01
ugexe left18:01
ugexe joined18:02
sorear JimmyZ: http://hg.openjdk.java.net/18:05
moritz_ joined18:05
moritz_ left18:05
sorear timotimo: https://jdk6.java.net/plugin2/liveconnect/#JAVA_TO_JS18:06
timotimo: the design I'm planning to implement is to have an invisible applet that responds to evaluation methods, and implement the repl in html/js18:10
that way you get all the nice browser features like right click, copy for free18:10
benabik joined18:13
_ilbot joined18:15
_ilbot left18:15
BenGoldberg joined18:19
moritz_ joined18:22
moritz_ left18:22
moritz_ joined18:27
moritz_ left18:27
raiph joined18:29
moritz_ joined18:39
moritz_ left18:39
Rotwang joined18:40
_ilbot joined18:46
_ilbot left18:46
lizmat joined18:47
lizmat good *, #perl6!18:49
cognominal r: grammar A { token TOP { <a> || <b> } ; token a { '[' ~ ']' <[ab]> }; token b { '[b-]' } }; A.parse: '[b-]'18:49
camelia rakudo 7f0af9: OUTPUT«Unable to parse expression in a; couldn't find final ']'␤ in any FAILGOAL at src/stage2/QRegex.nqp:1037␤ in regex a at /tmp/zMlANBrRlX:1␤ in regex TOP at /tmp/zMlANBrRlX:1␤ in method parse at src/gen/CORE.setting:10697␤ in block at /tmp/zMlANBrRlX:1␤␤»…18:49
cognominal r: grammar A { token TOP { <a> || <b> } ; token a { '[' ~ ']' <[ab]> }; token b { '[b]' } }; A.parse: '[b]'18:49
camelia rakudo 7f0af9: ( no output )18:49
cognominal r: grammar A { token TOP { <a> || <b> } ; token a { '[' ~ ']' <[ab]> }; token b { '[b]' } }; say A.parse: '[b]'18:50
camelia rakudo 7f0af9: OUTPUT«「[b]」␤ a => 「[b]」␤␤»18:50
sorear o/ cognominal, lizmat !18:51
lizmat o/ sorear!18:51
cognominal o/ everyone18:52
with xlat-home, I wonder why the first parse fails and the second succeeds18:52
lizmat o/ cognominal!18:52
cognominal o/ lizmat, sorear18:52
colomon \o18:54
lizmat so how are we on the percentage of spectests passing on the JVM?18:54
raiph left18:54
lizmat colomon!18:54
[Coke] lizmat: https://github.com/coke/perl6-roast-data/blob/master/perl6_pass_rates 66.62% as of yesterday.18:55
today's run isn't done yet.18:55
lizmat wow… 2/3 passes, wow!18:56
[Coke] (that's 2/3 of the parrot impl.)18:56
jnthn eagerly awaits today's run18:57
xlat-home r: grammar A { token TOP { <a> || <b> } ; token a { '[' ~ ']' <[a]> }; token b { '[b-]' } }; A.parse: '[b-]'18:58
camelia rakudo 7f0af9: ( no output )18:58
raiph joined18:58
xlat-home grammar A { token TOP { <a> || <b> } ; token a { '[' ~ ']' <[ab]> }; token b { '[b-]' } }; A.parse: '[b-]'18:58
r: grammar A { token TOP { <a> || <b> } ; token a { '[' ~ ']' <[ab]> }; token b { '[b-]' } }; A.parse: '[b-]'18:59
camelia rakudo 7f0af9: OUTPUT«Unable to parse expression in a; couldn't find final ']'␤ in any FAILGOAL at src/stage2/QRegex.nqp:1037␤ in regex a at /tmp/nZD3WlU1i2:1␤ in regex TOP at /tmp/nZD3WlU1i2:1␤ in method parse at src/gen/CORE.setting:10697␤ in block at /tmp/nZD3WlU1i2:1␤␤»…18:59
colomon for those who remember me mentioning that my wife had just bought $450 worth of bookshelves while I was at YAPC::NA, we've just started assembling them. :)18:59
xlat-home just changing <[ab]> -> <[a]> make it works, but:18:59
r: grammar A { token TOP { <a> || <b> } ; token a { '[' <[ab]> ']' }; token b { '[b-]' } }; A.parse: '[b-]'19:00
camelia rakudo 7f0af9: ( no output )19:00
xlat-home changing A ~B C syntax to a A C B make it works, why ?19:00
lizmat colomon: if your wife did that, I would assume there is a good reason to get the shelves :-)19:00
cognominal afk& # need some walk to think clearly19:02
lizmat .oO{ you can only live inbetween piles of books for so long}19:02
cognominal: walk clearly, think some!19:03
pmichaud xlat-home: the ~ construct adds a "fail the match" component19:04
colomon lizmat: you can only live so many years without unboxing all your books from the last move...19:04
lizmat true: in our case, it's about 12 years now…(that some of our books have been in boxes, and still are :-(19:05
ugexe left19:05
colomon lizmat: scary thing is these are only intended to be a stop gap measure until we can afford cover an entire wall of the living room with IKEA bookshelves. ;)19:05
xlat-home pmichaud: thank u, that sounds ok, my bad.19:05
ugexe joined19:05
colomon *afford to19:05
lizmat is IKEA that expensive in the US then?19:06
colomon if you buy an entire wall's worth of bookshelves with glass doors, yes.19:06
lizmat glass doors? for bookshelves?19:07
Juerd Books are supposed to have dust covering the top.19:07
That's how you gauge how long they've been there. Without it, how would you know?19:07
lizmat ok, yes, then I can see they can run into some paper… our IKEA bookshelves are all without doors (Billy)19:07
fgomez left19:08
diakopter our IKEA bookshelves fell apart while moving19:08
geekosaur but glass doors keep the cats from using the books as convenient claw sharpeners19:08
fgomez joined19:08
lizmat eh…. you should at least take the shelves out19:08
diakopter yes, it was an extremely poor moving van packing job19:09
lizmat our Perl library lives in Ikea shelves, and has moved many a time to a conference or workshop19:09
diakopter like, miserably19:09
lizmat :-(19:09
geekosaur: get educated cats :-)19:09
colomon lizmat: Billy is what we were looking at, I think. Also, corner units at each end of the wall to be covered by bookshelves.19:10
geekosaur maggie had trouble remembering from week to week not to try to eat candle flames; book learning was just a bit beyond her :p19:10
_ilbot joined19:13
_ilbot left19:13
sorear fun, nqp-runtime.jar now contains a compile-time reference to sun.*19:18
jnthn sorear: I figured the only way to know how that would fly was to do it.19:18
dalek nqp: 1792c64 | sorear++ | src/vm/parrot/QAST/Operations.nqp:19:21
nqp: tweak error message in nqp::getpid19:21
nqp: review: https://github.com/perl6/nqp/commit/1792c6493d19:21
jnthn sorear++ # good catch19:22
dalek perl6-roast-data: 6755e3d | (Will "Coke" Coleda)++ | / (4 files):19:31
perl6-roast-data: today (automated commit)19:31
perl6-roast-data: review: https://github.com/coke/perl6-roast-data/commit/6755e3deca19:31
[Coke] that brings us up over 70% !19:31
sorear !19:32
moritz_ joined19:32
moritz_ left19:32
masak FROGGS_: <?{ $*PADDING := ~$<padding> if nqp::chars($<padding>); 1 }>19:33
better written as { $*PADDING := ~$<padding> if nqp::chars($<padding>) }19:34
(and I still suspect $*PADDING could be replaced by some simpler mechanism)19:34
FROGGS_ masak: that stops LTM19:34
masak <?{}> doesn't stop LTM!?19:35
sorear <?{}> does stop LTM19:35
FROGGS_ no, the block form19:35
sorear if you don't want to stop LTM, you need to use <!!{}>19:35
masak sorear: oh phew19:35
FROGGS_ hmmm19:35
masak wait what19:35
where's the logic in all of that?19:36
domidumont left19:36
[Coke] sorear++ jnthn++19:36
masak FROGGS_: also, I now see we really need to abstract out infix_x($padding, $size - $length) anyway.19:37
FROGGS_ about the padding, we could make a sub like sub padding { $<size><padding> || ' ' }...19:37
masak FROGGS_: it keeps cropping up everywhere with insignificant variations.19:37
FROGGS_: yes. FROGGS_++19:37
that's much better than a dynamical.19:37
sorear the contents of a <!before > are invisible to LTM19:37
<?before > is special to LTM: the contents of the <?before > replaces the continuation, essentially, since we assume it's more specific than what follows19:38
foo <?before bar> \w+ is LTMed like 'foobar {}'19:38
foo <!!before bar> \w+ is LTMed like 'foo \w+'19:39
jnthn Wow, 70%!19:40
woolfy 70%++19:40
sorear jnthn++19:41
jnthn: now beat niecza, I know you can do it19:41
jnthn sorear: Feel free to chip it a few commits towards it, if you fancy a little bug-hunting ;)19:41
sorear: Are you working on the interop stuff?19:42
tomyan left19:42
lizmat the 2 failing rakudo tests are in t/spec/S12-attributes/clone.t19:42
lizmat is checking19:42
sorear jnthn: yes, interop mostly atm19:42
jnthn sorear++19:43
sorear lizmat: yes, ssutch deliberately committed TODO tests to that file19:43
lizmat: probably should have been #?rakudo todo'd or so19:43
timotimo yeah, think so, oo19:43
lizmat Ah, but they aren't marked as todo19:43
will mark them as todo19:43
timotimo where do i find File::Spec.updir? is File::Spec a module? and if so, should it become a dependency of ufo? i thought ufo was meant to be dependencyless so that you can install things with it without installing anything before19:44
konundra joined19:45
dalek roast: 894a692 | (Elizabeth Mattijsen)++ | S12-attributes/clone.t:19:45
roast: Clone tests should be marked as todo for the time being19:45
roast: review: https://github.com/perl6/roast/commit/894a69219119:45
jnthn Hm, seems like fixing throws_like would be another big win.19:46
konundra_ joined19:46
dalek roast: 0bdad76 | (Elizabeth Mattijsen)++ | .gitignore:19:47
roast: Make sure we ignore any generated rakudo.parrot files19:47
roast: review: https://github.com/perl6/roast/commit/0bdad76f3c19:47
lizmat seems one can now rm t/spec/*/*.rakudo19:48
timotimo indeed, rakudo.parrot and rakudo.jvm are the new files19:50
[Coke] colomon++ noticed that was borked earlier.19:51
(throws_like)19:51
colomon left19:52
berekuk joined19:52
jnthn Of course, the interesting question is, "why"...19:52
colomon joined19:52
sorear I might also do applet stuff later.19:53
colomon just blew up his IRC program trying to figure out who else is talking about throws_like19:53
sorear and dukeleto wants me to do a real-time GC (for Parrot), which sounds fun19:53
jnthn aha, S04-exception-handlers/catch.t fails with the same error. It's probably easier to track it down from there...19:54
moritz_ joined19:54
diakopter sorear: do you mean precisely real-time, or actually wait-free19:55
ugexe left19:55
sorear diakopter: hard real time. there is a fixed bound on the number of cycles allocate is allowed to spend before returning, and a guarantee that allocate will never fail as long as total retained objects remains below a prespecified fraction of the heap size19:57
colomon jnthn: if you're talking about the "Wrong number of arguments passed; expected 1..1, but got 0", loads of files are doing that -- I suspect every one that calls throws_like. Possibly every one with exception handling at all?19:58
sorear I don't care whether locks are used, as long as we can prove that the waits are limited19:58
moritz_ left19:58
pjcj joined19:59
moritz_ joined19:59
jnthn colomon: well, turns out CATCH itself is busted!19:59
moritz_ left19:59
jnthn How the heck do we pass 70% of the tests with a busted CATCH... :)20:00
colomon jnthn: I'm thinking if you fix it, the results are going to be stupendous. ;)20:00
ugexe joined20:00
jnthn Plenty else is busted :P20:00
sorear jnthn: rakudo catch, nqp catch, or both?20:01
jnthn sorear: Rakudo only20:01
colomon jnthn: I'm not surprised by CATCH being broken; as nearly as I could tell by adding say statements, the problem had to be happening somewhere between try and CATCH, inclusive.20:01
sorear jnthn: note that there's a bit of a semantic change(?) with nqp catch20:01
jnthn: you may have noticed that in the REPL all exceptions resume20:02
jnthn sorear: Oh, I was wondering when that got regressed...20:03
sorear hmm, I can't reproduce the REPL exceptions bug right now. maybe jnthn++ fixed that?20:04
> say 1; nqp::null().gist; say 320:04
120:04
Can not call method 'gist' on a null object20:04
>20:04
moritz_ joined20:04
moritz_ left20:04
kaare_ left20:05
jnthn sorear: I saw it in Rakudo's REPL today20:05
heh...anybody want to fix a typo in roast? :)20:06
S04-phasers/begin.rakudo.jvm....................... 8 0 0 1 920:06
1 skipped: cannot assing to non-container20:06
...well, that's a pain in the butt :P20:07
lizmat jnthn: will fix20:07
sorear jnthn: another thing you may be aware of20:07
Stefans-MacBook-Air:nqp-jvm sorear$ ./nqp -e 'sub bob() { nqp::null().foo }; { bob(); say("hi"); CATCH { nqp::resume($!) } }'20:07
hi20:07
the doc comment for ExceptionHandling.throwInternal says it's not resumable, but this is manifestly wrong.20:07
ugexe left20:07
jnthn sorear: um, interesting :)20:08
ugexe joined20:08
dalek roast: 056fe4e | (Elizabeth Mattijsen)++ | S04-phasers/begin.t:20:10
roast: Only the rakudo on the JVM can't do these tests20:10
roast:20:10
roast: spotted by jnthn++20:10
roast: review: https://github.com/perl6/roast/commit/056fe4ed7120:10
timotimo is measuring the time between jnthn complaining about a busted CATCH and jnthn pushing the commit to fix it20:10
dalek rakudo/nom: 38173e7 | jnthn++ | src/Perl6/Actions.nqp:20:11
rakudo/nom: Initial fix to CATCH.20:11
rakudo/nom:20:11
rakudo/nom: Now it at least *sometimes* works.20:11
rakudo/nom: review: https://github.com/rakudo/rakudo/commit/38173e77a920:11
moritz_ joined20:11
jnthn lizmat: uh, no, that needs to be fudged for Rakudo in general20:11
lizmat: I just meant the typo in the word assign :P20:11
sorear Stefans-MacBook-Air:nqp-jvm sorear$ ./nqp -e 'sub bob() { nqp::null().foo }; { bob(); CATCH { say("Ex: "~$!); nqp::resume($!) } }'20:11
moritz_ left20:11
sorear Ex: Can not call method 'foo' on a null object20:11
more fun ^20:11
Ex: java.lang.RuntimeException: Stooge exception leaked20:11
Ex: java.lang.RuntimeException: Stooge exception leaked20:11
Stefans-MacBook-Air:nqp-jvm sorear$20:11
lue timotimo: 12m for a partial fix :)20:12
jnthn ...OK, so the comment is right (they're not resumable if you want anything to end well). :)20:12
sorear but why is it called "stooge"?20:13
dalek roast: 07b53b5 | (Elizabeth Mattijsen)++ | S04-phasers/begin.t:20:13
roast: Per request of jnthn20:13
roast: review: https://github.com/perl6/roast/commit/07b53b58eb20:13
sorear and why is there only one of them? :)20:13
cognominal I have tried to explain our problem in this gist. And it made me run into another problem. https://gist.github.com/cognominal/584627720:13
ugexe left20:13
ugexe joined20:13
jnthn sorear: dieInternal returns an exception so we can write "throw ExceptionHandling.dieInternal(...)" and Java compiler is happily convinced we're not coming back.20:14
lizmat jnthn: hmmm…. seems I got it wrong again :-) should learn to read20:14
anyway, I got the impression the test passes20:14
lizmat is doublechecking20:14
moritz_ joined20:16
moritz_ left20:16
sorear jnthn: note that, afaict, perl6_skip_handlers_in_rethrow is unneeded on jvm because ExceptioonHandling.java already contains logic to never reenter a handler20:17
jnthn sorear: Correct.20:17
logie left20:17
jnthn sorear: That's why we just do nothing on the JVM :)20:17
Somehow, at the moment, it ends up doing everything fine inside the CATCH...then the exception gets re-thrown again.20:18
dmol left20:19
sriliam joined20:23
lizmat jnthn: S04-phasers teet for our that test runs fine in rakudo, the todo/skip was unneccesary20:23
*tst20:24
*test20:24
grrrrr20:24
jnthn: so should I fudge rakudo.jvm? or add it to the ~30% remaining :-)20:25
jnthn lizmat: I'd rather not fudge stuff JVM-specific yet20:25
lizmat then all is fine20:25
jnthn lizmat: for now it's more helpful they fail outright so we can see what's left to do20:25
lizmat agree20:26
coming back to the keeping the capture trick with |c, I guess you cannot use that on multimethods, as it will change the signature, right?20:27
ssutch joined20:28
konundra left20:28
ssutch hello perl6!20:28
lizmat ssutch!20:28
moritz Files=713, Tests=19787, 2919 wallclock secs (12.13 usr 2.76 sys + 44.96 cusr 11.68 csys = 71.53 CPU)20:28
sorear ssutch!20:29
moritz!!20:29
konundra_ left20:29
ssutch peeps!20:29
sorear I like how I can tell that it's a jvm test just by looking at the times20:29
dalek rakudo/nom: 39d29d8 | (Elizabeth Mattijsen)++ | src/core/Any.pm:20:30
rakudo/nom: Remove superfluous named parameter20:30
rakudo/nom: review: https://github.com/rakudo/rakudo/commit/39d29d8d2720:30
moritz https://gist.github.com/moritz/5846436 # complete summary20:31
sorear: aborting many tests makes for a fast run, yes :-)20:31
SCNR20:32
labster r: say IO::Spec.updir() # use this timotimo20:32
camelia rakudo 7f0af9: OUTPUT«..␤»20:32
moritz -> sleep20:33
moritz left20:33
sorear moritz: more looking at the difference between wall and usr20:33
lizmat fwiw, the 19787 puts it at 75%+ in my book20:33
jnthn lizmat: That's attepted, not passed20:33
lizmat ah, ok :-(20:34
colomon lizmat: no frowns, the rate of progress here is phenomenal. Just not quite that fast. ;)20:37
sriliam left20:39
cognominal I added a comment in my gist. As said by xlat-home the result of the first iteration does not match the behavior explained by pmichaud20:40
sftp joined20:44
FROGGS[mobile] left20:46
dalek specs: 9b6b82a | (Elizabeth Mattijsen)++ | S32-setting-library/Containers.pod:20:46
specs: Spec Hash.exists and Hash.delete as internal methods20:46
specs: review: https://github.com/perl6/specs/commit/9b6b82a46920:46
ugexe left20:48
ugexe joined20:48
raiph moritz20:48
masak raiph20:48
sorear raiph: ENOMORITZ20:48
raiph hi sorear: moritz's irclogs are down; anyone know an alternate irclog url?20:49
lizmat sleep&20:49
sorear .oO( file:///Users/sorear/irclogs/freenode/#perl6.log )20:50
raiph :)20:50
masak .oO( we know the logs are down, see the backl... oh wait )20:50
sorear http://colabti.org/irclogger/irclogger_log/perl6?date=2013-06-2320:50
raiph i recall there being another one. it was mentioned on channel. so i could just sear .. oh wait20:51
thx20:51
ChanServ set mode: +o20:51
masak losing one's logs is like losing one's glasses.20:51
sorear changed the topic to: »ö« Welcome to Perl 6! | http://perl6.org/ | evalbot usage: 'perl6: say 3;' or rakudo:, niecza:, std:, or /msg camelia perl6: ... | irclog: http://colabti.org/irclogger/irclogger_log/perl6 | UTF-8 is our friend!20:52
sorear set mode: -o20:52
sorear will change it back once deutsche telekom gets their act together20:52
PacoAir left20:54
Rotwang left20:55
jnthn yays, jsut got S04-exception-handlers/catch.t to pass in full20:59
labster jnthn++21:00
sorear jnthn: \o/21:02
jnthn And seems throws_lajk now works too :)21:02
er, like :)21:03
moritz joined21:03
moritz left21:03
timotimo i re-made most of the camelia logo21:04
there was some *weird* stuff in the svg21:04
masak .oO( like a big happy butterfly )21:04
sorear .oO( jimmy hoffa's body? )21:04
FROGGS_ *cough* http://usev5.wordpress.com/21:07
sftp left21:08
moritz joined21:08
sorear FROGGS_: is that an actual book?21:08
moritz left21:08
lue .oO( Hand-crafted lines you've now mercilessly tossed aside in favor of more precise ones? )21:08
FROGGS_ sorear: no21:08
jnthn meh, I busted something else while fixing the exception stuff...21:09
Take 2.21:09
sftp joined21:10
sorear "You know the Inline modules? Well, it is not quiet like that"21:10
.oO( I can has commitbit? )21:10
TimToady FROGGS_: ss/test suite if from/test suite is from/21:10
_ilbot joined21:10
_ilbot left21:10
xlat-home left21:10
FROGGS_ jnthn: btw, my test_summary script generates a REGRESSION file, in case a test file looses passes or the plan, might be handy for you too21:11
TimToady: thanks, will fix21:11
masak FROGGS_: s/quiet nice/quite nice/21:11
FROGGS_ sorear: to the repo? sure21:11
damn it *g*21:11
sorear FROGGS_: to the blog :p21:11
s/quiet/quite/21:11
FROGGS_ sorear: does that work?21:12
masak s/Quiet Awesome/Quite Awesome/21:12
FROGGS_ meh21:12
_ilbot joined21:12
sorear quiet is the opposite of noisy.21:12
you want quite.21:12
masak FROGGS_++ # quiet a nice post :)21:12
_ilbot left21:12
FROGGS_ hehe21:13
masak happy to report I correctly guessed which were the 2.5 languages before seeing it at the bottom :P21:13
FROGGS_ masak++ # yepp, :o)21:14
masak FROGGS_++ # v521:15
jnthn "Not Quiet Perl" - is that a comment on its stack traces? :D21:16
FROGGS_++21:16
FROGGS_ hehe21:16
no, fixed that too21:16
looks like a problem with quiet/quite21:16
timotimo my painstakingly fixed version of camelia.svg is 23kb big instead of the previous 160kb21:17
KB actually21:17
but i don't know if i can create a .odg file from it properly21:17
flussence you can only find out if you try21:18
vm joined21:19
colomon FROGGS_ blog?21:19
_ilbot joined21:19
_ilbot left21:19
FROGGS_ colomon: yesh21:20
colomon link?21:20
pretty please?21:20
FROGGS_ http://usev5.wordpress.com/21:20
colomon I like the name. ;)21:20
FROGGS_++21:20
FROGGS_ well, froggs.* and allthewaydown.* were already taken :/21:21
fridim_ left21:23
ugexe left21:26
ugexe joined21:27
timotimo i made an odg version and will now try to make a .jpg and .ico files for 32x32 and 16x1621:27
_ilbot joined21:27
_ilbot left21:28
dalek specs: 0cca600 | (Brent Laabs)++ | S32-setting-library/Numeric.pod:21:30
specs: round method produces a Real, not always Int21:30
specs: provided a better description of what the specced algorithm actually does21:30
specs: review: https://github.com/perl6/specs/commit/0cca60092521:30
timotimo h, those ico files were hand-crafted. very good.21:31
holy hell, that .jpg file deserves to get nuked21:31
(no offense, larry)21:31
sorear um21:32
that's line art21:32
this is 201321:32
isn't png supported yet?21:32
_ilbot joined21:33
_ilbot left21:33
jnthn sorear: I don't suppose you have any Awesome Ideas what we might be able to do on the whole "method code too large" thing that some spectests are hitting?21:34
(Aside from "generate better code"...)21:35
timotimo sorear: i am replacing the .jpg and .pdf versions with .odf and .svg and .png21:35
moritz joined21:37
moritz left21:37
fridim_ joined21:37
labster timotimo++: camelia is no longer a decade behind21:38
dalek mu: 5af0e6c | (Timo Paulssen)++ | misc/camelia. (5 files):21:38
mu: rework camelia.svg, create .png, .odg and delete .jpg, .pdf21:38
mu: review: https://github.com/perl6/mu/commit/5af0e6ce4421:38
timotimo :)21:39
_ilbot joined21:41
_ilbot left21:41
moritz joined21:42
moritz left21:42
labster the new camelia is so clean, she shows off the dead pixels in my monitor beautifully21:42
vm left21:43
labster chromatic-- for trolling21:44
sorear jnthn: I'm actually working on "generate better code"21:44
jnthn sorear: yay :)21:45
sorear jnthn: I'm not sure how much better I can make it, though, and so eventually we'll need to think about method splitting21:45
I noticed you have a little hack in the post-derialization codegen :)21:45
jnthn sorear: Yeah... But we know a lot about the structure of that :)21:45
sorear: It's costing us test files like rx.t21:46
sorear How many spectests are hitting code too large?21:46
I mean we compile the setting fine, how many spectests are larger than the setting?21:46
jnthn 8ish21:46
sorear the setting takes three minutes to compile on parrot, how long does rx.t take to compile on parrot?21:46
jnthn The problem is amount of code in a particular QAST::Block21:46
The setting doesn't have any crazily long methods21:46
Test files, however, may just be one HUGE swathe of calls, all in a block.21:47
sorear yeah, the codegen changes I'm working on are directed closely at calls21:47
jnthn Case in point: https://github.com/perl6/roast/blob/master/S05-mass/rx.t21:48
sorear and the "dump everything on the stack, then immediately reload" behavior21:48
jnthn A 3000 line single block21:48
Yes, at the moment it's doing the "correct, but suboptimal" thing there.21:48
TimToady why is camelia wearing black lipstick now?21:48
sorear I think we can eliminate that in most cases by making StackState cleverer, but I haven't worked out all the details yet21:48
jnthn Yeah, when I was doing it I pondered it and the details felt...hairy... :)21:49
So I did the simple thing so I could move on.21:49
labster TimToady: she's 13, it must be a Goth phase21:49
sorear the png looks OWWW21:50
https://raw.github.com/perl6/mu/5af0e6ce44e09d4df7680bfa8d7da27cac2c3b21/misc/camelia.png # look at those cracked lips21:50
FROGGS_ I believe this is a bit out of date: http://www.perl6.org/archive/people.html21:50
sorear and I think the screen printing on her wings is getting ready to peel off21:50
_ilbot joined21:52
TimToady also, the .pdf is the original, so not sure you should lose it21:52
_ilbot left21:52
dalek nqp: 49eb104 | jnthn++ | src/vm/jvm/ (2 files):21:53
nqp: Provide a way to force exit after unwind.21:53
nqp:21:53
nqp: This is needed to support the nqp::p6return op. On the JVM, we always21:53
nqp: promote exception handlers into their own blocks, unlike on Parrot.21:53
nqp: While this rarely leaks out, it did in this case; this is used to21:53
nqp: contain the leak.21:53
nqp: review: https://github.com/perl6/nqp/commit/49eb1044ea21:53
colomon FROGGS_++21:53
dalek rakudo/nom: b9869c2 | jnthn++ | src/vm/jvm/Perl6/Ops.nqp:21:54
rakudo/nom: Make p6return force exit of outer handler block.21:54
rakudo/nom:21:54
rakudo/nom: This means a CATCH with a matching when or a default will now actually21:54
rakudo/nom: act handled rather than always rethrowing.21:54
rakudo/nom: review: https://github.com/rakudo/rakudo/commit/b9869c2b3f21:54
jnthn Between those two we attempt (no idea about pass) ~ 600 more tests, or thereabouts...21:54
oh, some of them may be other things I did earlier...21:55
Anyway, improvement.21:55
sorear jnthn: can you explain what's going on in that nqp commit to me?21:55
jnthn sorear: Exception handlers on Parrot are generated "in line", in a single .sub21:55
sorear: That means being able to jump into a sub some way down the stack, which isn't really achievalbe on the JVM21:55
sorear: So the handler logic gets promoted to a block of its own. That's fine, but there's a place that relied on leaving from the handler meant leaving the block the handler was in. So it was "off by one" on the JVM.21:56
sorear: That plus the Rakudo commit I just pushed work around it.21:56
sorear why can't you just use UnwindException to leave the handler?21:57
colomon "a bit out of date" is a bit of an understatement -- that list predates my 2009 exposure to the project21:58
sorear niecza gets along fine without an extra bit in the callframe21:58
jnthn sorear: Probably could, I was going for the least disruptive change for now.22:01
Hm, it's not immediately clear to me how to...22:01
Can be revisited at some point, if it works out neater/cheaper another way. Which will almost certainly be the case for the exception stuff.22:02
sorear extra code in every block just makes me a little sad :)22:03
jnthn *nod*22:03
I suspect the whole exception stuff can be cleaned up somewhat.22:04
There's probably more Parrotisms in there that could go, like the "skip in rethrow" that was already done away with on JVM.22:04
sorear (finding parrotisms)++22:05
jnthn Moar's handlers are vaguely cute in so far as you can just point the handler of a next/last/redo at the right place in the loop and there's no actual handler, it just unwinds and sets teh PC and done. :)22:07
sorear niecza is the same way.22:08
also, the code generator is smart and optimizes a throw in the same block as a handler into a goto22:08
which combines really nicely with block inling22:09
moritz joined22:11
skids joined22:11
moritz left22:11
daniel-s left22:12
daniel-s joined22:13
sorear jnthn: I think block splitting is not impossible, but it probably has to be done at the jast2bc level, and it will have a substantial run-time perfomance penalty...22:15
jnthn sorear: I don't think any code where performance matters is likely to hit this, though. :)22:16
moritz joined22:17
_ilbot joined22:21
_ilbot left22:21
moritz left22:21
_ilbot joined22:31
_ilbot left22:31
moritz joined22:34
moritz left22:35
_ilbot joined22:38
_ilbot left22:39
masak 'night, #perl622:41
_ilbot joined22:49
_ilbot left22:49
echoprinter joined22:58
FROGGS_ .tell masak good morning! I updated the gist https://gist.github.com/FROGGS/584517623:15
yoleaux FROGGS_: I'll pass your message to masak.23:15
sorear good morning FROGGS_23:16
FROGGS_ morning sorear23:17
jnthn wait, morning?23:18
:)23:18
FROGGS_ almost O.o23:19
moritz joined23:20
moritz left23:20
gdey joined23:23
ssutch is it possible to run methods to a class?23:24
diakopter run?23:24
ssutch like Message.dostuff = sub ($obj, $stuff) { }23:24
diakopter that's the MONKEY_PATCHING thing sorear mentioned to you the other day23:25
moritz joined23:25
moritz left23:26
sorear (method ($stuff) { ... })($obj, $thing)23:27
flussence you can assign anonymous subs to variables, if that's what you mean.23:27
ssutch i am trying to generate classes at runtime instead of compile classes23:28
jnthn Use the MOP23:28
flussence I was going to say that... does it have any decent docs though?23:29
jnthn Maybe some in S1223:29
ssutch (not afraid to read code)23:29
jnthn Also, http://jnthn.net/papers/2012-gpw-meta-programming.pdf has examples of doing exactly that23:29
ssutch oh sweet23:30
flussence I know the things like ^add_method and ^compose_class or whatchamacallit, but I don't see those in the specs at all...23:30
logie joined23:31
ssutch jnthn is this talk online?23:31
jnthn ssutch: I'm not aware of any videos of it, sadly.23:31
ssutch shucks23:33
this helps a lot, thanks!23:33
_ilbot joined23:34
_ilbot left23:35
moritz joined23:36
moritz left23:36
FROGGS_ gnight all23:37
FROGGS_ left23:41
moritz joined23:41
moritz left23:41
FOAD left23:45
FOAD joined23:46
spider-mario left23:48
timotimo TimToady: i will now restore the lipstick23:52
moritz joined23:54
moritz left23:54

Logs Search ←Prev date Next date→ Channels Documentation