»ö« Welcome to Perl 6! | perl6.org/ | evalbot usage: 'perl6: say 3;' or rakudo:, niecza:, std:, or /msg camelia perl6: ... | irclog: irc.perl6.org/ | UTF-8 is our friend! Set by moritz on 3 May 2013. |
|||
timotimo | now i finally understand what »ö« is %) | 00:04 | |
sorear | LD | ||
:D | |||
timotimo | holy hell, the camelia.svg is *weird* | 00:06 | |
00:06
moritz joined
|
|||
timotimo | every line seems to be made up of rectangles | 00:06 | |
and they are aligned to create lines; except in inkscape i can see little slits between the rectangles | 00:07 | ||
00:07
moritz left
00:08
telex joined
|
|||
diakopter | well, building nqp-jvm from scratch took 6 minutes; 6.5 minutes for rakudo-jvm | 00:08 | |
00:08
_ilbot joined
00:09
_ilbot left,
telex left
00:10
telex joined
|
|||
timotimo | oh, even *weirder*, there is little pie-slices between the rectangles even | 00:11 | |
00:12
telex left
00:14
telex joined
|
|||
sorear | timotimo: i think that if you make a svg that looks approximately like the current one but is neater it would be gladly accepted | 00:15 | |
timotimo | i have a wacom tablet at home, i could surely invest a few minutes | 00:16 | |
00:17
_ilbot joined,
_ilbot left
00:25
telex left
00:26
araujo joined,
ugexe left
|
|||
sorear | ugh. nqpclasshow assumes nqp::where values are unique | 00:26 | |
00:26
telex joined
|
|||
sorear | in addition to the multi cache | 00:26 | |
00:26
ugexe joined
00:27
raiph joined
|
|||
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 | |
00:29
ugexe left
00:30
moritz joined,
moritz left
00:31
Chillance left,
ugexe joined
|
|||
colomon | 496 even, 504 odd | 00:33 | |
1000 good versus 0 bad | |||
jnthn++ | |||
00:35
Rotwang left
00:37
pdurbin joined
|
|||
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 irclog.perlgeek.de/perl6 it seems... | ||
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/unresponsive | 00:39 | |
diakopter | hrm | ||
sorear | pdurbin: i think moritz is painfully aware at the moment of how much his connection is sucking | ||
labster | Yeah. ilbot is not here at present, please leave a message with yoleaux if you need to get through to someone. | 00:40 | |
00:40
Guest1337 left
|
|||
pdurbin | ah. thanks for the info. I'll check for updates at colabti.org/irclogger/irclogger_log/perl6 | 00:41 | |
00:41
moritz joined,
moritz left
|
|||
labster | ^^ see, there goes moritz' spotty connection again. | 00:42 | |
diakopter | sorear: heh, that test run left an eval-server running | ||
pdurbin | poor guy | 00:43 | |
sorear | diakopter: see why I'm keen to fix it? :) | 00:44 | |
pdurbin | he's been making a ton of commits at github.com/moritz/ilbot lately too | ||
00:48
census left
|
|||
timotimo | what html templating engine and what web app is currently the closest to "usable"? | 00:49 | |
i'm guessing bailador? | |||
and what is sensible for templating? | |||
00:53
moritz joined,
moritz left
|
|||
tadzik | I like Template::Mojo | 00:53 | |
but I wrote it, so I'm biased :P | |||
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 -Xbootclasspath | 01:02 | |
01:02
ugexe left,
ugexe joined
|
|||
sorear | and . should probably be removed in any event, I think that's the root cause of the calss problems | 01:02 | |
01:02
BenGoldberg joined
01:03
pdurbin left
01:04
moritz joined,
moritz left
|
|||
labster | dumb question, but how do you specify that a multi method takes exactly zero arguments? | 01:07 | |
sorear | multi foo() { ... } | 01:08 | |
01:09
moritz joined
|
|||
ssutch | r: sub protofile($fn) { say $filename; }; module Mod is protofile('hello.proto'); | 01:09 | |
camelia | rakudo 51f4eb: OUTPUT«===SORRY!===Variable '$filename' is not declaredat /tmp/cqovE4tFar:1------> sub protofile($fn) { say $filename⏏; }; module Mod is protofile('hello.prot expecting any of: postfix» | ||
01:09
moritz left
|
|||
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------> » | ||
[Coke] | here are the 2 cabal install failures I get: any help appreciated. | ||
gist.github.com/coke/5843322 | |||
labster | sorear: multi method round(Int:D:) { self } gives me: ambiguous call ... :(Int:D : Mu *%_) in rakudo | 01:11 | |
colomon | 19638 tests now? | 01:12 | |
labster | is that a bug, then? | ||
sorear | labster: what other candidates do you have? | 01:13 | |
labster | :(Int : $scale = { ... }, Mu *%_) | ||
The Mu *%_ is automatically generated on both, it seems. | 01:14 | ||
01:14
moritz joined,
_ilbot joined,
_ilbot left,
moritz left
|
|||
labster | I guess that's an issue of no arguments not being more specific than an optional argument. | 01:15 | |
sorear | labster: oh, NAMED arguments | ||
labster: well, when you declare round(Int:D:) you do get a method which takes zero positional arguments | |||
Mu *%_ only matches named arguments | 01:16 | ||
it's specced that methods ignore unknown named arguments | |||
timotimo | chtop | 01:21 | |
... | |||
labster | Iâ ftaghn | 01:23 | |
Round is specced to return Int, but is there any real reason why this shouldn't work? | |||
r: say 10.35.round(0.5) | |||
camelia | rakudo 51f4eb: OUTPUT«10.5» | ||
colomon is starting to suspect that throws_like does not work on rakudo jvm | 01:24 | ||
01:24
ugexe left,
ugexe joined,
moritz joined
01:25
moritz left
|
|||
colomon | ===SORRY!=== | 01:25 | |
Wrong number of arguments passed; expected 1..1, but got 0 | |||
01:25
konundra joined
01:26
konundra_ joined
01:27
FROGGS_ joined
01:31
moritz joined,
moritz left,
FROGGS left
01:33
_ilbot joined
01:34
_ilbot left,
JimmyZ joined
01:36
moritz joined,
moritz left
|
|||
ssutch | how can i make a trait that will run like this: "module Foo is bar('abcdef');" | 01:39 | |
for instance, this: github.com/perl6/roast/blob/master...ckage.t#L8 doesn't seem to work | |||
rakudo complains: Method 'declares_method' not found for invocant of class 'NQPClassHOW' | 01:40 | ||
01:41
ugexe left,
ugexe joined,
moritz joined,
moritz left
|
|||
ssutch | r: gist.github.com/samuraisam/5843391 | 01:42 | |
camelia | rakudo 51f4eb: OUTPUT«===SORRY!===Method 'declares_method' not found for invocant of class 'NQPClassHOW'at /tmp/3SiVVFUH5Y:15------> » | ||
01:42
_ilbot joined,
ugexe left
01:43
_ilbot left
|
|||
[Coke] | diakopter++ | 01:43 | |
01:46
ugexe joined
|
|||
timotimo | itym is(thing, :$described! | 01:46 | |
sorear | [Coke]: hey, you're TPF aren't you? | 01:48 | |
01:50
_ilbot joined,
ugexe left
|
|||
[Coke] | sorear: I'm on the grants committee. Pretty much as little TPF as one could be. What's up? | 01:50 | |
01:50
_ilbot left
01:51
ldthien0 joined,
ugexe joined
|
|||
sorear | [Coke]: oh, I just mailed a CLA on the 18th and waiting impatiently for any indication that it was successfully delivered | 01:52 | |
JimmyZ | ssutch: this test is not passed in rakudo | 01:56 | |
[Coke] | what was the zip on the delivery? | ||
ssutch | ah i see | ||
how does nativecall do it then | |||
[Coke] | ... actually, nevermind. doesn't matter, I'd never see it. :) | ||
... let me see if I have a google doc or something. | 01:57 | ||
JimmyZ | ssutch: it does role[] | 01:59 | |
ssutch: not role() | |||
[Coke] | sorear: I have access to to a google doc you're not on yet. | ||
you'll probably hear about it before I notice. | |||
good luck! ;) | |||
sorear | Thanks :D | 02:02 | |
02:03
_ilbot joined,
_ilbot left
|
|||
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. | ||
There is gnu.getopt | |||
Or commons CLI | 02:09 | ||
Or, or, or... But, yes, it's all third pary. | |||
02:10
_ilbot joined,
_ilbot left
|
|||
ssutch | r: gist.github.com/samuraisam/5843391 | 02: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… | ||
ssutch | hm, the the signature should match | 02:12 | |
timotimo | github.com/jnthn/zavolaj/blob/mast...l.pm6#L240 - they should look live that | 02:13 | |
well, okay, those are all Routines | 02:14 | ||
dalek | kudo/nom: 077875a | (Brent Laabs)++ | src/core/Int.pm: add Int.round with arguments to fix RT#118545 |
02:16 | |
ssutch | even if i change the type to 'Any' it still won't find it | 02:19 | |
JimmyZ | ssutch: should be role description[Str $description] | 02:20 | |
02:20
_ilbot joined,
_ilbot left
|
|||
ssutch | r: gist.github.com/samuraisam/5843391 | 02: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:25
fgomez joined
|
|||
ssutch | blarb! | 02:26 | |
diakopter | barble! | 02:27 | |
timotimo | i think ufo got b0rked | ||
and i still can't build rakudo::debugger; i'm slowly getting pretty mad at this whole deal | 02:28 | ||
ssutch | is there something you use instead of 'does' on type objects? | 02:34 | |
colomon | ssutch: what are you trying to do? | ||
ssutch | apply a trait to a Class object | ||
or a Module object | |||
diakopter | "but" | ||
colomon | you apply a role using does | 02: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 library | ||
ssutch to use it, you say use PB; module MyIDL is proto('path/to/file.proro'); | 02:38 | ||
02:38
moritz joined,
moritz left
|
|||
JimmyZ | r: role protobuf[Str $file] {has $.file is rw;}; class Monkey does protobuf['hello'] { } | 02:38 | |
camelia | rakudo 51f4eb: ( no output ) | ||
ssutch | then all of the stuff defined in your proto is available | 02: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.say | ||
camelia | rakudo 51f4eb: OUTPUT«hello» | ||
02:43
moritz joined,
moritz left
02:44
ldthien0 left
02:46
ldthien0 joined
02:48
moritz joined
02:49
moritz left
02:54
ssutch left
02:56
_ilbot joined
02:57
_ilbot left
02:58
SamuraiJack joined,
ldthien0 left
02:59
moritz joined,
moritz left
|
|||
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 | ;) | ||
diakopter | heh. | ||
the Game of Throes | |||
03:05
_ilbot joined,
_ilbot left
03:14
potatogim left,
potatogim joined
03:15
potatogim left
03:20
raiph left
|
|||
dalek | gs.hs: 0d18b5d | coke++ | Pugs/src/Pugs/AST/Eval.hs: track changes needed for latest ghc |
03:21 | |
03:23
moritz joined,
moritz left
03:24
dmol joined
03:28
moritz joined,
moritz left
03:30
FOAD left,
FOAD joined
03:33
preflex left,
preflex_ joined,
ChanServ sets mode: +v preflex_
03:34
preflex_ is now known as preflex
|
|||
[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 joined
|
|||
diakopter | seems legit [not] | 03:43 | |
sorear | [Coke]: i would not care | ||
[Coke] | I attempted a patch to get by the compilation error tripped on the new box. *boom* | ||
03:43
BenGoldberg left
|
|||
sorear | [Coke]: there's no point continuously integrating an implementation that's not changing | 03:43 | |
diakopter | (you're just tracking how much the spec changes at that point) :) | 03:44 | |
03:44
moritz joined
03:45
moritz left,
woosley1 joined
|
|||
[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 | ||
avuserow1: hi | |||
[Coke] | something _sj2? doesn't look like they're here. | 03:47 | |
zzz. | 03:48 | ||
03:48
_ilbot joined,
_ilbot left
|
|||
diakopter | jeff shaw? | 03:48 | |
03:52
dmol left,
raiph joined
03:53
_ilbot joined,
_ilbot left
03:55
_ilbot joined,
_ilbot left
04:06
moritz joined,
moritz left
04:11
atroxaper joined
04:14
flaviusb joined
04:21
_ilbot joined,
_ilbot left
04:27
Psyche^ joined
04:30
_ilbot joined
04:31
Patterner left,
Psyche^ is now known as Patterner,
_ilbot left
04:38
_ilbot joined,
_ilbot left
04:44
woosley1 left
04:48
kaare__ joined
05:15
moritz joined,
moritz left
05:16
arlinius left
05:18
moritz joined
05:23
_ilbot joined
05:26
moritz left
05:29
moritz joined
05:30
moritz left,
_ilbot left
05:41
konundra_ left,
_ilbot joined,
_ilbot left
05:42
cognominal left,
konundra left
05:43
arlinius joined
05:44
preflex left
05:46
preflex joined,
ChanServ sets mode: +v preflex
05:47
panchiniak_ left
05:50
JimmyZ left
05:53
JimmyZ joined
05:58
JimmyZ_ joined
06:02
JimmyZ left,
JimmyZ_ is now known as JimmyZ
06:09
moritz joined,
moritz left
06:13
_ilbot joined,
_ilbot left
06:17
_ilbot joined
06:18
_ilbot left
06:25
renormalist left
06:31
moritz joined
06:37
berekuk joined,
moritz left
06:38
renormalist joined
06:40
_ilbot joined,
_ilbot left
06:41
berekuk left
06:45
jaldhar joined
06:51
berekuk joined
06:52
FROGGS[mobile] joined
|
|||
FROGGS[mobile] | o/ | 06:53 | |
sorear | o/ | ||
06:55
moritz joined,
moritz left
06:57
kaare__ is now known as kaare_
06:58
_ilbot joined,
_ilbot left
07:04
potatogim joined,
domidumont joined
07:05
atroxaper left
07:06
_ilbot joined
07:07
_ilbot left
|
|||
labster | o/ | 07:11 | |
07:11
logie joined
07:13
_ilbot joined,
_ilbot left
07:16
domidumont left,
logie left
07:17
domidumont joined,
moritz joined
07:19
moritz left
|
|||
labster | r: round(3i) | 07:24 | |
camelia | rakudo 077875: OUTPUT«(timeout)» | ||
labster | r: floor( 2i ) | 07:26 | |
camelia | rakudo 077875: OUTPUT«maximum recursion depth exceededcurrent 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:27
moritz joined,
moritz left
|
|||
labster | r: (3i).floor | 07:29 | |
camelia | rakudo 077875: OUTPUT«maximum recursion depth exceededcurrent 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:30
_ilbot joined
07:31
raiph left,
_ilbot left
|
|||
sorear | nqp-jvm: sub foo() { foo; }; foo; | 07:32 | |
07:32
dukeleto joined
|
|||
camelia | nqp-jvm: ( no output ) | 07:32 | |
sorear | \o/ StackOverflowError works in rakudo-jvm | 07:33 | |
labster | good work sir | ||
07:34
raiph joined
|
|||
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 well | 07:34 | |
dukeleto utilizes the appropriate channel | 07:35 | ||
07:35
_ilbot joined
07:36
_ilbot left
|
|||
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… | ||
labster | niecza++ | ||
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: :) | ||
JimmyZ: floor() is not commonly defined on reals, but I would say that floor(a+b*i) should be floor(a)+floor(b)*i | |||
because floor() is a linear function | 07:39 | ||
s/on reals/on complexes/ | |||
sorear | linear in what sense | 07:40 | |
JimmyZ | or LTA | 07:41 | |
LTA bug, maybe | |||
labster | Well, infinite loops are definitely LTA. | ||
07:41
benabik left
|
|||
JimmyZ | afk | 07: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 floor | 07: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 definition | 07:44 | ||
07:49
arlinius left
07:50
moritz joined,
moritz left
|
|||
dukeleto | sorear: floor(a*b+c)=floor(a)*floor(b)+floor(c) or am I mistaken? | 07:50 | |
sorear: that would seemingly make it linear | |||
sorear: but i understand wanting to leave floor(a+b*i) undefined | |||
labster | according to google, the use case seems to be mostly in formatting output. Mathematica defines Floor on complex values. | 07:54 | |
07:55
_ilbot joined,
moritz joined,
_ilbot left,
moritz left
07:57
_ilbot joined,
_ilbot left
|
|||
sorear | dukeleto: you are mistaken. consider a=1, b=c=0.6 | 07:59 | |
08:00
JimmyZ left
08:01
_ilbot joined,
_ilbot left
08:03
Ben_Goldberg left
08:06
GlitchMr left,
sisar joined
|
|||
sisar | o/ | 08:06 | |
how do i make the prompt ">" in the rakudo REPL colored ? | 08:08 | ||
08:08
GlitchMr joined
|
|||
FROGGS[mobile] | sisar: there is a term::ansicolor module | 08:10 | |
sisar | FROGGS[mobile]: i thought that was for printing color output, not for controlling the REPL's color | 08:12 | |
FROGGS[mobile] | ahh now I understand | ||
sisar | :) | ||
sorear | modify your rakudo to include escape sequences in the prompt | ||
FROGGS[mobile] | dunno where the repl code is though | 08:13 | |
sisar | sorear: how do i do that ? Need more pointers | ||
sorear | github.com/perl6/nqp/blob/master/s...r.nqp#L184 | 08:15 | |
FROGGS[mobile] | and you can steal the escape sequences from term::ansicolor | 08:16 | |
sorear | could add an override to src/Perl6/Compiler | ||
man console_codes is always a good bet too | |||
08:16
_ilbot joined
|
|||
sisar | FROGGS[mobile], sorear: ok, makes sense now. I'll give it a try. Thanks. | 08:16 | |
08:16
_ilbot left
08:18
moritz joined,
moritz left
08:23
arlinius joined,
moritz joined,
_ilbot joined,
_ilbot left,
moritz left
08:25
_ilbot joined,
_ilbot left
08:26
tomyan joined
08:32
tomyan left
08:35
flaviusb left
08:37
berekuk left,
_ilbot joined,
_ilbot left
08:38
berekuk joined
08:40
FROGGS[mobile] left,
moritz joined
08:42
_ilbot joined,
_ilbot left,
moritz left
08:43
berekuk left
08:44
domidumont left
|
|||
masak | good antenoon, #perl6 | 08:48 | |
08:49
_ilbot joined,
_ilbot left
08:50
berekuk joined
|
|||
FROGGS_ | hi masak | 08:51 | |
08:52
_ilbot joined,
_ilbot left
08:53
berekuk left
08:56
_ilbot joined
08:57
_ilbot left
|
|||
sorear | 'night, #perl6 | 08:58 | |
FROGGS_ | night sorear | 08:59 | |
09:04
_ilbot joined
09:05
Guest1337 joined
09:17
xlat joined,
_ilbot left
|
|||
masak | good night, sorear | 09: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 it | 09: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 too | ||
masak | I definitely think we should support %u. question is how. | ||
FROGGS_ | hmmm, dunno if should be limited | 09:27 | |
feels strange to have bigints in core and then no way to printf it | 09:28 | ||
09:32
moritz joined,
moritz left
|
|||
masak | I think the guiding principle should be that we want to have great bigint support. | 09:34 | |
rn: say sprintf '%u', -5 | |||
camelia | rakudo 077875: OUTPUT«4294967291» | 09:35 | |
..niecza v24-81-g6672fa2: OUTPUT«-5» | |||
dukeleto | +1 to great bigint support :) | ||
masak | hm. maybe follow Parrot/Rakudo here for once. Niecza's is saner but sort of defeats the purpose of %u. | ||
09:35
_ilbot joined,
_ilbot left
09:36
JimmyZ joined
09:37
spider-mario joined,
moritz joined,
moritz left
|
|||
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? | |||
FROGGS_ | no idea | 09:40 | |
09:40
_ilbot joined,
_ilbot left
|
|||
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. | ||
JimmyZ: yes, sprintf and %u. | 09:41 | ||
JimmyZ | well, I see %lld and %ld in APR, which one will be used depends on platform/compiler | 09:42 | |
%lld can't be used in MSVC | |||
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 | ||
09:56
_ilbot joined,
_ilbot left
10:01
_ilbot joined,
_ilbot left
10:07
kaare_ left
10:12
GlitchMr left
10:13
GlitchMr joined
10:15
_ilbot joined
10:16
_ilbot left,
rindolf joined
10:17
moritz joined,
moritz left
10:20
skids left
10:22
dukeleto left
10:23
flaviusb joined
10:31
xlat left
10:32
xlat-home joined
10:35
berekuk joined
|
|||
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 | |
10:39
Rotwang joined
10:40
_ilbot joined,
_ilbot left,
berekuk left
10:42
berekuk joined
10:44
Chillance joined,
berekuk left
10:45
learnmeperl joined
10:46
learnmeperl left
10:48
_ilbot joined
10:49
_ilbot left
10:50
moritz joined,
moritz left
10:54
_ilbot joined,
_ilbot left
10:56
_ilbot joined,
_ilbot left
10:57
berekuk joined
|
|||
masak | hm, is this worth replying to? twitter.com/marcusramberg/status/3...8932573184 | 10:58 | |
colomon | no | ||
masak | I believe the three settings "harmed", "helped", and "not affected" are all true in some sensible mixture. | ||
but tweets are not long enough. | 10:59 | ||
JimmyZ | nope | ||
masak | ok, will proceed to not reply, then. | ||
11:00
atroxaper joined
|
|||
colomon | '"harmed", "helped", and "not affected" are all true in some sensible mixture.': exactly | 11:00 | |
11:00
ggoebel2 joined
|
|||
JimmyZ | time will explain it :P | 11:01 | |
11:01
ggoebel left
|
|||
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. | |||
masak | there's always been a complex give-and-take between p5 and p6. the two communities are not independent and isolated. | 11:02 | |
11:02
GlitchMr left
|
|||
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. | |||
colomon | it seems to me very fair to say the early years of the p6 project were badly borked | ||
but that doesn't really tell you anything about what p6 is today. | |||
11:04
fgomez left,
fgomez joined
|
|||
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 6 | ||
sorry, approach perl 7 | |||
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? :P | ||
masak | jnthn: no, that's the "if we're unlucky" scenario :) | 11:06 | |
11:06
moritz joined
|
|||
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." www.perl6.org/archive/doc/design/apo/A01.html | 11:06 | |
11:06
berekuk left
|
|||
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:09
GlitchMr joined,
tomyan joined
|
|||
masak | and not affected it at all. | 11:09 | |
11:09
_ilbot joined
11:10
_ilbot left
|
|||
moritz is back-ish from behind a network line with massive package loss | 11:10 | ||
sadly the clogs aren't back :/ | |||
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. | |||
jnthn read that as "bicaramel" | |||
masak | n-thly, it's not a zero-sum game. | ||
lots of people are involved in Perl 6 who would not have been similarly involved in Perl 5. | 11:12 | ||
I'm one. | |||
moritz too | |||
jnthn | Same. | ||
moritz | I never went beyond doc patches and pure p5 module patches in p5 core | ||
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. | ||
moritz | and I don't think that would have changed | 11: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", sorry | 11:15 | |
11:15
pdurbin joined
|
|||
masak | even that is risky to put in a press release :P | 11: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 ? :P | 11: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 browser | 11: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 | |
11:20
raiph left
|
|||
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?" | ||
masak | also, a smaller and more conservative change would have resulted in a Python 3 kind of situation. | ||
11:21
xlat-home left
|
|||
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 Perl | ||
s/that/than/ | 11:23 | ||
11:28
xlat joined
11:30
crab2313 joined
11:31
daniel-s__ is now known as daniel-s
|
|||
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. | |||
timotimo | but the p6 part isn't even that big ;) | ||
masak | right -- it's hard to miss :) | ||
er, it's easy to miss. | 11:33 | ||
masak switches brain back on | |||
train & | |||
pdurbin | the thing I always think of is that Ruby was a reaction to Perl 4. of course it's better than Perl 4 | 11:34 | |
I guess I'm just reacting to some of the replies to that tweet | |||
11:36
_ilbot joined,
_ilbot left
|
|||
moritz | I have a new search backend for the IR clogs that you can all test at tina.perlgeek.de/perl6/search | 11:38 | |
feedback welcome :-) | |||
jnthn | moritz: I seem to have trouble connecting to it | 11:39 | |
ah, now it worked | |||
11:39
jeckyhl joined
|
|||
moritz | jnthn: yes, lots of packet loss at the moment :( | 11:39 | |
which is also why the logging doesn't work | |||
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 irclog.perlgeek.de/ilbot/2013-06-22 ... great news! | ||
jnthn | :P | ||
11:41
moritz_ joined
|
|||
moritz | jnthn: I've put up a notice | 11:42 | |
11:42
moritz_ left
|
|||
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 tina | 11: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? | |||
moritz++ | 11:46 | ||
jeckyhl | @jnthn i was runing nmake test indeed | ||
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 | tina.perlgeek.de/perl6/search works now? | ||
jnthn | jeckyhl: I didn't get to trying to fix it yet. | ||
jeckyhl: The good news is that the perl6 you get out will, standalone, work. | |||
Or should, at least... | 11:48 | ||
jeckyhl | @jntnn great ! | ||
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 applet | ||
11:51
raiph joined
|
|||
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) design | ||
(that was for timotimo) | |||
jnthn | jeckyhl: We're moving pretty fast on it, though. ;) | ||
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? | |||
jeckyhl | @jnthn It's worth waiting ! I will test again soon. | ||
moritz | timotimo: no idea, sorry | 11:57 | |
11:59
sriliam joined
|
|||
sriliam | hi | 11:59 | |
moritz | hello sriliam | ||
sriliam | New to perl6 and a kind of dubitative : does this project is sustained by larry wall or anyone else from other perl | 12:00 | |
? | |||
jnthn | sisar: Larry is Perl 6 language designer. | 12:04 | |
oops | |||
sriliam: ^^ | |||
sriliam | Thanks jnthn | ||
OK, so what about compatibility ? | |||
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 Perl6 | 12:09 | |
jeckyhl | jnthn: Rakudo-JVM buid sucessfully (with nmake v11 / Java JRE1.7 64 bits) | ||
hoelzro | and I'm much more keen on Python than JS =) | ||
12:09
moritz_ joined,
moritz_ left
|
|||
sriliam | "Not backwards compatible" ??? What about XS code with perl5 ? | 12:09 | |
^^ In perl6, of course : what about xs code in perl6 ? | 12:10 | ||
12:11
_ilbot joined,
_ilbot left
|
|||
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:13
_ilbot joined
12:14
_ilbot left,
birdwindupbird joined
|
|||
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 it | |||
12:14
moritz_ joined
12:15
moritz_ left
|
|||
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 XS | 12:15 | |
12:16
_ilbot joined,
SunilJoshi joined
|
|||
hoelzro | grr | 12:16 | |
timotimo: it's the only highlighter used for gists? | |||
12:16
_ilbot left
|
|||
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 perl6 | |||
hoelzro: you get as-you-type highlighting on gists if you turn on the "ACE editor" i suppose | 12:17 | ||
12:17
jeckyhl left
|
|||
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. | ||
timotimo | it's apparently thi: #lives_ok { eager $req.params<hello> }, 'Request data parses without dying'; | ||
#is ~$resp.content, $data, 'POST data string roundtrips correctly'; | 12:18 | ||
... wat. | |||
#is $req.params<a>, '1;b=2', 'application/x-www-form-urlencoded POST data should only split on &'; | |||
it's apparently this: ace.ajax.org/#nav=about (for real this time) | |||
12:18
_ilbot joined
|
|||
sriliam | ok timotimo : read you carefully : MoarVM the second answer is more interresting. Thanks | 12:18 | |
12:18
_ilbot left
|
|||
timotimo | oh, i forgot XS was used for legitimate purposes, too. in that case, you can use NativeCall on perl6 | 12:19 | |
i thought XS was only for doing crazy/dirty stuff with the internal state of perl5 | |||
12:19
moritz_ joined,
moritz_ left
|
|||
timotimo | ace.ajax.org/tool/mode_creator.html - this seems like a pretty darn cool tool | 12:20 | |
sriliam | No timotimo : the most XS deal is efficiency !!! NativeCall talks to me. | ||
:) | |||
timotimo has never used perl5, to be honest | |||
sriliam | lol | 12:21 | |
And even perl4 ... XS are very old. | |||
timotimo | i should be more precise: perl6 is the only perl i've ever tried | ||
12:22
ztt_ joined
|
|||
hoelzro | I'm hoping that having "regular" syntax highlighting on GH will inspire someone else to port my efforts to CodeMirror | 12:23 | |
sriliam | timotimo : Ok, you lost nothing with other versions will be a bad joke. Really. | ||
hoelzro | =) | ||
12:24
moritz_ joined
12:25
moritz_ left
|
|||
timotimo | i was wrong, github uses ACE everywhere, not codemirror | 12:25 | |
sriliam | Ok, another question for you hackers ... Does recursive programming works with perl6. It does with perl5 but very pool experiments results. | ||
timotimo | you can recurse, but the compiler will not (yet?) do things like tail-call optimization, if you mean that | 12: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 | |
12:29
sriliam left
|
|||
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 =) | ||
timotimo | from the example i'm looking at, it seems pretty limited, though; as in flat | 12:35 | |
oh, no, i was wrong | |||
dalek | p: f3cab58 | jnthn++ | src/vm/ (3 files): Add nqp::getpid for both JVM and Parrot. |
||
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 ansicon | ||
12:40
moritz_ joined
|
|||
xlat | ok, I install ansicon, and I see colors with Tracer which works | 12:41 | |
12:41
moritz_ left
|
|||
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 guess | |||
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 exception | ||
jnthn | xlat: That may not be Windows specific :( | ||
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... :/ | ||
xlat | jnthn: the error msg: pastebin.com/DRQitCje | 12:45 | |
12:45
cognominal joined
|
|||
jnthn | ugh | 12:45 | |
xlat: Filed it in issue tracker | 12:47 | ||
dalek | p: 7fa12e2 | jnthn++ | src/vm/parrot/QAST/Operations.nqp: Fix nqp::getpid on Parrot. |
12:48 | |
kudo/nom: c050747 | jnthn++ | src/core/Range.pm: Port Range reify fast-path. |
12:51 | ||
kudo/nom: 7f0af9b | jnthn++ | / (2 files): Use new nqp::getpid() op for $*PID. Means $*PID is now available on JVM backend also. |
|||
12:53
pdurbin left
12:56
raiph left
|
|||
timotimo | it doesn't seem like ACE allows capturing in the tokens, so heredocs will practically be impossible | 13:00 | |
xlat | jnthn: debugger's coloration is impressive! | 13:02 | |
13:05
_ilbot joined,
_ilbot left
13:08
flaviusb left,
raiph joined
|
|||
xlat | jnthn: tryed perl6-debug but still got the same error, my script: gist.github.com/xlat/5be8c961d21b6350a2eb | 13:11 | |
13:13
tomyan_ joined
13:15
kaare_ joined
|
|||
jnthn | xlat: Wait, the debugger tells you the same error? Does it tell you which line? | 13:15 | |
13:15
tomyan left
|
|||
jnthn | xlat: You did remove the "use Grammar::Debugger" from your script before running it under perl6-debug? | 13:16 | |
13:16
dayangkun joined
|
|||
jnthn | If not then you're debugging Grammar::Debugger... ;) | 13:16 | |
13:16
SunilJoshi left
13:22
xlat left
|
|||
dalek | p: cf6cfb3 | jnthn++ | src/vm/jvm/runtime/org/perl6/nqp/runtime/Ops.java: Implement accepts_type handling. This is the primitive that makes things like subset types work. |
13:23 | |
13:26
JimmyZ left
13:29
ztt_ left
13:31
atroxaper left,
JimmyZ joined
13:35
woosley1 joined
13:36
xlat joined
|
|||
xlat | jnthn: u were right, I was debugging Grammar::Debugger ^^ | 13:43 | |
jnthn | .oO( yo dawg... ) |
13:44 | |
masak | yo debawg. | 13:51 | |
13:54
woosley1 left
13:55
konundra joined
|
|||
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… | ||
timotimo | r: slurp("test3.pl") | ||
camelia | rakudo 7f0af9: ( no output ) | ||
timotimo | r: slurp("test3.pl").say | ||
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 joined
|
|||
timotimo | r: dir("/etc").say | 13:57 | |
13:57
_ilbot left
|
|||
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. | ||
r: rename("foo", "bar") | |||
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» | ||
timotimo | righto. | 13:58 | |
13:58
ajr joined
|
|||
timotimo | so only the things that are supposed to write or modify are blocked | 13:58 | |
13:58
ajr is now known as Guest29689,
Guest29689 is now known as ajr_
|
|||
timotimo | r: qx{echo hello}.say | 13: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_ joined
|
|||
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 ) | ||
timotimo | r: slurp("harmless_testfile.txt").say | ||
camelia | rakudo 7f0af9: OUTPUT«exploit» | ||
timotimo | :( | ||
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 swing | 14:04 | ||
14:05
moritz_ joined,
moritz_ left
14:08
_ilbot joined
14:09
_ilbot left
14:13
benabik joined,
atroxaper joined
|
|||
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 | ||
14:17
logie joined
14:18
moritz_ joined,
moritz_ left
|
|||
timotimo | r: dir("t") | 14:21 | |
camelia | rakudo 7f0af9: ( no output ) | ||
timotimo | r: dir("t").say | ||
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… | ||
timotimo | r: dir("t").grep(*.Str eq "t") | 14:22 | |
camelia | rakudo 7f0af9: ( no output ) | ||
timotimo | r: dir("t").grep($_ eq "t") | ||
camelia | rakudo 7f0af9: OUTPUT«use of uninitialized value of type Any in string context in block at /tmp/nhuxRjNb_L:1» | ||
FROGGS_ | masak: gist.github.com/FROGGS/5845176 | ||
14:22
colomon left
|
|||
timotimo | the dirwalk in ufo is recursing into itself endlessly, because apparently dir("foo", :test(*)) is returning foo now, too | 14: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(*)).say | ||
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… | ||
timotimo | even worse, .. is contained in there! | ||
jnthn | Everything matches whatever, I guess | 14:24 | |
timotimo | yeah. it must have changed some time in the past, though | 14:25 | |
14:26
cognominal left
|
|||
timotimo | r: dir("t", :test(*))[0].cleanup.say | 14:27 | |
camelia | rakudo 7f0af9: OUTPUT«IO::Path<t/..>» | ||
14:28
cognominal joined,
moritz_ joined
14:30
moritz_ left
|
|||
masak | FROGGS_: looking. | 14:30 | |
FROGGS_ | (20 lines more in total) | ||
14:32
_ilbot joined,
_ilbot left
14:33
moritz_ joined,
moritz_ left
|
|||
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? | |||
FROGGS_ | masak: that should work, yes | ||
masak | I don't see immediately why $*PADDING is needed, rather than just something like $<size><padding> | 14:37 | |
er, $<size><padding>.ast | |||
timotimo | masak: gist.github.com/timo/a7f69bb57820a9e5ce88 <- opinions? | 14:38 | |
FROGGS_ | masak: well, $*PADDING defines the default padding (for example if there is no size) | ||
masak: I updated the gist btw | 14:39 | ||
timotimo: I would use File::Spec.updir instead of '/..', because it can be something else on other systems | 14:40 | ||
masak | timotimo: looks good. | ||
14:40
Rotwang left
|
|||
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. | |||
FROGGS_ | true | 14:43 | |
cognominal | hi, is there a way to huffmanize this action : make $/{$/.keys[0]}.ast | 14:44 | |
14:45
xlat-home joined
|
|||
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 keys | |||
cognominal | if the rule is something like : A | B | C | D | 14:46 | |
...it does make sense | |||
oops, I forgot the <> | |||
replay: if the rule is something like : <A> | <B> | <C> | C<D> | 14:47 | ||
arf | |||
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. | ||
cognominal | <A> | <B> | <C> | <D> | ||
timotimo | well, bbl. | 14:48 | |
14:48
xlat left
|
|||
JimmyZ | cognominal: gist.github.com/FROGGS/5845176#fil...tf-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... | ||
cognominal | also because I need to modify the action each time I had a rule to the alternation. | ||
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 cryptic | ||
JimmyZ | or something | 14: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 | ||
14:57
crab2313 left
14:58
crab2313 joined
|
|||
cognominal | make $|/.ast # probably, that's what I would like to write | 14:58 | |
15:00
crab2313 left
|
|||
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. | |||
* need to write | |||
15:00
raiph left
15:06
_ilbot joined
15:07
_ilbot left
15:08
raiph joined
15:10
cognominal left
15:14
panchiniak_ joined
15:15
FROGGS[mobile] joined
15:22
tomyan_ left
|
|||
masak | timotimo: I leave it to you to make the patch. I don't feel involved enough in the issue at hand. | 15:22 | |
15:26
konundra_ left,
konundra left
|
|||
timotimo | OK | 15:29 | |
15:32
_ilbot joined,
_ilbot left
15:34
dmol joined
15:39
tomyan joined
15:42
tomyan left
15:49
cognominal joined
15:52
crab2313 joined,
skyheights joined
15:53
konundra joined,
_ilbot joined,
konundra_ joined,
_ilbot left
15:56
JimmyZ left
15:58
ajr joined,
ajr_ left,
ajr is now known as Guest42649,
Guest42649 is now known as ajr_
|
|||
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 | |
16:00
_ilbot joined
16:01
_ilbot left
16:06
_ilbot joined
16:07
_ilbot left
16:10
dmol left,
dmol joined
16:11
tomyan joined
16:21
_ilbot joined,
_ilbot left,
moritz_ joined,
moritz_ left
16:22
colomon joined
16:26
moritz_ joined,
moritz_ left
16:28
domidumont joined,
yoleaux left
|
|||
[Coke] | ok, the last pugs change I made didn't break everything on the original testing box, that's good. | 16:29 | |
16:30
domidumont left
16:31
moritz_ joined,
moritz_ left
16:36
moritz_ joined,
moritz_ left
16:37
_ilbot joined,
_ilbot left
16:41
moritz_ joined
16:42
moritz_ left
|
|||
pmichaud | cognominal: ( <A> | <B> | <C> | <D> ) there are several ways around it | 16:48 | |
one is to use protoregexes | |||
another is to use aliases | |||
for example | |||
<X=A> | <X=B> | <X=C> | <X=D> and then make $<X>.ast | 16:49 | ||
cognominal | that's nice, I like it. | ||
pmichaud: what's about protoregex(es)? And what is the plural of regex btw? | 16:50 | ||
16:51
_ilbot joined
16:52
_ilbot left
|
|||
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 case | 16:53 | |
pmichaud++ | |||
or <X = <A> | <B> | <C> | <D> > I suppose | 16:55 | ||
pmichaud | I don't think that works | 16:56 | |
cognominal | oh, that should be $<X> = [ <A> | <B> | <C> | <D> ] | 16:57 | |
17:00
rindolf left
|
|||
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:01
xilo joined
|
|||
pmichaud | s/matches/contains/ | 17:01 | |
cognominal | indeed | 17:02 | |
17:06
atroxaper left
|
|||
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? | ||
cognominal | [18:56] <pmichaud> I don't think that works | 17:07 | |
pmichaud | I know that <X=A> | <X=B> | <X=C> | <X=D> will work, with $<X>.ast containing the .ast of whichever subrule matched | ||
<X = <A> | <B> | <C> | <D> > isn't valid syntax afaik | |||
17:08
konundra left,
konundra_ left
17:09
yoleaux joined,
ChanServ sets mode: +v yoleaux
|
|||
pmichaud | I'm afk again | 17:09 | |
cognominal | that's gives: Quote words construct too complex to use in a regex | 17:10 | |
17:10
moritz_ joined
|
|||
jnthn | Did you accidentally a space after a "<"? | 17:11 | |
17:12
moritz_ left
17:13
birdwindupbird left
17:15
moritz_ joined
|
|||
cognominal | jnthn, what do you want to say? | 17:16 | |
17:16
moritz_ left
17:18
fgomez left,
fgomez joined
|
|||
jnthn | cognominal: The erorr you reported. | 17:19 | |
17:20
gdey left,
_ilbot joined
|
|||
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 | |
17:20
_ilbot left
|
|||
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 | |
17:22
_ilbot joined
|
|||
diakopter | what do you people think about being 1/8 done with this century? | 17:22 | |
17:22
_ilbot left
17:23
ajr_ left
17:33
moritz_ joined,
moritz_ left
17:36
raiph left
17:37
_ilbot joined,
_ilbot left
|
|||
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 | ||
17:41
domidumont joined
|
|||
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 | |
17:44
moritz_ joined
17:45
moritz_ left
17:46
xilo left,
xilo joined
17:47
_ilbot joined,
_ilbot left
|
|||
cognominal | well, I shoud reformulate in "fixing our problems in our culture". colonization, extra-terrestrial or not does not fix these problems | 17:48 | |
17:50
benabik left
17:53
crab2313 left,
Guest1337 left
17:54
SamuraiJack left
17:55
moritz_ joined
|
|||
lue | .oO(Having another planet to overpopulate would give us more time. Alternatively, underwater colonies) |
17:55 | |
17:55
moritz_ left
|
|||
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 | |
18:00
panchiniak_ left
|
|||
FROGGS_ | masak: any objections left about sprintf::Grammar? | 18:01 | |
18:01
ugexe left
18:02
ugexe joined
|
|||
sorear | JimmyZ: hg.openjdk.java.net/ | 18:05 | |
18:05
moritz_ joined,
moritz_ left
|
|||
sorear | timotimo: jdk6.java.net/plugin2/liveconnect/#JAVA_TO_JS | 18: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/js | 18:10 | ||
that way you get all the nice browser features like right click, copy for free | |||
18:13
benabik joined
18:15
_ilbot joined,
_ilbot left
18:19
BenGoldberg joined
18:22
moritz_ joined,
moritz_ left
18:27
moritz_ joined,
moritz_ left
18:29
raiph joined
18:39
moritz_ joined,
moritz_ left
18:40
Rotwang joined
18:46
_ilbot joined,
_ilbot left
18:47
lizmat joined
|
|||
lizmat | good *, #perl6! | 18:49 | |
cognominal | r: grammar A { token TOP { <a> || <b> } ; token a { '[' ~ ']' <[ab]> }; token b { '[b-]' } }; A.parse: '[b-]' | ||
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»… | ||
cognominal | r: grammar A { token TOP { <a> || <b> } ; token a { '[' ~ ']' <[ab]> }; token b { '[b]' } }; A.parse: '[b]' | ||
camelia | rakudo 7f0af9: ( no output ) | ||
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]」» | ||
sorear | o/ cognominal, lizmat ! | 18:51 | |
lizmat | o/ sorear! | ||
cognominal | o/ everyone | 18:52 | |
with xlat-home, I wonder why the first parse fails and the second succeeds | |||
lizmat | o/ cognominal! | ||
cognominal | o/ lizmat, sorear | ||
colomon | \o | 18:54 | |
lizmat | so how are we on the percentage of spectests passing on the JVM? | ||
18:54
raiph left
|
|||
lizmat | colomon! | 18:54 | |
[Coke] | lizmat: github.com/coke/perl6-roast-data/b...pass_rates 66.62% as of yesterday. | 18:55 | |
today's run isn't done yet. | |||
lizmat | wow… 2/3 passes, wow! | 18:56 | |
[Coke] | (that's 2/3 of the parrot impl.) | ||
jnthn eagerly awaits today's run | 18: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 joined
|
|||
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»… | ||
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. :) | ||
xlat-home | just changing <[ab]> -> <[a]> make it works, but: | ||
r: grammar A { token TOP { <a> || <b> } ; token a { '[' <[ab]> ']' }; token b { '[b-]' } }; A.parse: '[b-]' | 19:00 | ||
camelia | rakudo 7f0af9: ( no output ) | ||
xlat-home | changing A ~B C syntax to a A C B make it works, why ? | ||
lizmat | colomon: if your wife did that, I would assume there is a good reason to get the shelves :-) | ||
cognominal | afk& # need some walk to think clearly | 19:02 | |
lizmat | .oO{ you can only live inbetween piles of books for so long} | ||
cognominal: walk clearly, think some! | 19:03 | ||
pmichaud | xlat-home: the ~ construct adds a "fail the match" component | 19:04 | |
colomon | lizmat: you can only live so many years without unboxing all your books from the last move... | ||
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 | |
19:05
ugexe left
|
|||
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 joined
|
|||
colomon | *afford to | 19: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. | ||
lizmat | glass doors? for bookshelves? | 19:07 | |
Juerd | Books are supposed to have dust covering the top. | ||
That's how you gauge how long they've been there. Without it, how would you know? | |||
lizmat | ok, yes, then I can see they can run into some paper… our IKEA bookshelves are all without doors (Billy) | ||
19:08
fgomez left
|
|||
diakopter | our IKEA bookshelves fell apart while moving | 19:08 | |
geekosaur | but glass doors keep the cats from using the books as convenient claw sharpeners | ||
19:08
fgomez joined
|
|||
lizmat | eh…. you should at least take the shelves out | 19:08 | |
diakopter | yes, it was an extremely poor moving van packing job | 19:09 | |
lizmat | our Perl library lives in Ikea shelves, and has moved many a time to a conference or workshop | ||
diakopter | like, miserably | ||
lizmat | :-( | ||
geekosaur: get educated cats :-) | |||
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 :p | ||
19:13
_ilbot joined,
_ilbot left
|
|||
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. | ||
dalek | p: 1792c64 | sorear++ | src/vm/parrot/QAST/Operations.nqp: tweak error message in nqp::getpid |
19:21 | |
jnthn | sorear++ # good catch | 19:22 | |
dalek | rl6-roast-data: 6755e3d | (Will "Coke" Coleda)++ | / (4 files): today (automated commit) |
19:31 | |
[Coke] | that brings us up over 70% ! | ||
sorear | ! | 19:32 | |
19:32
moritz_ joined,
moritz_ left
|
|||
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) | |||
FROGGS_ | masak: that stops LTM | ||
masak | <?{}> doesn't stop LTM!? | 19:35 | |
sorear | <?{}> does stop LTM | ||
FROGGS_ | no, the block form | ||
sorear | if you don't want to stop LTM, you need to use <!!{}> | ||
masak | sorear: oh phew | ||
FROGGS_ | hmmm | ||
masak | wait what | ||
where's the logic in all of that? | 19:36 | ||
19:36
domidumont left
|
|||
[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> || ' ' }... | ||
masak | FROGGS_: it keeps cropping up everywhere with insignificant variations. | ||
FROGGS_: yes. FROGGS_++ | |||
that's much better than a dynamical. | |||
sorear | the contents of a <!before > are invisible to LTM | ||
<?before > is special to LTM: the contents of the <?before > replaces the continuation, essentially, since we assume it's more specific than what follows | 19:38 | ||
foo <?before bar> \w+ is LTMed like 'foobar {}' | |||
foo <!!before bar> \w+ is LTMed like 'foo \w+' | 19:39 | ||
jnthn | Wow, 70%! | 19:40 | |
woolfy | 70%++ | ||
sorear | jnthn++ | 19:41 | |
jnthn: now beat niecza, I know you can do it | |||
jnthn | sorear: Feel free to chip it a few commits towards it, if you fancy a little bug-hunting ;) | ||
sorear: Are you working on the interop stuff? | 19:42 | ||
19:42
tomyan left
|
|||
lizmat | the 2 failing rakudo tests are in t/spec/S12-attributes/clone.t | 19:42 | |
lizmat is checking | |||
sorear | jnthn: yes, interop mostly atm | ||
jnthn | sorear++ | 19:43 | |
sorear | lizmat: yes, ssutch deliberately committed TODO tests to that file | ||
lizmat: probably should have been #?rakudo todo'd or so | |||
timotimo | yeah, think so, oo | ||
lizmat | Ah, but they aren't marked as todo | ||
will mark them as todo | |||
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 before | 19:44 | |
19:45
konundra joined
|
|||
dalek | ast: 894a692 | (Elizabeth Mattijsen)++ | S12-attributes/clone.t: Clone tests should be marked as todo for the time being |
19:45 | |
jnthn | Hm, seems like fixing throws_like would be another big win. | 19:46 | |
19:46
konundra_ joined
|
|||
dalek | ast: 0bdad76 | (Elizabeth Mattijsen)++ | .gitignore: Make sure we ignore any generated rakudo.parrot files |
19:47 | |
lizmat | seems one can now rm t/spec/*/*.rakudo | 19:48 | |
timotimo | indeed, rakudo.parrot and rakudo.jvm are the new files | 19:50 | |
[Coke] | colomon++ noticed that was borked earlier. | 19:51 | |
(throws_like) | |||
19:52
colomon left,
berekuk joined
|
|||
jnthn | Of course, the interesting question is, "why"... | 19:52 | |
19:52
colomon joined
|
|||
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_like | |||
sorear | and dukeleto wants me to do a real-time GC (for Parrot), which sounds fun | ||
jnthn | aha, S04-exception-handlers/catch.t fails with the same error. It's probably easier to track it down from there... | 19:54 | |
19:54
moritz_ joined
|
|||
diakopter | sorear: do you mean precisely real-time, or actually wait-free | 19:55 | |
19:55
ugexe left
|
|||
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 size | 19: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 limited | ||
19:58
moritz_ left
19:59
pjcj joined,
moritz_ joined
|
|||
jnthn | colomon: well, turns out CATCH itself is busted! | 19:59 | |
19:59
moritz_ left
|
|||
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 joined
|
|||
jnthn | Plenty else is busted :P | 20:00 | |
sorear | jnthn: rakudo catch, nqp catch, or both? | 20:01 | |
jnthn | sorear: Rakudo only | ||
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. | ||
sorear | jnthn: note that there's a bit of a semantic change(?) with nqp catch | ||
jnthn: you may have noticed that in the REPL all exceptions resume | 20: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 3 | |||
1 | |||
Can not call method 'gist' on a null object | |||
> | |||
20:04
moritz_ joined,
moritz_ left
20:05
kaare_ left
|
|||
jnthn | sorear: I saw it in Rakudo's REPL today | 20:05 | |
heh...anybody want to fix a typo in roast? :) | 20:06 | ||
S04-phasers/begin.rakudo.jvm....................... 8 0 0 1 9 | |||
1 skipped: cannot assing to non-container | |||
...well, that's a pain in the butt :P | 20:07 | ||
lizmat | jnthn: will fix | ||
sorear | jnthn: another thing you may be aware of | ||
Stefans-MacBook-Air:nqp-jvm sorear$ ./nqp -e 'sub bob() { nqp::null().foo }; { bob(); say("hi"); CATCH { nqp::resume($!) } }' | |||
hi | |||
the doc comment for ExceptionHandling.throwInternal says it's not resumable, but this is manifestly wrong. | |||
20:07
ugexe left
|
|||
jnthn | sorear: um, interesting :) | 20:08 | |
20:08
ugexe joined
|
|||
dalek | ast: 056fe4e | (Elizabeth Mattijsen)++ | S04-phasers/begin.t: Only the rakudo on the JVM can't do these tests spotted by jnthn++ |
20:10 | |
timotimo is measuring the time between jnthn complaining about a busted CATCH and jnthn pushing the commit to fix it | |||
dalek | kudo/nom: 38173e7 | jnthn++ | src/Perl6/Actions.nqp: Initial fix to CATCH. Now it at least *sometimes* works. |
20:11 | |
20:11
moritz_ joined
|
|||
jnthn | lizmat: uh, no, that needs to be fudged for Rakudo in general | 20:11 | |
lizmat: I just meant the typo in the word assign :P | |||
sorear | Stefans-MacBook-Air:nqp-jvm sorear$ ./nqp -e 'sub bob() { nqp::null().foo }; { bob(); CATCH { say("Ex: "~$!); nqp::resume($!) } }' | ||
20:11
moritz_ left
|
|||
sorear | Ex: Can not call method 'foo' on a null object | 20:11 | |
more fun ^ | |||
Ex: java.lang.RuntimeException: Stooge exception leaked | |||
Stefans-MacBook-Air:nqp-jvm sorear$ | |||
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). :) | ||
sorear | but why is it called "stooge"? | 20:13 | |
dalek | ast: 07b53b5 | (Elizabeth Mattijsen)++ | S04-phasers/begin.t: Per request of jnthn |
||
sorear | and why is there only one of them? :) | ||
cognominal | I have tried to explain our problem in this gist. And it made me run into another problem. gist.github.com/cognominal/5846277 | ||
20:13
ugexe left,
ugexe joined
|
|||
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 read | ||
anyway, I got the impression the test passes | |||
lizmat is doublechecking | |||
20:16
moritz_ joined,
moritz_ left
|
|||
sorear | jnthn: note that, afaict, perl6_skip_handlers_in_rethrow is unneeded on jvm because ExceptioonHandling.java already contains logic to never reenter a handler | 20:17 | |
jnthn | sorear: Correct. | ||
20:17
logie left
|
|||
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 | ||
20:19
dmol left
20:23
sriliam joined
|
|||
lizmat | jnthn: S04-phasers teet for our that test runs fine in rakudo, the todo/skip was unneccesary | 20:23 | |
*tst | 20:24 | ||
*test | |||
grrrrr | |||
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 yet | ||
lizmat | then all is fine | ||
jnthn | lizmat: for now it's more helpful they fail outright so we can see what's left to do | ||
lizmat | agree | 20: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 | ||
20:28
ssutch joined,
konundra left
|
|||
ssutch | hello perl6! | 20:28 | |
lizmat | ssutch! | ||
moritz | Files=713, Tests=19787, 2919 wallclock secs (12.13 usr 2.76 sys + 44.96 cusr 11.68 csys = 71.53 CPU) | ||
sorear | ssutch! | 20:29 | |
moritz!! | |||
20:29
konundra_ left
|
|||
ssutch | peeps! | 20:29 | |
sorear | I like how I can tell that it's a jvm test just by looking at the times | ||
dalek | kudo/nom: 39d29d8 | (Elizabeth Mattijsen)++ | src/core/Any.pm: Remove superfluous named parameter |
20:30 | |
moritz | gist.github.com/moritz/5846436 # complete summary | 20:31 | |
sorear: aborting many tests makes for a fast run, yes :-) | |||
SCNR | 20:32 | ||
labster | r: say IO::Spec.updir() # use this timotimo | ||
camelia | rakudo 7f0af9: OUTPUT«..» | ||
moritz -> sleep | 20:33 | ||
20:33
moritz left
|
|||
sorear | moritz: more looking at the difference between wall and usr | 20:33 | |
lizmat | fwiw, the 19787 puts it at 75%+ in my book | ||
jnthn | lizmat: That's attepted, not passed | ||
lizmat | ah, ok :-( | 20:34 | |
colomon | lizmat: no frowns, the rate of progress here is phenomenal. Just not quite that fast. ;) | 20:37 | |
20:39
sriliam left
|
|||
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 pmichaud | 20:40 | |
20:44
sftp joined
20:46
FROGGS[mobile] left
|
|||
dalek | ecs: 9b6b82a | (Elizabeth Mattijsen)++ | S32-setting-library/Containers.pod: Spec Hash.exists and Hash.delete as internal methods |
20:46 | |
20:48
ugexe left,
ugexe joined
|
|||
raiph | moritz | 20:48 | |
masak | raiph | ||
sorear | raiph: ENOMORITZ | ||
raiph | hi sorear: moritz's irclogs are down; anyone know an alternate irclog url? | 20:49 | |
lizmat | sleep& | ||
sorear | .oO( file:///Users/sorear/irclogs/freenode/#perl6.log ) |
20:50 | |
raiph | :) | ||
masak .oO( we know the logs are down, see the backl... oh wait ) | |||
sorear | colabti.org/irclogger/irclogger_log...2013-06-23 | ||
raiph | i recall there being another one. it was mentioned on channel. so i could just sear .. oh wait | 20:51 | |
thx | |||
20:51
ChanServ sets mode: +o sorear
|
|||
masak | losing one's logs is like losing one's glasses. | 20:51 | |
sorear | »ö« Welcome to Perl 6! | perl6.org/ | evalbot usage: 'perl6: say 3;' or rakudo:, niecza:, std:, or /msg camelia perl6: ... | irclog: colabti.org/irclogger/irclogger_log/perl6 | UTF-8 is our friend! | 20:52 | |
sorear sets mode: -o sorear
|
|||
sorear | will change it back once deutsche telekom gets their act together | 20:52 | |
20:54
PacoAir left
20:55
Rotwang left
|
|||
jnthn | yays, jsut got S04-exception-handlers/catch.t to pass in full | 20:59 | |
labster | jnthn++ | 21:00 | |
sorear | jnthn: \o/ | 21:02 | |
jnthn | And seems throws_lajk now works too :) | ||
er, like :) | 21:03 | ||
21:03
moritz joined,
moritz left
|
|||
timotimo | i re-made most of the camelia logo | 21:04 | |
there was some *weird* stuff in the svg | |||
masak .oO( like a big happy butterfly ) | |||
sorear | .oO( jimmy hoffa's body? ) |
||
FROGGS_ | *cough* usev5.wordpress.com/ | 21:07 | |
21:08
sftp left,
moritz joined
|
|||
sorear | FROGGS_: is that an actual book? | 21:08 | |
21:08
moritz left
|
|||
lue | .oO( Hand-crafted lines you've now mercilessly tossed aside in favor of more precise ones? ) |
21:08 | |
FROGGS_ | sorear: no | ||
jnthn | meh, I busted something else while fixing the exception stuff... | 21:09 | |
Take 2. | |||
21:10
sftp joined
|
|||
sorear | "You know the Inline modules? Well, it is not quiet like that" | 21:10 | |
.oO( I can has commitbit? ) |
|||
TimToady | FROGGS_: ss/test suite if from/test suite is from/ | ||
21:10
_ilbot joined,
_ilbot left,
xlat-home left
|
|||
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 too | 21:11 | |
TimToady: thanks, will fix | |||
masak | FROGGS_: s/quiet nice/quite nice/ | ||
FROGGS_ | sorear: to the repo? sure | ||
damn it *g* | |||
sorear | FROGGS_: to the blog :p | ||
s/quiet/quite/ | |||
FROGGS_ | sorear: does that work? | 21:12 | |
masak | s/Quiet Awesome/Quite Awesome/ | ||
FROGGS_ | meh | ||
21:12
_ilbot joined
|
|||
sorear | quiet is the opposite of noisy. | 21:12 | |
you want quite. | |||
masak | FROGGS_++ # quiet a nice post :) | ||
21:12
_ilbot left
|
|||
FROGGS_ | hehe | 21:13 | |
masak | happy to report I correctly guessed which were the 2.5 languages before seeing it at the bottom :P | ||
FROGGS_ | masak++ # yepp, :o) | 21:14 | |
masak | FROGGS_++ # v5 | 21:15 | |
jnthn | "Not Quiet Perl" - is that a comment on its stack traces? :D | 21:16 | |
FROGGS_++ | |||
FROGGS_ | hehe | ||
no, fixed that too | |||
looks like a problem with quiet/quite | |||
timotimo | my painstakingly fixed version of camelia.svg is 23kb big instead of the previous 160kb | 21:17 | |
KB actually | |||
but i don't know if i can create a .odg file from it properly | |||
flussence | you can only find out if you try | 21:18 | |
21:19
vm joined
|
|||
colomon | FROGGS_ blog? | 21:19 | |
21:19
_ilbot joined,
_ilbot left
|
|||
FROGGS_ | colomon: yesh | 21:20 | |
colomon | link? | ||
pretty please? | |||
FROGGS_ | usev5.wordpress.com/ | ||
colomon | I like the name. ;) | ||
FROGGS_++ | |||
FROGGS_ | well, froggs.* and allthewaydown.* were already taken :/ | 21:21 | |
21:23
fridim_ left
21:26
ugexe left
21:27
ugexe joined
|
|||
timotimo | i made an odg version and will now try to make a .jpg and .ico files for 32x32 and 16x16 | 21:27 | |
21:27
_ilbot joined
21:28
_ilbot left
|
|||
dalek | ecs: 0cca600 | (Brent Laabs)++ | S32-setting-library/Numeric.pod: round method produces a Real, not always Int |
21:30 | |
timotimo | h, those ico files were hand-crafted. very good. | 21:31 | |
holy hell, that .jpg file deserves to get nuked | |||
(no offense, larry) | |||
sorear | um | 21:32 | |
that's line art | |||
this is 2013 | |||
isn't png supported yet? | |||
21:33
_ilbot joined,
_ilbot left
|
|||
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 .png | ||
21:37
moritz joined,
moritz left,
fridim_ joined
|
|||
labster | timotimo++: camelia is no longer a decade behind | 21:38 | |
dalek | : 5af0e6c | (Timo Paulssen)++ | misc/camelia. (5 files): rework camelia.svg, create .png, .odg and delete .jpg, .pdf |
||
timotimo | :) | 21:39 | |
21:41
_ilbot joined,
_ilbot left
21:42
moritz joined,
moritz left
|
|||
labster | the new camelia is so clean, she shows off the dead pixels in my monitor beautifully | 21:42 | |
21:43
vm left
|
|||
labster | chromatic-- for trolling | 21:44 | |
sorear | jnthn: I'm actually working on "generate better code" | ||
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 splitting | ||
I noticed you have a little hack in the post-derialization codegen :) | |||
jnthn | sorear: Yeah... But we know a lot about the structure of that :) | ||
sorear: It's costing us test files like rx.t | 21:46 | ||
sorear | How many spectests are hitting code too large? | ||
I mean we compile the setting fine, how many spectests are larger than the setting? | |||
jnthn | 8ish | ||
sorear | the setting takes three minutes to compile on parrot, how long does rx.t take to compile on parrot? | ||
jnthn | The problem is amount of code in a particular QAST::Block | ||
The setting doesn't have any crazily long methods | |||
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 calls | ||
jnthn | Case in point: github.com/perl6/roast/blob/master...-mass/rx.t | 21:48 | |
sorear | and the "dump everything on the stack, then immediately reload" behavior | ||
jnthn | A 3000 line single block | ||
Yes, at the moment it's doing the "correct, but suboptimal" thing there. | |||
TimToady | why is camelia wearing black lipstick now? | ||
sorear | I think we can eliminate that in most cases by making StackState cleverer, but I haven't worked out all the details yet | ||
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. | |||
labster | TimToady: she's 13, it must be a Goth phase | ||
sorear | the png looks OWWW | 21:50 | |
raw.github.com/perl6/mu/5af0e6ce44...amelia.png # look at those cracked lips | |||
FROGGS_ | I believe this is a bit out of date: www.perl6.org/archive/people.html | ||
sorear | and I think the screen printing on her wings is getting ready to peel off | ||
21:52
_ilbot joined
|
|||
TimToady | also, the .pdf is the original, so not sure you should lose it | 21:52 | |
21:52
_ilbot left
|
|||
dalek | p: 49eb104 | jnthn++ | src/vm/jvm/ (2 files): Provide a way to force exit after unwind. This is needed to support the nqp::p6return op. On the JVM, we always promote exception handlers into their own blocks, unlike on Parrot. While this rarely leaks out, it did in this case; this is used to contain the leak. |
21:53 | |
colomon | FROGGS_++ | ||
dalek | kudo/nom: b9869c2 | jnthn++ | src/vm/jvm/Perl6/Ops.nqp: Make p6return force exit of outer handler block. This means a CATCH with a matching when or a default will now actually act handled rather than always rethrowing. |
21:54 | |
jnthn | Between those two we attempt (no idea about pass) ~ 600 more tests, or thereabouts... | ||
oh, some of them may be other things I did earlier... | 21:55 | ||
Anyway, improvement. | |||
sorear | jnthn: can you explain what's going on in that nqp commit to me? | ||
jnthn | sorear: Exception handlers on Parrot are generated "in line", in a single .sub | ||
sorear: That means being able to jump into a sub some way down the stack, which isn't really achievalbe on the JVM | |||
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. | |||
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 project | 21:58 | |
sorear | niecza gets along fine without an extra bit in the callframe | ||
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... | |||
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* | ||
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. | |||
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 goto | |||
which combines really nicely with block inling | 22:09 | ||
22:11
moritz joined,
skids joined,
moritz left
22:12
daniel-s left
22:13
daniel-s joined
|
|||
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 | |
22:17
moritz joined
22:21
_ilbot joined,
_ilbot left,
moritz left
22:31
_ilbot joined,
_ilbot left
22:34
moritz joined
22:35
moritz left
22:38
_ilbot joined
22:39
_ilbot left
|
|||
masak | 'night, #perl6 | 22:41 | |
22:49
_ilbot joined,
_ilbot left
22:58
echoprinter joined
|
|||
FROGGS_ | .tell masak good morning! I updated the gist gist.github.com/FROGGS/5845176 | 23:15 | |
yoleaux | FROGGS_: I'll pass your message to masak. | ||
sorear | good morning FROGGS_ | 23:16 | |
FROGGS_ | morning sorear | 23:17 | |
jnthn | wait, morning? | 23:18 | |
:) | |||
FROGGS_ | almost O.o | 23:19 | |
23:20
moritz joined,
moritz left
23:23
gdey joined
|
|||
ssutch | is it possible to run methods to a class? | 23:24 | |
diakopter | run? | ||
ssutch | like Message.dostuff = sub ($obj, $stuff) { } | ||
diakopter | that's the MONKEY_PATCHING thing sorear mentioned to you the other day | 23:25 | |
23:25
moritz joined
23:26
moritz left
|
|||
sorear | (method ($stuff) { ... })($obj, $thing) | 23:27 | |
flussence | you can assign anonymous subs to variables, if that's what you mean. | ||
ssutch | i am trying to generate classes at runtime instead of compile classes | 23:28 | |
jnthn | Use the MOP | ||
flussence | I was going to say that... does it have any decent docs though? | 23:29 | |
jnthn | Maybe some in S12 | ||
ssutch | (not afraid to read code) | ||
jnthn | Also, jnthn.net/papers/2012-gpw-meta-programming.pdf has examples of doing exactly that | ||
ssutch | oh sweet | 23: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:31
logie joined
|
|||
ssutch | jnthn is this talk online? | 23:31 | |
jnthn | ssutch: I'm not aware of any videos of it, sadly. | ||
ssutch | shucks | 23:33 | |
this helps a lot, thanks! | |||
23:34
_ilbot joined
23:35
_ilbot left
23:36
moritz joined,
moritz left
|
|||
FROGGS_ | gnight all | 23:37 | |
23:41
FROGGS_ left,
moritz joined,
moritz left
23:45
FOAD left
23:46
FOAD joined
23:48
spider-mario left
|
|||
timotimo | TimToady: i will now restore the lipstick | 23:52 | |
23:54
moritz joined,
moritz left
|