»ö« Welcome to Perl 6! | perl6.org/ | evalbot usage: 'p6: say 3;' or rakudo:, std:, or /msg camelia p6: ... | irclog: irc.perl6.org | UTF-8 is our friend! Set by masak on 12 May 2015. |
|||
00:03
skids left,
espadrine left
00:11
carlin left
00:14
gfldex left
00:16
avalenn_ joined
00:17
avalenn left
00:18
colomon left
00:19
colomon joined
00:29
laouji joined
00:37
atweiden left
00:39
laouji left
00:40
vendethiel joined
00:44
Akagi201 joined
00:50
laouji joined
|
|||
zostay | m: sub infix:</>(IO::Path $p, Str $s) { (~$p ~ '/' ~ $s).IO }; constant HOME = %*ENV<HOME>.IO; say HOME/"bin"; | 00:56 | |
camelia | rakudo-moar d5eabd: OUTPUT«5===SORRY!5===Calling prefix:<~>(IO::Path) will never work with proto signature (Any)at /tmp/n5xe8DA6BI:1------> 3sub infix:</>(IO::Path $p, Str $s) { (7⏏5~$p ~ '/' ~ $s).IO }; constant HOME = %*Calling infix:</>(IO::Path, Str) will n…» | ||
01:04
vendethiel left
01:10
vendethiel joined
|
|||
timotimo | huh, that's a weird error | 01:10 | |
can you try $p.absolute? also, what's the second error? | |||
instead of ~$p i mean | 01:11 | ||
[Coke] saw this on FB: perlhist.com/perl6/damian-conway/ | 01:24 | ||
/me saw this on FB: perlhist.com/perl6/damian-conway/ | 01:26 | ||
whoops. | |||
01:28
colomon left
01:32
kaare_ joined
01:33
bjz left,
colomon joined
01:36
aborazmeh joined,
aborazmeh left,
aborazmeh joined
01:40
bjz joined,
aborazmeh left
01:42
raiph joined
01:46
aborazmeh joined,
aborazmeh left,
aborazmeh joined
01:47
ilbot3 joined
01:49
dayangkun joined
01:52
bjz left
01:53
bjz joined
01:58
ssqq joined
|
|||
ssqq | How to deep copy a Array or Array of Array? | 01:59 | |
p6: sub change($x is copy) { $x[0] = 10 }; my $a = [1,2,3]; change($a); $a.say.perl; | 02:00 | ||
camelia | rakudo-moar d5eabd: OUTPUT«10 2 3» | ||
02:13
ssqq left
02:15
chenryn joined,
bjz left
02:24
vendethiel left
02:29
raiph left
02:31
raiph joined
02:33
raiph left
02:34
rmgk_ joined,
rmgk left,
rmgk_ is now known as rmgk
02:36
raiph joined
02:38
koo6 left
02:39
raiph left
02:40
raiph joined
02:49
noganex joined
02:51
noganex_ left
02:53
raiph left
02:57
Akagi201_ joined
02:59
yqt left,
Akagi201 left
03:06
Akagi201 joined
03:07
Akagi201_ left
03:20
bjz joined
03:38
araujo_ left
03:42
laouji left
03:43
dayangkun left
03:46
dayangkun joined
03:55
chenryn left
04:03
Ben_Goldberg left
04:04
bjz left
04:18
zacts left
04:23
bjz joined
04:26
laouji joined
04:30
aborazmeh left,
chenryn joined,
aborazmeh joined,
aborazmeh left,
aborazmeh joined
04:35
chenryn left,
chenryn joined
04:37
bjz left
04:42
diana_olhovik_ joined
|
|||
moritz | m: sub id(\c) { c }; my $a = [1, [2, 3]]; my $copy = $a>>&id; $copy[1][0] = 42; say $a.perl | 04:45 | |
camelia | rakudo-moar d5eabd: OUTPUT«5===SORRY!5=== Error while compiling /tmp/Fn4VWzxpr1Malformed postfixat /tmp/Fn4VWzxpr1:1------> 3 }; my $a = [1, [2, 3]]; my $copy = $a>>7⏏5&id; $copy[1][0] = 42; say $a.perl expecting any of: postfix» | ||
04:51
laouji left,
ssqq joined
|
|||
moritz | m: sub id(\c) { c }; my $a = [1, [2, 3]]; my $copy = $a>>.&id; $copy[1][0] = 42; say $a.perl | 04:53 | |
camelia | rakudo-moar d5eabd: OUTPUT«[1, [2, 3]]» | ||
04:53
laouji joined
|
|||
tadzik | masak++ # blog post | 04:56 | |
05:01
chenryn left
05:11
diana_olhovik_ left
05:12
laouji left
05:15
laouji joined
05:22
laouji left,
chenryn joined,
ssqq left
05:23
laouji joined
05:46
tinyblak joined
05:49
[Sno] left
05:54
diana_olhovik_ joined
05:58
vendethiel joined
06:04
Foxcool left
06:08
virtualsue joined
06:24
kurahaupo1 joined
06:26
flaviusb joined
06:30
[Sno] joined
06:35
_mg_ joined
06:43
domidumont joined
06:46
abraxxa joined
06:47
domidumont left
06:48
domidumont joined
06:50
zakharyas joined
06:52
FROGGS joined
06:57
espadrine joined
|
|||
FROGGS | o/ | 07:05 | |
nwc10 | \o | 07:06 | |
07:06
fhelmberger joined
07:08
Ven joined
07:11
fhelmberger left
07:13
vendethiel left
07:19
RabidGravy joined
07:27
telex left,
virtualsue left
07:28
telex joined
07:41
Alina-malina left
07:42
Alina-malina joined
07:44
smls joined
|
|||
smls | o/ | 07:44 | |
yoleaux | 25 May 2015 20:59Z <lizmat> smls: re irclog.perlgeek.de/perl6/2015-05-25#i_10653489 assuming you mean instance attribute: has $!a; method a { $!a //= init code } | ||
smls | lizmat: thanks. | 07:45 | |
masak: nice blog post | |||
"I wonder if I could submit that as a rakudobug." (from masak's post, regarding Rakudo regex engine backtracking slowness) -- I tend to agree :) | 07:46 | ||
07:47
vendethiel joined
|
|||
smls | Playing around with the Amb example on rosettacode, I found it strange that it was fast with only 1 or 2 steps of backtracking, but adding just one more step of backtracking makes it suddenly go from ~1 second to minutes | 07:48 | |
That can't be right, can it? | |||
jnthn | Well, it's easy in most regex engines to construct non-linear backtracking cost increase. | 07:49 | |
jnthn got the .Net one to take 30 seconds to fail to match a 20KB string with a fairly small regex | 07:50 | ||
07:52
virtualsue joined
|
|||
RabidGravy | morning | 07:56 | |
FROGGS | morning RabidGravy | ||
RabidGravy | are we all fabulous? | 07:57 | |
FROGGS | well, I am :P | ||
RabidGravy | perfect | ||
FROGGS | spiffy | 07:58 | |
jnthn | I just managed to spray coffee across the kitchen. Talk about a bootstrapping problem... | 08:00 | |
FROGGS | ewww | ||
jnthn didn't know caffetieres had *that* failure mode... | 08:01 | ||
08:01
espadrine left
|
|||
nwc10 | coffee slicks, coffee explosions. What's next? | 08:02 | |
RabidGravy | yeah, sometimes the zeal for coffee can get the better of you | ||
08:02
mr-foobar joined
|
|||
jnthn | This was, thankfully, much less messy than the time I caused a coffee flood at the office... | 08:02 | |
Righty. Time to fix a nasty race condition... | 08:03 | ||
08:03
virtualsue left
|
|||
nwc10 | oh, drowning bugs in coffee? | 08:04 | |
jnthn | Worth a try... | 08:05 | |
08:07
ab5tract_ joined
08:10
vendethiel left
|
|||
RabidGravy | anyway, to form the question raised by gist.github.com/jonathanstowe/2eb6...edbd877ef5 in a different way, if I have two classes in different files A & B such that A does "use B" then should A be available in methods in B? | 08:10 | |
FROGGS | RabidGravy: if A loads B, then the A symbol won't be available under that name | 08:11 | |
08:12
darutoko joined
|
|||
FROGGS | but, if B is a role, and you call A.foo where foo is a method declared in B, then the invocant will be of type A | 08:12 | |
RabidGravy | but in the simple case is the type A available to B at all? | 08:14 | |
FROGGS | no | 08:15 | |
smls | Can I run a piece of clean-up code before the program exits, even when it is killed via CTRL+C ? | ||
FROGGS | you can't even stub A in B.pm, because that requires A to be declared later somewhere in B.pm or in files that B.pm loads... | ||
and you need to be able to compile B before A | 08:16 | ||
smls | END { } seems to catch Perl 6 exceptions, but not kill signals | ||
RabidGravy | right, bigger patch to Facter than I thought then | ||
jnthn | smls: signal(SIGINT).tap({ ... }); # iirc | 08:17 | |
smls | ah, right, I remember you doing that in some presentation now :) | ||
DrForr | Hrm. Would "class RuleID is repr('Cint32') { }" be possible to replace "typedef RuleID int32;" in C headers? | 08:20 | |
08:20
dakkar joined
|
|||
FROGGS | DrForr: almost | 08:21 | |
DrForr | I know there's a CStruct, but this is just a single element, not a full struct/union. | 08:22 | |
08:22
ab5tract_ left
|
|||
FROGGS | m: use NativeCall; my native RuleID is Int is nativesize(32) is signed is repr("P6int") { }; | 08:22 | |
camelia | rakudo-moar d5eabd: OUTPUT«5===SORRY!5=== Error while compiling /tmp/GqJf1fXxI0'RuleID' cannot inherit from 'signed' because it is unknown.at /tmp/GqJf1fXxI0:1» | ||
FROGGS | m: use NativeCall; my native RuleID is Int is nativesize(32) is repr("P6int") { }; # signed is default | ||
camelia | ( no output ) | ||
DrForr | Ah, nativesize() works wonderfully for that. | 08:23 | |
I'm playing with libmarpa, but it occurs in many places. | |||
FROGGS | yes, I also like to do that since it makes comparing the lib documentation/headers easier | 08:25 | |
DrForr | Precisely the issue I was dealing with. | ||
Now if we could allow 'returns void' :) | |||
FROGGS | I intentionally did not do that when adding void :o) | 08:26 | |
08:27
vendethiel joined
|
|||
DrForr | What were your reasons? Just curious, no wanting to start an argument. | 08:28 | |
FROGGS | it should be more Perl6ish that Cish semantic wise | 08:29 | |
than* | |||
DrForr | Fair enough, 'returns Nil' isn't exactly a principle that comes out of Perl6, true. | 08:30 | |
FROGGS | so even if NativeCall would treat the absence of the returns trait to 'returns void', other Perl 6 code inspecting the signature would not | ||
likely our optimize would choke on that | |||
DrForr | Makes sense, it just feels like an awkward special case to me, not to mention it's harder to line up neatly :) | 08:32 | |
Though you may have just given me the means to do that just that, I wonder if 'native Void is void is nativesize(0)...' :) | 08:33 | ||
FROGGS | no | ||
DrForr | I know, just teasing. | ||
FROGGS | nativesize(0) will complain :o) | ||
08:34
spider-mario left
|
|||
FROGGS | void is just a Pointer to an uninstantiable thing in NativeCall | 08:34 | |
DrForr | It'd try to reserve space on the stack, if not throw an error. | ||
FROGGS | m: use NativeCall; say void | ||
camelia | rakudo-moar d5eabd: OUTPUT«(void)» | ||
FROGGS | m: use NativeCall; say void.^mro | ||
camelia | rakudo-moar d5eabd: OUTPUT«(void) (Any) (Mu)» | ||
FROGGS | m: use NativeCall; say void ~~ Pointer | ||
camelia | rakudo-moar d5eabd: OUTPUT«False» | ||
FROGGS | m: use NativeCall; say void ~~ Pointer[void] | ||
camelia | rakudo-moar d5eabd: OUTPUT«False» | ||
FROGGS | well, ... or not | ||
08:34
espadrine joined
|
|||
DrForr | Don't worry, I won't enshrine the evil :) | 08:35 | |
08:35
kurahaupo1 left
|
|||
FROGGS | :o) | 08:36 | |
DrForr | Hrm. I can't seem to declare multiple 'unit native ...' types. I remember a change to 'class Foo {}' declarations in the last few days. | 08:48 | |
(I just refreshed rakudo.) | |||
DrForr looks for the unit{} doco. | 08:49 | ||
08:49
vendethiel left
08:52
araujo joined,
araujo left,
araujo joined,
araujo left
08:54
Ven left
08:55
andreoss joined
08:58
chenryn left
|
|||
itz_ | are coffee explosions the new coffee mug throwing> | 09:01 | |
09:01
chenryn joined
|
|||
nwc10 | itz_: I doubt it. I suspect that they impede progress, rather than helping to redistribute it. | 09:01 | |
09:03
cygx joined
|
|||
cygx | o/ | 09:03 | |
carlin++ | |||
09:03
vendethiel joined
|
|||
cygx | .tell masak the NQP version gist.github.com/cygx/1e010facd65dd...-money-nqp runs in 1.3 *seconds*, whereas perl6 takes 36s to run that version on my machine | 09:04 | |
yoleaux | cygx: I'll pass your message to masak. | ||
09:06
grondilu joined
|
|||
smls | jnthn, masak: This has to be a regex engine bug, right? gist.github.com/smls/85b78904e96eb589ea1e | 09:09 | |
The third example hangs indefinitely (if you comment out the { print "." } line you'll see it gets executed on infinite loop) | 09:10 | ||
Whereas the 2nd example, which is identical to the first excapt with <{ }> generated regexes replaced with the literal equivalents, works fine. | |||
And the 1st example, which is identical to the 3rd except doesn't have to backtrack, also works. | 09:11 | ||
09:11
Isp-sec joined
|
|||
smls | So it's the combination of backtracking and <{ }> that makes the 3rd example hang. | 09:11 | |
s/identical to the first/identical to the 3rd/ | 09:13 | ||
FROGGS | DrForr: only one thing can be in unit scope | 09:19 | |
smls | I added inline comments now, which should make it clearer than me trying to explain it on IRC. | ||
FROGGS | DrForr: you need to use the block form if you want to declare more that one thing per file | ||
DrForr | I thought I tried that but I'll check. | ||
arnsholt | Oooh. TAP's tests being numbered just came in very handy | 09:20 | |
DrForr | I get 'Malformed unit' with 'unit { ... }' (of course, the contents aren't '...' :) ) | ||
09:21
pecastro joined
|
|||
FROGGS | DrForr: yes, why would you want to do that? | 09:22 | |
the 'class Foo;' (semicolon form) is now spelled 'unit class Foo;' | |||
not block form 'class Foo { ... }' was not changed | 09:23 | ||
DrForr | In that case maybe I've run into a bug. I simply wanted to declare two different ID types. Marpa has several Marpa-$foo-ID types, and I wanted to properly type them as int32. | ||
FROGGS | DrForr: put it in a gist? | ||
09:23
mr-fooba_ joined
|
|||
DrForr | In a moment, I'm on a roll elsewhere :) | 09:24 | |
09:25
mr-foobar left
09:26
vendethiel left
|
|||
DrForr | gist.github.com/drforr/a9a2030a12d57a0ece51 | 09:26 | |
FROGGS | DrForr: replace the semicolon at line 3 and 5 with an empty block, and remove the unit and its block entirely | 09:27 | |
09:28
_mg_ left
|
|||
FROGGS | though a short way, it you just want to give int32 another name is to: | 09:28 | |
DrForr | Makes sense, it's just a little hard to see what the class declaration is in there, I take it it's the 'native'... | ||
FROGGS | m: constant Marpa-Rule-ID = int32; | ||
camelia | ( no output ) | ||
DrForr | That soudns dangerously close to parameterized types :) | 09:29 | |
FROGGS | yes, for the native type declaration the traits do the work | ||
though, you can add convenience methods in the class body | |||
DrForr | Right, the 'native' trait in this case creates a class, got it. | 09:30 | |
09:30
brrt joined
|
|||
brrt | \o | 09:30 | |
masak++ for nice post | |||
but | |||
26 minutes | |||
what the heck | |||
09:30
_mg_ joined
|
|||
brrt | y that happen | 09:30 | |
smls | .oO( Dammit, why is it so hard to golf down regex bug testcases like this? Many moving parts; remove one and the problem disappears. ) |
09:37 | |
09:38
araujo joined
|
|||
arnsholt | smls: I feel your pain. I'm trying to squash an indent-handling bug in my Python grammar >.< | 09:39 | |
FROGGS | :S | ||
arnsholt | Yeah. Pretty much | ||
DrForr | I haven't looked at the Python grammar in the ANTLR test suite, but it passes my parser tests... | 09:41 | |
09:43
vendethiel joined
09:46
AlexDaniel joined
09:49
rarara joined,
cygx left
|
|||
masak | good noon, #perl6 | 10:01 | |
yoleaux | 25 May 2015 23:23Z <avuserow> masak: Re memory leak in rakudo with regexes, reminds me of RT#123974 which I filed a while ago | ||
09:04Z <cygx> masak: the NQP version gist.github.com/cygx/1e010facd65dd...-money-nqp runs in 1.3 *seconds*, whereas perl6 takes 36s to run that version on my machine | |||
masak | plan for today: (1) check/fix Yapsi hanging, (2) file the memory leak thingy | 10:02 | |
avuserow: rt.perl.org/Ticket/Display.html?id=123974 does seem related. thanks for the reference. | |||
I may decide to file my sorrows along with that one, or separately -- depending on what I find when I investigate. | 10:03 | ||
cygx: oh, that's *great* news! means there's some room for optimization. :D | |||
masak adds this to the post | 10:04 | ||
10:05
vendethiel left
10:06
broquain1 is now known as broquaint
|
|||
masak | cygx: I converted that version back to Perl 6. it takes 22 seconds! | 10:07 | |
10:08
Isp-sec left
|
|||
masak | and the corresponding Perl 5 version takes 1.3 seconds. (just as your nqp run) | 10:09 | |
this is much closer to the Haskell version! | |||
oh, but the nqp version takes 0.68 s here... :) | 10:11 | ||
masak pats his laptop approvingly | |||
10:11
chenryn left
|
|||
smls | jnthn, masak: This is how far I can golf down the problem affecting the 'amb' rosettacode task: gist.github.com/smls/0f1185c050467a9ffee9 ...maybe someone else has more luck golfing it down further. | 10:11 | |
brrt | there's always room for optimization | 10:12 | |
10:13
chenryn joined
|
|||
masak loves it when blog posts (not just his own) cause... activity of various kinds | 10:16 | ||
smls | :) | ||
btw, is :my ($a, $b); inside an m/.../ regex *supposed* to declare the variables in the parent Perl 6 scope? | 10:17 | ||
I found that somewhat surprising. | |||
masak | no, I really don't think so. | 10:18 | |
the regex is supposed to be its own scope, and that's where the declaration should happen. | |||
smls | m: "" ~~ m{ :my $a }; "" ~~ m{ :my $a }; | 10:19 | |
camelia | rakudo-moar d5eabd: OUTPUT«Potential difficulties: Redeclaration of symbol $a at /tmp/IPbReQXdgk:1 ------> 3"" ~~ m{ :my $a }; "" ~~ m{ :my $a 7⏏5};» | ||
10:21
chenryn left
10:24
chenryn joined
|
|||
masak | m: "" ~~ m{ :my $a }; say $a | 10:27 | |
camelia | rakudo-moar d5eabd: OUTPUT«(Any)» | ||
masak | m: grammar G { regex foo { :my $a }; say $a } | ||
camelia | rakudo-moar d5eabd: OUTPUT«5===SORRY!5=== Error while compiling /tmp/Rgs_TBWIrUVariable '$a' is not declaredat /tmp/Rgs_TBWIrU:1------> 3grammar G { regex foo { :my $a }; say 7⏏5$a }» | ||
masak | seems that different rules apply for m{ } regexes and regexes in grammars. | ||
10:28
anaeem1 joined
|
|||
masak | m: my regex foo { :my $a }; say $a | 10:28 | |
camelia | rakudo-moar d5eabd: OUTPUT«5===SORRY!5=== Error while compiling /tmp/TDGSgUhCPPVariable '$a' is not declaredat /tmp/TDGSgUhCPP:1------> 3my regex foo { :my $a }; say 7⏏5$a» | ||
10:28
dayangkun left
|
|||
masak | ...and it seems more related to `m{ }` vs `regex foo` than to being in a grammar. | 10:28 | |
maybe it's a feature. maybe this is how you're meant to export values into the surrounding code. | 10:29 | ||
smls++ # signal(SIGINT).tap | 10:31 | ||
also, karma to whoever made that feature look like that. | 10:32 | ||
moritz guesses jnthn++ | 10:34 | ||
RabidGravy | looking at the Panda code it seems that the only way I can abort a build is by making a Builder sub-class with a build that dies, is that right and will it result in an NA in the cpandatesters? | ||
smls | masak: To "export values into the surrounding code", you can simple reference variables declared in the surrounding scope. | ||
10:34
_mg_ left
|
|||
masak | oh, troo. | 10:35 | |
smls | It's not like you can use it to dynamically insert lexicals into a scope at runtime: | 10:36 | |
masak | but maybe it's something like "regexes are not their own scope in the first place, because there are no scope braces" | ||
smls | m: sub r { rx{ :my $a = 3 } }; "" ~~ r; say $x | ||
camelia | rakudo-moar d5eabd: OUTPUT«5===SORRY!5=== Error while compiling /tmp/1W8ThljCB0Variable '$x' is not declaredat /tmp/1W8ThljCB0:1------> 3ub r { rx{ :my $a = 3 } }; "" ~~ r; say 7⏏5$x» | ||
masak | that one made no sense, on so many levels. | ||
smls: $a vs $x ? | |||
smls | oh | ||
10:36
blackbolt_ joined
|
|||
smls | makes no difference though | 10:37 | |
masak | no, of course not. | ||
that's not how lexical scoping works :) | |||
smls | yes | ||
10:37
raiph joined
|
|||
smls | just 'cause you said "export values into the surrounding code" :P | 10:37 | |
if it allowed to bypass the way lexicals normally work, it would at least serve a (possible) use | 10:38 | ||
but as it is, you might as well declare the lexicals outside of the m// instead of inside. | |||
just trying to gauge whether m// leaking its lexical was meant as a feature or not :) | 10:39 | ||
though maybe you're right, and it was done as a matter of consistency regardless of whether it is usefulness. | 10:40 | ||
masak | I'm arguing that it's more like the "foo $(my $x) bar" situation. | ||
m: say "foo $(my $x = 'OH HAI') bar"; say $x | |||
camelia | rakudo-moar d5eabd: OUTPUT«foo OH HAI barOH HAI» | ||
masak | (yes, you can declare a variable in the middle of a string interpolation) | ||
smls | m: say "foo {my $x = 'OH HAI'} bar"; say $x | 10:41 | |
camelia | rakudo-moar d5eabd: OUTPUT«5===SORRY!5=== Error while compiling /tmp/ShhOvDt2CsVariable '$x' is not declaredat /tmp/ShhOvDt2Cs:1------> 3say "foo {my $x = 'OH HAI'} bar"; say 7⏏5$x» | ||
smls | right | ||
10:41
skids joined
|
|||
masak | ...and that highlights the difference between `$()` (thunk) and `{}` (block) | 10:41 | |
smls | m// regexes may not have block braces, however: | 10:42 | |
m: say rx/a/ ~~ Block | 10:43 | ||
camelia | rakudo-moar d5eabd: OUTPUT«True» | ||
smls | ;) | ||
10:43
chenryn left
10:46
skids left
|
|||
blackbolt_ | hi, can someone look on code: pastebin.com/QmAcQkwu There is problem "Cannot look up attributes in a type object" | 10:47 | |
masak | well, if you want a block, then maybe you should `my regex {}` | ||
blackbolt_: looking. | |||
10:47
AlexDani` joined
|
|||
masak | blackbolt_: I see the problem. it's about using "new" wrong. | 10:47 | |
blackbolt_: before I explain it, easiest way to fix is probably to rename `method new` to `submethod BUILD` | 10:48 | ||
10:48
yqt joined
|
|||
masak | blackbolt_: could you try that and see if the problem goes away. | 10:48 | |
...? | |||
then come back for the explanation ;) | |||
blackbolt_ | ok | ||
masak | also, the `return self` at the end of `method dbConnect` is not necessary as your code stands right now. | 10:49 | |
smls | @ anyone with rt privileges: close #125242 please | ||
10:49
AlexDaniel left
|
|||
masak has a look | 10:49 | ||
(is anyone able to give smls rt privs?) | |||
colomon: confirmed that Yapsi hangs, after printing 'ok 9' in t/compiler.t | 10:52 | ||
colomon | masak++ | ||
masak | this looks like an easy fix. | 10:53 | |
may do it after lunch, though. | |||
blackbolt_ | masak, there is other problem with "createWindow" : "No such method 'run' for invocant of type 'Any' in block <unit> at llllll.p6:51" | ||
masak | one problem at a time :) | 10:54 | |
blackbolt_: did the change from `new` to `BUILD` fix the original problem for you? | 10:55 | ||
blackbolt_ | yeap | ||
masak | good. | ||
now here's what happened. | |||
blackbolt_ | it is next problem | ||
masak | method `new` in Perl 6 is meant to construct an object. | ||
you didn't do that in your method. | |||
what you wanted was more like an initializer. in Perl 6 we call that `submethod BUILD` | 10:56 | ||
10:56
darutoko left
|
|||
masak | (it's `submethod` because it's specific to that class and we don't want it to be inherited by deriving classes) | 10:56 | |
blackbolt_: if you're getting that error, it's because the object's $.app attribute doesn't contain a GTK::Simple::App, but is simply uninitialized. | 10:57 | ||
blackbolt_: you should find out why :) | |||
blackbolt_ | hmmm, ok | ||
10:57
itz2 joined
10:59
vendethiel joined
11:02
darutoko joined
11:04
tinyblak left
11:05
tinyblak joined
|
|||
blackbolt_ | masak, i initialize GTK::Simple::App $.app and there is similar problem to $.DB "Cannot look up attributes in a type object in method run at lib/GTK/Simple.pm6:328 in block <unit> at llllll.p6:51" | 11:07 | |
11:07
fhelmberger joined
|
|||
smls | blackbolt_: You assign to $.app even though you didn't declare it 'is rw' | 11:08 | |
11:08
ab5tract_ joined
|
|||
arnsholt | Aha! Found my bug | 11:09 | |
11:10
tinyblak left
|
|||
smls | blackbolt_: You should probably assign to $!app instead of $.app | 11:10 | |
blackbolt_ | smls, but i need public variable | 11:11 | |
smls | and, similarly, "$!DB = " instead of "$.DB = " | ||
11:11
fhelmberger left
|
|||
blackbolt_ | with db you have right it should be private | 11:11 | |
smls | yes, keep them public, but refe4r to them as $!DB when initializing them inside the class itself | 11:12 | |
11:12
darutoko- joined
11:13
Ven joined
|
|||
smls | The $.attr for is just a convenience accessor that gets added *in addition* to the direct $!attr attribute notation, which is always available within the class itself no matter what kindof attribute it is. | 11:13 | |
s/for/form/ | |||
Ven | o/ #perl6! | ||
11:14
darutoko left,
AlexDani` left
|
|||
FROGGS | arnsholt: what was it? | 11:17 | |
11:18
chenryn joined,
fhelmberger joined
|
|||
blackbolt_ | smls, so how can i run this application? | 11:18 | |
smls | blackbolt_: Your pastebin example works for me after making these three replacements (matching once each): s/method new/submethod BUILD/ s/$.DB =/$!DB =/ s/$.app =/$!app =/ | 11:19 | |
11:20
inokenty joined
|
|||
smls | you can even apply it with sed ;) | 11:20 | |
sed -i'' 's/method new/submethod BUILD/; s/$.DB =/$!DB =/; s/$.app =/$!app =/' test.p6 | |||
11:21
vendethiel left
11:23
fhelmberger left
|
|||
blackbolt_ | smls, hmmm you have right it work... Thanks! | 11:23 | |
masak | I agree that $!attr should be used for assignment most of the time. | ||
the exception is if you're designing your class such that the `is rw` accessor is meant to be overridden by deriving classes. | |||
then using $.attr for assignment is the right thing to do. but it's quite rare. | 11:24 | ||
smls | masak: In this case, $!attr *has* to be used for assignment, because the public accessor is *not* declared 'is rw' | ||
arnsholt | FROGGS: Compound statements in suites would mess up the indent level | 11:25 | |
RabidGravy | anyone on macosx or windows fancy trying to panda install Crypt::Libcrypt ? It should crap out early | ||
11:26
tinyblak joined
11:28
AlexDani` joined
|
|||
Ven | masak: irclog.perlgeek.de/perl6/2015-05-26#i_10656120 the equivalent nqp version runs twice faster than p5 for you? | 11:29 | |
11:32
AlexDani` is now known as AlexDaniel
|
|||
smls | masak: S05 says that <{ }> "declares a sequence point, and is considered to be procedural". Could that affect the amb backtracking problem? | 11:34 | |
11:37
_mg_ joined
|
|||
dalek | ake: 98f527b | arnsholt++ | / (2 files): Fix bug with a suite containing a single compound statement. In those cases, the parser would mess up the indentation levels and keep parsing the suite when it should have stopped. Also adds test to make sure we don't do it again. |
11:37 | |
ake: 88ad99f | arnsholt++ | / (2 files): Fix bug in NEWLINE token. Previously, it didn't correctly eat up blank lines (which are supposed to be ignored). |
|||
arnsholt | FROGGS: 98f527b above is the commit, if you're interested in the fix too | 11:38 | |
11:38
mr-fooba_ left
11:42
mr-foobar joined,
inokenty left
11:44
andreoss left
11:46
blackbolt_ left
11:49
g5 joined
11:53
andreoss joined
|
|||
FROGGS | I see | 11:54 | |
11:55
Akagi201 left
11:56
blackbolt_ joined
11:57
inokenty joined
11:58
pauluu joined
12:00
domidumont left
12:01
laouji left
12:02
ggoebel joined
12:03
blackbolt_ left
12:06
fhelmberger joined
12:07
Ven left
12:17
Foxcool joined
12:19
blackbolt joined,
blackbolt left
12:22
cschwenz joined,
vendethiel joined,
cschwenz left
|
|||
[Coke] | I can give out bugadmin rights, just need the account/email on rt | 12:33 | |
smls | [Coke]: Was that directed at me? | 12:37 | |
[Coke] | Only if you want to be able to close RTs. :) | 12:38 | |
12:38
Ven joined
|
|||
masak | (I suggested that.) | 12:38 | |
12:39
gunpee joined
|
|||
smls | btw, a spam email has just been sent to the bugtracker - can we delete it, or just close it? | 12:40 | |
FROGGS | smls: we mark it as spam | ||
(just done it) | |||
smls | ok | 12:41 | |
FROGGS | there is a big "S" at the upper right once you can do that | ||
12:43
gunpee left
|
|||
[Coke] | once you mark it spam, it vanishes from the perl6 queue. (doesn't seem to work on the p5 queue, but I've marked some of those over the years as well) | 12:45 | |
12:45
vendethiel left
|
|||
masak | does someone want to translate version A in strangelyconsistent.org/blog/send-m...y-in-perl6 into NQP? | 12:47 | |
I would love to have a benchmark for that. | |||
smls | masak: Do you have a Perl 5 translation of the regex version? | 12:49 | |
masak | no, but I'm interested in that too. | ||
12:50
mr-foobar left
|
|||
masak | also, if someone can tweak the Perl 6 version of variant C to actually compute the value (even if it takes a while), I'd be interested in that also. | 12:50 | |
12:50
vendethiel joined
|
|||
masak | maybe something like inlining amb would work. | 12:50 | |
(it would destroy the cleanness of the solution, but it would still be interesting if it worked) | |||
smls | yeah | 12:51 | |
I think I'll give it a try (the P5 regex one) | 12:52 | ||
masak | \o/ | ||
I might try later with the ugly Perl 6 regex one. | 12:53 | ||
masak raises an eyebrow at the way he structured the code in Yapsi way back when | 12:54 | ||
hoelzro | o/ #perl6 | ||
masak | \o | ||
smls | masak: are you sure your perl 6 regex version actually works? | ||
(you say you cut it off after 88 minutes) | |||
masak | smls: pretty sure. I made it output progress in the form of changing variables. | ||
and it looked right. | |||
12:55
anaeem1 left
|
|||
smls | don't you experience the infinite-hanging bug with <{ }> that I've gist'ed earlier? | 12:55 | |
s/bug/problem that may or may not be a bug/ | |||
hoelzro | does it make sense to be able to predeclare a role? for example: role R { ... } ; class C does R { } | 12:56 | |
masak | no, I'm not experiencing that. | 12:57 | |
12:57
anaeem1_ joined
|
|||
smls | huh. | 12:57 | |
masak | m: role R { ... }; class C does R {}; say "alive" | ||
camelia | rakudo-moar d5eabd: OUTPUT«Use of uninitialized value of type Any in string context in any try_select at src/gen/m-Metamodel.nqp:2429===SORRY!===No appropriate parametric role variant available for 'R'» | ||
masak | that warning looks like an LTA bug to me. | 12:58 | |
also, the error message doesn't feel like it has a good handle on what's going on. | |||
13:01
anaeem1_ left
|
|||
moritz | aye | 13:03 | |
13:04
Ven left
13:06
carlin joined
|
|||
carlin | m: my $time = time; my $foo; loop (my int $i = 0; $i < 100000; $i++) { $foo = :10[50, 100, 150, 200]; }; say $foo; say time - $time; | 13:08 | |
camelia | rakudo-moar d5eabd: OUTPUT«6170016» | 13:09 | |
carlin | m: my $time = time; my $foo; loop (my int $i = 0; $i < 100000; $i++) { $foo = 50*1000 + 100*100 + 150*10 + 200; }; say $foo; say time - $time; | ||
camelia | rakudo-moar d5eabd: OUTPUT«617000» | ||
13:09
ab5tract_ left
|
|||
lizmat finally continued working on the P6W | 13:09 | ||
carlin | m: my $time = time; my $foo; loop (my int $i = 0; $i < 1000000; $i++) { $foo = 50*1000 + 100*100 + 150*10 + 200; }; say $foo; say time - $time; | ||
camelia | rakudo-moar d5eabd: OUTPUT«617001» | ||
andreoss | can i tell panda to not compile module in mbc? | ||
carlin | m: my $time = time; my $foo; loop (my int $i = 0; $i < 1000000; $i++) { $foo = :10[50, 100, 150, 200]; }; say $foo; say time - $time; | 13:10 | |
lizmat | if you folks have any suggestions about things I should mention, please let me know! | ||
camelia | rakudo-moar d5eabd: OUTPUT«(timeout)» | ||
13:10
aborazmeh left
13:12
vendethiel left
|
|||
hoelzro | masak: I was thinking of fixing it up | 13:12 | |
I'm giving a talk on working on rakudo at Chicago.pm on Thursday, and I'm going through my "rakudo idea junk drawer" to find a simple exercise to walk to audience through | 13:13 | ||
13:13
yqt left
13:15
dalek left,
vendethiel joined
13:16
dalek joined,
ChanServ sets mode: +v dalek
|
|||
masak | hoelzro: nice. | 13:19 | |
13:23
yqt joined
|
|||
masak | ok, I managed to fix *that* hang in Yapsi. | 13:27 | |
there's another one later on. | |||
I think the hang is related to changed whitespace handing in rules. but that change happened ages ago, so I don't know why it triggered now, six days ago. | |||
13:32
mr-foobar joined,
anaeem1_ joined
13:34
Akagi201 joined
13:35
chenryn left
13:38
anaeem1_ left,
anaeem1 joined
13:40
grondilu left
|
|||
RabidGravy | I don't suppose anyone else is building/testing on FreeBSD 8 ? | 13:41 | |
13:42
vendethiel left
|
|||
RabidGravy | It's behaving link nativecall isn't loading .so files from the full path name | 13:42 | |
of course my system could be cocked up | |||
13:42
anaeem1 left
|
|||
DrForr | Hrm. I've got a box that I could spin up some VMs here on at work, but I don't yet think that's a good idea. | 13:43 | |
FROGGS | RabidGravy: BSD's test to do that, that is, to not load libs from random paths | 13:44 | |
DrForr | (not that I don't think perl6 is stable, just the 'at work' part. | ||
FROGGS | RabidGravy: you need to put that directory in LD_LIBRARY_PATH before invoking perl6 | ||
RabidGravy | ah so a panda build with a custom .so is unlikely to work as it currently stands | 13:46 | |
[Coke] | I just tried out yapsi and am getting the same error I'm seeing testing rakudo star. | 13:47 | |
hoelzro | is that a *BSD thing, not being able to dlopen() an absolute path? I tried that on an OpenBSD VM last week and it worked fine =/ | ||
[Coke] | I did ufo && make, then ./bin/yapsi, and it complains it cannot find Yapsi in any of... | ||
masak | [Coke]: that's what I'd expect. | 13:48 | |
itz2 | panda/ext needs new versions with no "unit" warnings I think? | ||
13:49
anaeem1 joined
13:51
Ven joined,
laouji joined
|
|||
andreoss | m: (1...3, Empty ,3...6).perl.say | 13:51 | |
camelia | rakudo-moar d5eabd: OUTPUT«(1, 2)» | ||
andreoss | m: (1...3, Any ,3...6).perl.say | ||
camelia | rakudo-moar d5eabd: OUTPUT«Use of uninitialized value of type Any in numeric context in block <unit> at /tmp/cFW_IqrHeH:1(1, 2, 3, Any, 3, 4, 5, 6)» | ||
andreoss | m: (1...3, Nil ,3...6).perl.say | 13:52 | |
camelia | rakudo-moar d5eabd: OUTPUT«Use of uninitialized value of type Any in numeric context in block <unit> at /tmp/PF8ngji3ll:1(1, 2, 3, Any, 3, 4, 5, 6)» | ||
lizmat | P6W: p6weekly.wordpress.com/2015/05/26/...-progress/ | ||
moritz | lizmat++ | 13:53 | |
13:53
Sqirrel joined
|
|||
lizmat | please let me know of anything I've missed :-) | 13:53 | |
masak | colomon: just pushed two commits that unstucks Yapsi's test suite. | ||
colomon | \o/ | ||
masak | colomon: (now there are test failures instead, but that's one step better) | ||
FROGGS | RabidGravy: site/lib is in rpath, so will at least work once it is installed... | ||
RabidGravy: can you show us the code that is failing? | 13:54 | ||
colomon | masak: it’s a huge step forward as far as smoke testing is concerned. :) | ||
masak | I'm just looking at the whole Yapsi code base (which is not very big, actually) and going "oh dear, whoever wrote this was not very experienced, was he?" | ||
FROGGS | lizmat++ # ! | ||
13:55
fhelmberger left
|
|||
masak | heh. I knew how much of the Yapsi learnings I took with me to 007. I hadn't really realized how much I had learned in-between those two projects, though. | 13:55 | |
[Coke] | masak: just did an update, same failure mode on the make test. Not sure if it was intended to fix that issue. | ||
masak | it was. it's not supposed to hang anymore. | 13:56 | |
it doesn't hang here :/ | |||
13:56
fhelmberger joined
|
|||
masak | I'm not running `make test`, though. I'm running `prove -e'perl6 -Ilib' -r t/` | 13:56 | |
13:56
carlin left
|
|||
brrt | (1.6s for the nqp version here) | 13:57 | |
RabidGravy | FROGGS, It's e.g. the Sys::Utmp github.com/jonathanstowe/p6-Sys-Utmp | ||
masak | brrt: what's that? | ||
RabidGravy | but it looks like it's all the other code | ||
colomon | masak++: I get test failures but not hang when installing with panda | ||
FROGGS | lizmat: 'perl -MMoose -e1' is .18 and 'perl6 -e1' is .10 here fwiw | 13:58 | |
brrt | the iterative version of send more money (i think from cygx) | ||
cygx++ | |||
lizmat | FROGGS: good to hear :-) | ||
FROGGS | RabidGravy: what's the error message you get? | 14:00 | |
RabidGravy | let me find the window ;-) | ||
14:01
fhelmberger left
|
|||
RabidGravy | "Cannot locate native library '/usr/home/jns/devel/perl6/p6-Sys-Utmp/.panda-work/1432648885_1/blib/lib/utmphelper.so'" | 14:02 | |
14:02
domidumont joined,
Ven left
|
|||
RabidGravy | and it's definitely there at that point | 14:02 | |
timotimo | o/ | 14:05 | |
thank you lizmat, i'll read it right away :) | |||
brrt: do we actually expect startup time to benefit greatly from better jitting? | 14:07 | ||
14:07
vendethiel joined
|
|||
timotimo | lizmat: short and sweet. i like it :) | 14:07 | |
lizmat | timotimo brrt it was more intended as a teaser :-) | ||
timotimo | i know for a fact that if i had written that post, i'd've stressed for hours about "not enough text, oh god what have i missed" | 14:08 | |
brrt | wait, what did i miss | ||
14:09
xinming left
|
|||
brrt | timotimo; I do actually expect that this helps, at any rate for real programs, because the compiler is itself a perl6/nqp program | 14:09 | |
not for perl6 -e '1;' | |||
but for 'real' programs, yes, i do expect it will help | |||
if only so little | 14:10 | ||
timotimo | right; we recently tuned spesh thresholds so that less spesh work gets done in the bare startup, though :P | ||
it seems like we can get a pretty huge speedup for :10[ ... ] and friends | |||
as carlin demostrated | 14:11 | ||
14:11
g5 left
|
|||
brrt | what does :10[...] do, or rather, how is it implemented | 14:15 | |
14:15
xinming joined
|
|||
timotimo | that's the question, isn't it? :) | 14:15 | |
m: say :10[ 1, 2, 3, 4 ] | |||
camelia | rakudo-moar d5eabd: OUTPUT«1234» | ||
brrt recently had an epiphany with regards to the param_* set of ops | |||
timotimo | oh, that's excellent! | ||
brrt | basically, it's just a conversion matrix, right? | ||
timotimo | yes | ||
i'm still pulling latest parts and building | 14:16 | ||
i'll have a look at how :10 and friends are implemented | |||
brrt | well, there are 4 possiblities from source, and 4 possiblities from destination | ||
(namely, i, n, s, o) | |||
timotimo | yeah | ||
brrt | this means we can encode every transformation in 4 bits, and we can create a single transformation switch that switches on those bits | 14:17 | |
all that is left is filling out the 16-entry matrix to be 'correct' with regards to current behaviour | |||
timotimo | ah? | ||
brrt | (and then a slight API change, but that is a small matter) | ||
14:17
skids joined
|
|||
dalek | kudo/nom: c2a57ec | lizmat++ | src/core/Backtrace.pm: Lose the <unit-outer> in backtraces The lazification of backtraces accidentally included the <unit-outer> scope, where it didn't before. |
14:18 | |
timotimo | :10[ ... ] calls UNBASE_BRACKET | ||
:10( ... ) calls UNBASE | |||
14:19
aindilis joined,
xinming left
|
|||
timotimo | the unbase bracket version has to work with '.', too | 14:20 | |
14:20
xinming joined
|
|||
timotimo | i expect if we have a list of $ sigil'd vars, we can generate a bit of numeric code instead of a full call to unbase_bracket | 14:21 | |
except ... binding trickery may be involved | |||
m: my $foo := 1, 2, 3; say :10[ $foo ]; | 14:22 | ||
camelia | rakudo-moar d5eabd: OUTPUT«123» | ||
timotimo | m: my $foo = 1, 2, 3; say :10[ $foo ]; | ||
camelia | rakudo-moar d5eabd: OUTPUT«WARNINGS:Useless use of "," in expression "my $foo = 1, 2, 3" in sink context (line 1)1» | ||
timotimo | m: my $foo = (1, 2, 3); say :10[ $foo ]; | ||
camelia | rakudo-moar d5eabd: OUTPUT«3» | ||
timotimo | this just numifies, i suppose | ||
FROGGS | RabidGravy: can you try latest MoarVM and check if the error msg provides any hints now? | 14:23 | |
RabidGravy | 'ang on | ||
14:25
rindolf joined
14:28
anaeem1 left,
ab5tract_ joined,
vendethiel left
|
|||
ab5tract_ | I haven't been around much recently, but I wanted to a big karma hug to everyone on the impressive amount of work that's been happening | 14:29 | |
to *give a | |||
timotimo | i suppose the right place to put an optimization like that is the optimizer, since we can ask what the involved lexicals have set as their type constraints | ||
dalek | pan style="color: #395be5">perl6-examples: 6e8e53f | andreoss++ | / (2 files): [euler] problem 30 solution |
||
brrt | wait, what kind of optimization are we talking about :-) | ||
timotimo | this is about unbase_bracket | 14:30 | |
RabidGravy | FROGGS, exactly the same | ||
14:30
colomon left
|
|||
brrt | is it possible that the spectest actually hangs on mac, or is it just *really* slow | 14:31 | |
FROGGS | RabidGravy: unlikely | ||
RabidGravy: I changed the error message... | |||
RabidGravy | Hmm, maybe it didn't get the latest moar | 14:32 | |
FROGGS | RabidGravy: just go to your MoarVM dir, and type 'git pull && make install' | ||
or something along these lines | |||
andreoss | only 56 of 516 problems are solved | 14:34 | |
timotimo | now i wonder if unbase_bracket is meant to support numbers bigger than the base | 14:37 | |
m: say :10[ 12345, 12345 ] | |||
camelia | rakudo-moar d5eabd: OUTPUT«135795» | ||
14:41
vendethiel joined
|
|||
lizmat | timotimo: re size of blog post: I think the regularity is more important than the size | 14:44 | |
timotimo | that's a fair assumption, i think | 14:45 | |
note that i'm far from rational in this regard :P | |||
14:49
_mg_ left
14:50
colomon joined
14:52
laouji left
|
|||
lizmat | afk for a while again& | 14:53 | |
smls | masak: This seems to work, although it's very slow: gist.github.com/smls/f41a4384e03d58dd18e4 | 14:54 | |
Slowness probably stems from the fact that the sub-regexes returned by (??{ }) are recompiled every time they get backtracked over. | 14:55 | ||
brrt | Offtopic: one of the larger misfeatures of python is the large number of __double_underscore__ methods | 14:57 | |
smls | Also, when running it the memory usage rises constantly until the kernel kills the process. :( | ||
14:57
colomon left
|
|||
RabidGravy | FROGGS, which file did you change in Moar ? I'm still getting the same and not sure what is going on | 14:58 | |
FROGGS | RabidGravy: src/core/nativecall.c | 14:59 | |
RabidGravy: look at github.com/MoarVM/MoarVM/commit/5ddab9a43d | |||
smls | masak: It managed to get to the iteration "1085 + 7460 == 74803" before exhausing all RAM on my 8GB computer :P | 15:00 | |
15:01
anaeem1 joined,
raiph left
15:04
cognominal left
15:05
vendethiel left
15:06
telex left
15:08
telex joined
15:10
domidumont left
15:11
molaf_ left,
smls left
|
|||
timotimo | oh, re-compiling the regex every time you backtrack over it. that's a bad miss | 15:13 | |
15:14
anaeem1 left,
vendethiel joined
15:15
anaeem1_ joined,
smls joined
|
|||
smls | masak: Correction, it gets up to an iteration with $send == 1246, before exhausting ~7 GB of RAM. | 15:19 | |
15:19
anaeem1_ left
15:20
anaeem1_ joined
|
|||
smls | And it took 5 minutes to get there. | 15:20 | |
Since it starts looking at $send=1000 and the solution would be found at 9567, that means it only got 2.9% of the work done in that time & RAM :S | 15:21 | ||
So yeah, this does not seem to be a practically viable solution to the problem in Perl 5. | 15:22 | ||
RabidGravy | FROGGS, got it! | ||
FROGGS | RabidGravy: do tell | ||
15:23
koo6 joined
|
|||
RabidGravy | the "Cannot locate" is a red-herring, it actually can't find the symbol in the library | 15:23 | |
FROGGS | eww | ||
RabidGravy: but then it should state: Cannot locate symbol '%s' in native library '%s' | 15:24 | ||
RabidGravy | which is odd anyway as I've definitely seen it say that before | ||
Cannot locate native library '/usr/home/jns/devel/perl6/p6-Sys-Utmp/.panda-work/1432653646_2/blib/lib/utmphelper.so': /usr/home/jns/devel/perl6/p6-Sys-Utmp/.panda-work/1432653646_2/blib/lib/utmphelper.so: Undefined symbol "getutent" | |||
FROGGS | RabidGravy: ahh! | ||
nice, so my patch does something sensible | 15:25 | ||
RabidGravy: you need to link against the library that defines detutent | |||
getutent* | |||
bbkr | r: sub MAIN (Int :$x) {...} # why it does not print usage? | 15:26 | |
camelia | rakudo-jvm c2a57e: OUTPUT«Unhandled exception: Stub code executed in throw (gen/jvm/CORE.setting:14593) in sink (gen/jvm/CORE.setting:16528) in MAIN (gen/jvm/main.nqp:41) in <mainline> (gen/jvm/main.nqp:35) in (gen/jvm/main.nqp)» | ||
..rakudo-moar c2a57e: OUTPUT«Unhandled exception: Stub code executed at <unknown>:1 (/home/camelia/rakudo-inst-2/share/perl6/runtime/CORE.setting.moarvm:throw:4294967295) from src/gen/m-CORE.setting:16742 (/home/camelia/rakudo-inst-2/share/perl6/runtime/CORE.setting.moarvm:s…» | |||
timotimo | because named arguments are optional by default | ||
r: sub MAIN (Int :$x!) {...} | |||
camelia | rakudo-{moar,jvm} c2a57e: OUTPUT«Usage: /tmp/tmpfile -x=<Int> » | ||
RabidGravy | no, FreeBSD of a certain vintage doesn't have it at all so the .c will supply it | ||
geekosaur | was thinking that sounded like a BSD | 15:27 | |
timotimo | bbkr: ^^ | ||
15:28
ab5tract_ left
|
|||
bbkr | timotimo: thanks. I also found small inconsistency in MAIN behaviour - named params print expected type but positional does not. Is that also expected? | 15:29 | |
timotimo | oh | ||
dunno | |||
might be an easy fix :) | |||
for you, i mean :P | |||
bbkr | r: sub MAIN (Int $x!) {...} | ||
camelia | ( no output ) | 15:30 | |
..rakudo-moar c2a57e: OUTPUT«Usage: /tmp/tmpfile <x> » | |||
FROGGS | hehe | ||
15:30
zakharyas left
15:31
grondilu joined
15:34
diana_olhovik_ left
|
|||
bbkr reported bug | 15:38 | ||
15:39
_mg_ joined
|
|||
RabidGravy | WTF 'Undefined symbol "croak"' | 15:40 | |
bbkr | another question - how to turn on strict mode by default? | 15:41 | |
15:41
_mg_ left
15:43
colomon joined,
brrt left
|
|||
bbkr | nvm, found the answer: "-e one line of program, strict is disabled by default". I thought it was disabled for regular file interpreting too. | 15:44 | |
RabidGravy | me-- # total forgot all the C he ever know | 15:46 | |
timotimo | bbkr: oh god, a comeback of "you have to put 'use strict;' at the beginning of any script"? nooooooo~ | ||
i can't think of anything we could do that'd be worse | 15:47 | ||
bbkr | I was just confused because my oneliners allowed bare perl6 -e "$x = 3" and I was scarred that strict mode declaration in every file came back :) | 15:49 | |
timotimo | i can imagine you'd be scarred by "no strict by default" | 15:50 | |
15:50
FROGGS left
15:52
gfldex joined,
laouji joined
|
|||
bbkr | I'm maintaining such large Perl 5 codebase that I simply force people to do 20 push ups for forgetting "use strict". switching to Perl 6 will severely reduce my team physical condition :) | 15:53 | |
timotimo | mhm | ||
tony-o_ | Attribute '$!path' already exists in the class 'MyApp::Basic', but a role also wishes to compose it | 15:54 | |
oops | |||
15:57
laouji left
16:01
[Sno] left,
Akagi201 left
16:09
itz2 left
|
|||
andreoss | maybe there's something like INIT to compile a block and run it as the byte code? | 16:09 | |
hoelzro | is it a reasonable assumption that a predeclared role must be declared before it is consumed by a class? | ||
the complexity I'm imagining to get role R { ... } class C does R { } role R { #`(impl) } to DWIM makes me shudder | 16:10 | ||
16:10
diana_olhovik_ joined
|
|||
timotimo | andreoss: what now? | 16:11 | |
16:11
pauluu left
|
|||
ugexe | hoelzro: can you better explain what you want to do? | 16:12 | |
hoelzro | m: role R { ... } class C does R {} | ||
camelia | rakudo-moar c2a57e: OUTPUT«5===SORRY!5=== Error while compiling /tmp/hnyctndCLfStrange text after block (missing semicolon or comma?)at /tmp/hnyctndCLf:1------> 3role R { ... }7⏏5 class C does R {} expecting any of: infix infix stopper…» | ||
hoelzro | er | ||
m: role R { ... } ; class C does R {} | 16:13 | ||
camelia | rakudo-moar c2a57e: OUTPUT«Use of uninitialized value of type Any in string context in any try_select at src/gen/m-Metamodel.nqp:2429===SORRY!===No appropriate parametric role variant available for 'R'» | ||
hoelzro | there we go | ||
ugexe: that error message is LTA, so I was thinking about fixing it | |||
andreoss | timotimo: i'm not following. | ||
timotimo | "compile a block and run it as the byte code"? | ||
i don't understand | |||
hoelzro | I can do stuff like class C { ... } ; my $c = C.new; class C {} and that works fine | ||
timotimo | everything you have in your perl6 script is compiled to bytecode before its run | ||
hoelzro | but that's because the stuff actually using C is runtimey | 16:14 | |
timotimo | well, any way, i'll be AFK for a bit now | ||
hoelzro | so I think that making role R { ... } ; class C does R {} ; role R {} would be hard to do, and perhaps not terribly useful | ||
16:15
anaeem1_ left
|
|||
andreoss | COMPILE { ... } == perl --target=mbc '...' > bytecode.moarvm; moar bytecode.moarvm | 16:15 | |
timotimo: like that | |||
moritz | m: class A { ... }; class B is A { }; class A { } | ||
camelia | rakudo-moar c2a57e: OUTPUT«5===SORRY!5=== Error while compiling /tmp/AQ21RpRfFO'B' cannot inherit from 'A' because 'A' isn't compose yet (maybe it is stubbed)at /tmp/AQ21RpRfFO:1» | ||
andreoss | i mean to compile at runtime | ||
timotimo | so you want to emit a bytecode file? | ||
on top of running the code | 16:16 | ||
i'll get back to you later | |||
o/ | |||
andreoss | is it a bad idea? | ||
16:18
dwarring left
|
|||
andreoss | i see now why my question sounded stupid. So basically i want some code (like a class) to be compiled before the rest of code. | 16:19 | |
moritz | so, put it into a module? | 16:20 | |
andreoss | i'm trying to golf futher this rt.perl.org/Public/Bug/Display.html?id=125245 | 16:25 | |
so complied bytecode and the bytecode compiled on the fly do behave differently | 16:26 | ||
16:27
rindolf left
|
|||
andreoss | i wondered if i can to compile a block like that and compare it with the same block without pre-compilation | 16:27 | |
16:27
rindolf joined
|
|||
andreoss | sorry if i used the wrong terms here | 16:28 | |
16:28
chenryn joined
|
|||
ugexe | hoelzro: why the { ... } and not just { }? | 16:29 | |
hoelzro | ugexe: because I'm predeclaring the role | ||
dalek | osystem: a2938b6 | skids++ | META.list: Add X::Protocol to ecosystem ...getting folks to actually use it may end up being an exercise in cat-herding. |
16:31 | |
skids | Oh, I had access to that? :-) | 16:32 | |
tony-o_ | skids, what is it | ||
skids | It's a pretty bland module to for X:: based things like HTTP::Status | 16:33 | |
So we don't have to keep redundant lists of "404", "Not found" and such. | |||
16:35
molaf joined
|
|||
ugexe | is there an X::BlameUser yet? | 16:36 | |
tony-o_ | lol | ||
16:37
chenryn left,
camelia left
|
|||
skids | X::PEBKAC? | 16:37 | |
tony-o_ | X::TIMTOWTDI | 16:38 | |
16:39
camelia joined,
muraiki joined,
avalenn_ left
16:40
itz2 joined
|
|||
raydiak | if you think herding cats is difficult, you either don't live with them, or haven't tried to open a can of tuna for yourself | 16:40 | |
16:40
itz2 left,
ChanServ sets mode: +v camelia,
itz2 joined
|
|||
skids | raydiak: I don't anymore, but I still put the toilet paper on "backwards" out of habit. | 16:41 | |
nine | m: say "alive in the VM" | ||
yoleaux | 19 May 2015 21:43Z <jdv79> nine: please see the PR on I::Py | ||
camelia | rakudo-moar c2a57e: OUTPUT«alive in the VM» | ||
yoleaux | 20 May 2015 20:04Z <lizmat> nine: Is there a reason why nobody has added a "unit" statement to Inline::Perl5 to quiet the warnings? | ||
ugexe | skids: have you done anymore http rfc related work? | 16:42 | |
nine | j: say "alive in the VM" | ||
camelia | rakudo-jvm c2a57e: OUTPUT«alive in the VM» | ||
16:42
avalenn joined
|
|||
skids | ugexe: haven't had time yet. | 16:43 | |
[Coke] | nine: How can I run the inline:perl5 tests with a local ./install? | ||
nine | [Coke]: make test? | ||
skids | ugexe: are you going to add those grammars to the ecosystem? | 16:44 | |
[Coke] | nine: er, the spectest tests. I can't use panda to install into the ./install directory. | ||
ugexe | i have a http client build on top of rfc grammars, still has a few bugs parsing certain headers though. i dont think 7230-7235 can properly be translated automatically and work | ||
[Coke] | so how do I install Inline::Perl5 ? | ||
doing a fresh test now so I can try to find where the failure point is. | 16:45 | ||
nine | [Coke]: sorry, I have no idea. Stil have to find my way through the CompUnitRepo land | ||
skids | ugexe: the rfc itself pretty much says not to just run the grammar. Also it has works like proxies are supposed to tolerate and normalize things that would normally fail a client/server parse. | ||
ugexe | skids: i have updated ones in zef currently which is in the ecosystem: github.com/ugexe/zef/blob/master/l...s/HTTP.pm6 nad Zef/Utils/HTTPClient.pm6 | ||
skids | s/works/wording/ | 16:46 | |
ugexe | yea... headers are even worse. the default doesnt allow single letter words in a quoted string if there is space on both sides (a bug), and the eratta for it breaks other things | 16:47 | |
makes trying to keep it all in the grammar difficult | |||
16:48
dakkar left
16:49
rarara left,
vendethiel left
16:50
sftp left
|
|||
skids | Security wise the advice is do two passes -- one to get individual headers and then per-header stuff after aggregating the compound headers. So I guess the per-header pass could be lazy. | 16:51 | |
ugexe | whats the security risk in doing it in a single pass? | 16:52 | |
skids | Complexity mostly, I think. | ||
ugexe | i have hard coded rules for most known headers. but the default rule for when it doesnt match a known header has been a source of pain for me | 16:54 | |
skids | I saved a bunch of links to for later making spectests from greenbytes.de, e.g. greenbytes.de/tech/tc2231/. Those pages are a bit scattered. | 16:56 | |
16:56
[Sno] joined
|
|||
colomon | ==> HTTP::Server::Threaded::Router depends on HTTP::Server::Threaded::Router | 17:01 | |
Killed | |||
masak | smls: after getting rid of the experimental signatures -- I still run 5.18 here for some reason -- I got gist.github.com/smls/f41a4384e03d58dd18e4 working. | ||
17:01
grondilu left
|
|||
masak | smls: it gets lot further here than what you report. | 17:01 | |
smls | oh? how fast? | ||
dalek | pan style="color: #395be5">perl6-examples: 6d20768 | paultcochrane++ | .travis.yml: Add Text::VimColour dependency to Travis config |
17:02 | |
pan style="color: #395be5">perl6-examples: 6992ab5 | paultcochrane++ | categories/wsg/advanced-2008/event010-dwhipp.p6: [wsg] replace .for with .flatmap The method .for is deprecated and will be removed in Rakudo 2015.09. Its replacement is .flatmap as corrected here. |
|||
pan style="color: #395be5">perl6-examples: ee436d9 | paultcochrane++ | README.md: Update dependencies list in README |
|||
pan style="color: #395be5">perl6-examples: f52a30d | paultcochrane++ | t/categories/euler.t: [euler] add expected output for prob030 |
|||
masak | I had it print on every 100_000 iterations. it does so about once a second. | ||
17:02
Akagi201 joined
|
|||
hoelzro | does anyone know why stubby roles might not qualify for add_stub_to_check? | 17:03 | |
masak | smls: something is wrong. $send went from 1980 to 1025 in my output. | 17:04 | |
smls | huh :P | ||
andreoss | [ptc]: i knew i missed something, sorry | 17:06 | |
tony-o_ | colomon: thank you | ||
colomon | tony-o_: you’re welcome | ||
dalek | pan style="color: #395be5">perl6-examples: 7a937dc | paultcochrane++ | categories/euler/prob0 (5 files): [euler] replace hard tabs with spaces |
17:07 | |
tony-o_ | colomon: fixed it - it still needs the H:S:T dpends :-) | ||
[ptc] | andreoss: that's ok. | ||
17:07
Akagi201 left,
gfldex left
|
|||
[ptc] | andreoss: the funny thing is, that the test file wouldn't even compile since a variable wasn't defined... | 17:07 | |
tony-o_ | colomon: if you're interested in using that - i have something that builds on that module on the way | 17:08 | |
[ptc] | andreoss: does travis notify you if the build breaks? Or is it just me to whom that happens? | ||
colomon | tony-o_: nah, this turned up in the smoke test. :) | ||
17:09
andreoss left,
andreoss joined
|
|||
RabidGravy | boom | 17:10 | |
timotimo | hey tony-o_, jnthn has most likely figured out what causes instabilities all over the map | 17:23 | |
colomon | tony-o_: actually, things seem to be hung up in the HTTP::Server::Threaded tests now…. | ||
tony-o_ | colomon: it's an issue with the way stuff works with start {} blocks | 17:24 | |
start blocks and sockets | |||
timotimo: that is awesome! | |||
17:25
diana_olhovik_ left
|
|||
tony-o_ | timotimo jnthn what was it? | 17:25 | |
timotimo | a race inside lazy deserialization | 17:26 | |
dalek | rl6-roast-data: 0b1d661 | coke++ | / (9 files): today (automated commit) |
17:27 | |
jdv79 | [Coke]: we don't have full output of your runs there? | 17:31 | |
17:31
yqt left
|
|||
[Coke] | ok, I was able to get panda to install inline perl5 just now. wonder why it borked earlier. Now only "problem" is large number of deprecated warnings during the panda process. | 17:34 | |
jdv79: no. I locally track the full build output, but don't capture it. | 17:35 | ||
we can change that if it's needed. the roast data was mainly about roast, though, not rakudo itself. | |||
17:38
vendethiel joined
17:39
espadrine left
17:40
FROGGS joined
17:41
yqt joined
17:42
laouji joined
17:45
_mg_ joined
17:46
laouji left
|
|||
japhb | masak: Pretty please can you turn your various make+more=money variants into minibenchmarks for github.com/japhb/perl6-bench -- especially since y'all have been making NQP and Perl 5 versions as well as the Perl 6 ones. | 17:48 | |
(Would also be a strong incentive to take some of my personal hack time to do comparisons of different algorithms solving the same problem as well as different compilers running the same algorithm. | 17:49 | ||
17:50
abraxxa left
|
|||
pmichaud | r: sub MAIN (Int $count) { ... } | 17:52 | |
yoleaux | 20 May 2015 16:49Z <TimToady> pmichaud: FYI I'm intending to slaughter the $!flattens flag after this release since it makes @a,@a misbehave in non-flat list context, looks like we'll have to fix all the (foo,).flat.eager things scattered here and there too | ||
camelia | rakudo-{moar,jvm} c2a57e: OUTPUT«Usage: /tmp/tmpfile <count> » | ||
17:52
spider-mario joined
17:53
anaeem1 joined,
andreoss left
17:54
inokenty left
|
|||
masak | japhb: that sounds like a worthy thing to do. I'll spend some time on it tonight. | 17:56 | |
japhb: what's the closest thing to "here's what you need to do to create and submit a perl6-bench microbenchmark" ? | |||
pmichaud | r: sub MAIN ($pattern!, *@files) { ... } | ||
camelia | rakudo-{moar,jvm} c2a57e: OUTPUT«Usage: /tmp/tmpfile <pattern> [<files> ...] » | 17:57 | |
masak should probably check the github repo before asking | |||
17:57
fhelmberger joined
|
|||
FROGGS | good evening dear sir or madam | 17:58 | |
m: sub MAIN($a) { ... } #= flubber | 17:59 | ||
camelia | rakudo-moar c2a57e: OUTPUT«Usage: /tmp/jF9IVKBBk9 <a> -- flubber» | ||
FROGGS | m: sub MAIN($a where True) { ... } #= flubber | ||
camelia | rakudo-moar c2a57e: OUTPUT«Usage: /tmp/1Z80c6DhRA <a> » | ||
pmichaud | m: sub MAIN (Int $integer) { ... } | ||
camelia | rakudo-moar c2a57e: OUTPUT«Usage: /tmp/SJk_VxNAxM <integer> » | ||
FROGGS | was that already rakudobugged? | ||
17:59
anaeem1 left
18:00
koo6 left
|
|||
itz2 | grrr why doesn't git install subtree by default? | 18:00 | |
pmichaud | FROGGS: I'm responding to RT #125251 | 18:01 | |
18:01
domidumont joined,
yqt left
|
|||
pmichaud | m: sub MAIN ( :$x! ) { ... } | 18:01 | |
camelia | rakudo-moar c2a57e: OUTPUT«Usage: /tmp/2gFQ1UuDcN -x=<Any> » | ||
18:02
fhelmberger left
|
|||
masak | japhb: oh, from looking at the repo layout, it's just a matter of adding the scripts to the nqp/, perl5/, and perl6/ directories. all with the same name. yes? | 18:02 | |
japhb: do you prefer pull requests? | |||
18:02
pierrot_ joined
18:03
gtodd joined,
pierrot left
|
|||
FROGGS | pmichaud: k, I'll rakudobug the lack of the comment when a where clause is present | 18:03 | |
18:03
Akagi201 joined
18:08
pierrot_ is now known as pierrot,
inokenty joined,
Akagi201 left
|
|||
japhb | masak: I'm happy to add commitbits too, especially as I already know your code style won't drive me batty. :-) | 18:09 | |
There is one more thing to do than putting the scripts in the right directories; you need to add a stanza to minibenchmarks.pl in the top level. | |||
masak: You now have a commitbit. Go out and -Ofun. :-) | 18:11 | ||
masak | \o/ | 18:12 | |
ah, yes. minibenchmarks.pl. | 18:13 | ||
japhb: I'll try and get around to this tonight. | 18:14 | ||
japhb | masak: Thanks! | 18:15 | |
18:16
Peter_R joined
|
|||
japhb | Anyone happen to know of a relatively *simple* (not a ton of rules) pen-and-paper RPG? I've discovered while attempting to capture the essence of a couple of my old favorites in Perl 6 code that they were, in fact, extraordinarily complicated. | 18:23 | |
18:23
[Sno] left
|
|||
japhb | And hard to tease out the fun starting bits from the "only old timers care one whit about this" sort of rules. | 18:23 | |
DrForr | GURPS is pretty straightforward. | 18:24 | |
japhb | DrForr: You'd be surprised (I was an old GURPS fan, and that was one of the first I tried, and it's certainly less complex at the core than e.g. Pathfinder, but still ... DANG.) | 18:25 | |
DrForr | Then D20 maybe? | ||
japhb | Pathfinder is basically D20 3.5+i | 18:26 | |
DrForr | Amber Diceless comes to mind as well. | ||
japhb | The thing I'm coming to understand is that humans are so good at internalizing exceptions and obscure stacking rules and such that they don't realize that, from the point of view of coding the rules, it's a completely entangled web. | 18:27 | |
Hmmm, haven't played that one, though I've heard of it. | |||
18:27
gfldex joined
|
|||
dalek | kudo/nom: b9f993b | FROGGS++ | src/core/CompUnitRepo/Locally.pm: dont create dirs when instanciating CUR But also do not skip non-existing locations, because we might be creating them when installing into. |
18:27 | |
18:28
[Sno] joined
|
|||
DrForr | That requires a bit more maturity on the behalf of the players than you may be able to assume :) | 18:29 | |
japhb | Amber Diceless, you mean? | ||
DrForr | Yeah. | ||
GURPS though has the geek cred, EFF and NSA ties :) | 18:31 | ||
japhb | Heh | 18:32 | |
That one was my favorite in college; old school D&D before that. | 18:33 | ||
DrForr | Same here. In fact I just hooked up with some of my cohorts from that time as well. | ||
18:34
mr-foobar left
|
|||
colomon is a big Amber Diceless player | 18:35 | ||
colomon doesn’t think Amber would do well as a Perl 6 program | 18:36 | ||
japhb | The wikipedia page for it was an interesting read, at least. | 18:38 | |
masak | FROGGS: s/instanciating/instantiating/ -- for some reason, this type seems common among Germans (haven't figured out why yet) | 18:39 | |
DrForr | I don't think it'd be a good program either, but he was looking for a simple RPG. | ||
18:39
_mg_ left,
yqt joined
|
|||
colomon | japhb: Oh, Amber is an awesome game. But the rules are so slight they tend to fall away to nothing in practice. | 18:39 | |
FROGGS | masak: ahh, now that you write it it seems clear to me | ||
masak | I mean, we should all blame Lating for doing things like instance : instantiate | 18:40 | |
colomon | japhb: it’s basically all either, “You automatically win” or “It’s the GM’s call.” | ||
skids | ISTR Paranoia being pretty simple. | ||
japhb | skids: Oh, that's an interesting idea. An old friend of mine used to love that. | 18:41 | |
DrForr | Oh, wait, I'm an idiot. The Laundry. Geek cred on two levels :) | ||
skids | Considering you burn through all those clones faster than the average RPG character lifespan, you need autogenerators, more too :-) | 18:42 | |
[Coke] | paranoia was awesome. | ||
japhb | colomon: Hmmm, yeah, that makes sense. Part of the reason I didn't go for Ars Magica (original rules), because that's a game of storytelling, not so much exploration and Indiana Jones stuff. | ||
nine | masak: in German it's Instanz : instanzieren so we kind of fixed that ;) | ||
masak | German++ | 18:44 | |
japhb: you could always implement a Nomic :P | |||
japhb | Didn't you already do that? :-) | 18:45 | |
masak | no, I sketched some plans to do it. | ||
DrForr | I thought that's what the perl6 parser was. | ||
japhb | DrForr: Oh geez, now I have to go and pick up more Stross novels. :-) | ||
tony-o_ | are we going to have some kind of p6 rpg bot in here? | ||
DrForr | You're *missing* some? :) | 18:46 | |
japhb | .oO( The #perl6 MUD ) |
||
masak | tony-o_: that would be *awesome*. a slow-moving game, without all-that-clear winning conditions, with people lazily making moves every week or so. :) | ||
18:46
mr-foobar joined
|
|||
masak | if I had a hand in it, it would probably come out seeming more like Mornington Crescent than anything else. | 18:47 | |
tony-o_ | masak: i've considered it a number of times | ||
japhb | DrForr: I'm a binge reader. I have to reduce my novel reading the only way I can: by *not* buying everything I've heard of. :-) | ||
DrForr | You're describing debugging teh core :) | ||
tony-o_ | masak: i'm more interested in it from an engine perspective than a story perspective :-) | ||
japhb imagines a Perl 6 implementation of Core Wars | |||
18:49
diana_olhovik_ joined
|
|||
dalek | line-Perl5: eed9d90 | lizmat++ | lib/Inline/Perl5.pm6: Add 'unit' to silence deprecation warning |
18:49 | |
tony-o_ | masak: i'll build an engine for one in p6 when i finish this http {mv[c?]} stuff i'm working on | ||
raydiak | some web-based civilization-building games roughly fit that long-running sandbox description | ||
tony-o_ | if you're interested | ||
colomon | japhb: I dunno about Ars Magica, but certainly “exploration and Indiana Jones stuff” fits very easily into the Amber system. :) | ||
japhb | hmmm | 18:51 | |
tony-o_ | or if anyone is, really | ||
skids | FWIW as far as modern *board* games go, the main reason they can't be coded is because the quality of the rules is generally very low. | ||
raydiak | world of darkness games e.g. Vampire lend themselves well to simplicity in some ways, if fistfuls of D10s aren't the type of complexity you're worried about...dunno anything about their modern incarnations though | 18:52 | |
dalek | line-Perl5: ef02770 | (Stefan Seifert)++ | t/p (2 files): is_deeply now is called is-deeply |
||
line-Perl5: dcd0b0c | (Stefan Seifert)++ | META.info: More complete META.info |
|||
tony-o_ | hard to steal from the bank in an online monopoly | ||
nine | lizmat: you literally beat me by 3 minutes | ||
lizmat | and *you* beat me on the is_deeply :-) | ||
nine | lizmat: and that after I've been pretty much offline for almost a month ;) | 18:53 | |
lizmat | sorry, I got inspired by itz++ 's panda pull request :-) | ||
nine | Why do we need unit now anyway? The p6weekly and Rakudo's changelog only mention that we need it, not why. | 18:54 | |
lizmat | to prevent confusion between stubbing a package and a file scope package | 18:55 | |
package Foo; # just a stub | |||
(well, in the future) | |||
nine | oh | ||
lizmat | unit package Foo; # file scope package | ||
FROGGS | and also a 'package Foo;' was in unit scope already, and like we push regex modifiers upfront we do not like that a thing that changes meaning comes that late | 18:56 | |
(the semicolon here) | |||
nine | I guess "unit" refers to the CompUnit? | ||
japhb | raydiak: Hmmm, thank you. Fistfulls of dice aren't a problem per se ... which makes me wonder about some "go get the bag of d6's" games ... it's the complexity of things like Pathfinder's Armor Class rules, which I swear vary your armor class based on so many things that I despaired of a decent data structure. | ||
FROGGS | nine: aye | 18:57 | |
japhb | .oO( Standing behind a tower shield, using it as a shield and not as cover, hasn't acted yet in this combat, wearing magical armor that gets its defense from force, not from strengthening the metal, defending against a touch attack, from an incorporeal being ... ) |
18:59 | |
raydiak | japhb: you're welcome :) I have seen mixed-gender groups of geeks and non-geeks alike enjoy it in some form, so thought it might have the flexibility you're looking for | ||
DrForr | I would mention CCGs but given how jealously WotC..er, TSR... er, WoTC, that might not be a good idea. | 19:00 | |
That is, how jeaously they guard their copyrights. | 19:01 | ||
lizmat | panda installs should now be a lot less noisy | 19:02 | |
19:04
virtualsue joined,
diana_olhovik_ left
|
|||
[Coke] | lizmat++ | 19:04 | |
japhb | DrForr: Yeah, I avoided pure D20 because these days it's actually hard to figure out how you can even refer to those rules without invoking Lovecraftian contracts | ||
19:04
diana_olhovik_ joined
|
|||
japhb | Despite they used to be free enough that Pathfinder managed to fork from them. | 19:04 | |
vendethiel | lizmat++ # weekly :) | 19:08 | |
19:10
mr-foobar left
19:11
mr-foobar joined
|
|||
DrForr | Yeah, I remember the original hoohaa over a Creative Commons or whatever RPG ruleset. | 19:12 | |
19:15
ab5tract_ joined
|
|||
DrForr grouses over a segfault that only happens every 4-5 test suite runs. | 19:16 | ||
FROGGS | DrForr: run it with perl6-gdb-m and ticket it please | 19:19 | |
DrForr | It's nothing to do with p6 core, it's a NativeCall isue. | ||
*issue | 19:20 | ||
FROGGS | if it segfaults in MoarVM, we need to fix it either way | 19:21 | |
19:21
xfix joined
|
|||
DrForr | Once I track it down I'll rakudobug it. | 19:22 | |
19:23
colomon left
19:24
domidumont left
|
|||
FROGGS | DrForr++ | 19:24 | |
19:26
andreoss joined
19:31
laouji joined
|
|||
flussence is slightly annoyed that I only saw those pull requests by chance glancing at github's front page, and it sent neither email nor website notification... | 19:34 | ||
19:34
Akagi201 joined,
diana_olhovik_ left
19:35
tinyblak left,
laouji left
19:36
mr-foobar left,
mr-foobar joined
19:39
Akagi201 left
19:40
pecastro left
|
|||
DrForr | rakudobug sent. | 19:41 | |
FROGGS looks | |||
DrForr | I'm headed to bed soonish, but I've got the backtrace open right now if you need anything. | 19:42 | |
FROGGS | I'll try to reproduce it on my box in a bit | 19:43 | |
DrForr | 64-bit Ubuntu 14.04 VM on Windows 8, 6Gb RAM. | ||
FROGGS | k | 19:44 | |
19:45
xfix left
19:46
pecastro joined
|
|||
dalek | kudo/nom: d5d5a48 | lizmat++ | src/core/ (2 files): Introduce :&as parameter to .categorize as well Plus some other associated cleanup with .classify |
19:48 | |
19:49
colomon joined
19:51
brrt joined
19:52
ab5tract1 joined
|
|||
masak | lizmat++ # p6weekly.wordpress.com/2015/05/26/...-progress/ | 19:55 | |
lizmat: says "in Markup", should be "is Markdown" ? (polarity accidentally reversed?) | |||
lizmat | masak: duh | ||
masak | er, "in Markdown", of course | 19:56 | |
DrForr | FROGGS: If you comment out the Stiflng' block, the history_list() call, and current-history to the end, I just got a 'tried to double-free' error. | ||
lizmat | fixed, masak++ | ||
20:00
darutoko- left
|
|||
masak | japhb: how do I know what to put in the 'scale' setting in minibenchmarks.pl ? | 20:01 | |
dalek | ast: 3f4554b | usev6++ | S09-hashes/objecthash.t: Add test for RT #125249 |
20:05 | |
ast: 0be89df | usev6++ | S09-hashes/objecthash.t: Rewrite dubious tests looked wrong to use 'ok' (with wrong precedence) just to make the fudging work |
|||
ab5tract1 | every time I think I've got it figured out... | 20:06 | |
gist.github.com/ab5tract/2c618fa8accc70464952 | |||
FROGGS | m: gist.github.com/ab5tract/2c618fa8accc70464952 | 20:07 | |
camelia | rakudo-moar c2a57e: OUTPUT«gist not found» | ||
20:07
khisanth_ is now known as Khisanth
|
|||
FROGGS | :/ | 20:07 | |
ab5tract1 | Backstory: I've been waiting to release Terminal::Printer until I have it safely printing from multiple threads | 20:08 | |
and I've been trying to wrap my brain around how to do this.. | |||
20:08
itz2 left
|
|||
japhb | masak: scale refers to the scale (size of problem) at which it is expected that benchmark timings will rise out of the noise and become reliable. Given the extreme slow start of e.g. r-j combined with multiple runs to get decent statistics, it's important to avoid wasting a pile of benchmarking runs just to gather data that is essentially junk. | 20:10 | |
ab5tract1 | my current idea is to use a frame timer and enqueue modifications to the grid (an array representing the terminal's character cells), and then doing the mutating on the ticking of the frame timer | ||
japhb | For problems that don't have an intrinsic scale, just use scale 1. | ||
ab5tract1 | FROGGS: so that gist doesn't show up for you? | ||
masak | japhb: then what does scale 0 (which most problems seem to have) mean? | ||
ab5tract1 | or is camelia meant to be able to run gists now?? | ||
FROGGS | ab5tract: it does not work with camelia it seems | 20:11 | |
ab5tract: it was until it broke | |||
ab5tract1 | that's very cool though | ||
I would be much obliged if anyone with some concurrency chops could point out what I'm being dumb about now | |||
I'd like to turn this into a conference presentation | |||
japhb | masak: Most? Err, hopefully not, because then people have been wasting tester's time a bit. | 20:12 | |
[Coke] | ab5tract1: what are you expecting that file to output? | ||
I see it start up and run to 50, then stop. | |||
ab5tract1 | [Coke]: The loop does not seem to have any activity whatsoever | ||
japhb | Ah yes, hmmm, appears there have been a few scale => 0 added recently. | 20:13 | |
masak | japhb: about to commit -- my commit adds a total of five scripts for two new problems. I'm committing "blind" because at this point I don't want to be slowed down by getting perl6-bench running for the first time. I might try that next, though. | ||
20:13
molaf left
|
|||
masak | japhb: ok, using scale => 1 | 20:13 | |
ab5tract1 | I'm not sure why I'm not being flooded with "yeah looping" | ||
let alone why my timer tap's say is never called | |||
japhb | Remember that if you want to test just particular benchmarks, you can time with --tests=list,of,tests | ||
FROGGS | DrForr: the test file trat triggers the error is missing in the ticket | ||
japhb | or --tests-tagged=list,of,tags | ||
[Coke] | ab5tract1: here it outputs up to 50. | ||
masak | japhb: pushed. | 20:14 | |
dalek | rl6-bench: 03de262 | (Carl Masak)++ | / (6 files): add send-more-money scripts |
||
masak | japhb: that is indeed a useful tip after I get perl6-bench running. thanks. | ||
japhb | Excellent, thanks masak. | ||
masak tries to satisfy the deps to get perl6-bench running | 20:15 | ||
ab5tract1 | [Coke]: yes, that is one for every interval of the timer at the bottom there, which just serves to create subsecond input for testing purposes | ||
20:16
RabidGravy left
|
|||
japhb | Gah, no one ever changed quickstart to start later than 2014.01 | 20:16 | |
dalek | kudo/nom: 71128b8 | lizmat++ | src/core/Any.pm: Make sub classify/categorize work with :into |
||
japhb | masak, since you're in there, you might consider patching github.com/japhb/perl6-bench/blob/.../bench#L28 to use a more recent threshold than 2014.01, otherwise you'll build a LOT of releases | ||
ab5tract1 | What I am trying to do is to get that thread I am creating in the init method to output the concatenated contents of the channel | ||
once per second | |||
japhb | (and so will everyone else who uses quickstart for the first time ....) | 20:17 | |
20:17
itz2 joined
|
|||
ab5tract1 | But even my rudimentary, braindead debug output from that loop {} is not outputting | 20:17 | |
[Coke]: Does that make any sense? | 20:18 | ||
timotimo | japhb: sorry %) | 20:19 | |
[Coke] | sort of. having your expected output would make it more clear. | ||
ab5tract1 | every 10th line it should output the last ten numbers on a single line. on line number 23 | 20:20 | |
tony-o_ | ab5tract1: i also don't see anywhere you're doing $!chan.receive | 20:21 | |
masak | japhb: set it to 2015.05 ? | ||
japhb | timotimo: No worries, could have done it myself. :-) | ||
masak: Yeah, that's fine. | 20:22 | ||
masak | oki | ||
ab5tract1 | tony-o_: I thought @!chan.list in the supply emit sub would make it unnecessary | ||
[Coke] | Looks like nothing after my $closed = $!supply.closed; is happening in that start. | 20:23 | |
dalek | rl6-bench: f217da7 | (Carl Masak)++ | bench: patch to use a more recent threshold <japhb> masak, since you're in there, you might consider patching github.com/japhb/perl6-bench/blob/.../bench#L28 to use a more recent threshold than 2014.01, otherwise you'll build a LOT of releases <masak> japhb: set it to 2015.05 ? <japhb> masak: Yeah, that's fine. |
||
ab5tract1 | [Coke]: oh god | ||
[Coke] | (via more debug output) | ||
ab5tract1 | That's a huge dumb | ||
japhb | masak++ # Thanks again | ||
ab5tract1 | that should be $!chan.closed | 20:24 | |
though when I change it to that, I get an unhandled exception error :) | |||
20:24
sue__ joined
|
|||
tony-o_ | not sure Channel.list does what you mean it to there | 20:25 | |
20:27
sue__ left
|
|||
ab5tract1 | tony-o_: you are absolutely right, thanks | 20:27 | |
20:28
RabidGravy joined
|
|||
ab5tract1 | hmmm, so this approach might not be what I need, either | 20:28 | |
[Coke] | I would recommend putting a try/catch wrapping the contents of the init method and dumping out any errors. | ||
That should let you get past the silent failure that seems to be happening. | |||
ab5tract1 | [Coke]: Fair idea, but I think I've got this a bit backwards to begin with. Going to try another tack first | 20:29 | |
Thanks for the help! | |||
[Coke] | (ah, changing it from supply to change avoids the runtime boom) | 20:30 | |
good luck. :) | |||
ab5tract1 | \o/ | 20:33 | |
andreoss | m: say 16/0.22 | 20:34 | |
camelia | rakudo-moar c2a57e: OUTPUT«72.727273» | ||
timotimo | did you make something faster? :P | ||
ab5tract1 | gist.github.com/ab5tract/2c618fa8a.../revisions | ||
so the conceptual shift was: poll the channel to fill in the array, and then print that from the tap and reset the list | 20:35 | ||
andreoss | nqp is 72 times faster than perl 6 | ||
timotimo | ah | ||
andreoss | with almost the same code | 20:36 | |
tony-o_ | ab5tract1: replied to your gist | 20:37 | |
ab5tract1: if you let that run for more than 10 seconds you should get a line 0 1 2 3 4 5 ... | |||
if you want to keep track of the last ten values, you need to do it in the 'start' loop without the private supply | 20:38 | ||
20:40
mohij joined
|
|||
timotimo | andreoss: this is "send more money" again? | 20:40 | |
andreoss | eulers problem | ||
tony-o_ | who's handing out money? | ||
masak | TPF :) | 20:41 | |
nwc10 | PLEASE SEND BANK DETAILS AND 3 PATCHES | ||
actually, really, I suspect that that part should be in e-mail number 3 | 20:42 | ||
tony-o_ | haha | ||
20:42
colomon left
|
|||
nwc10 | at the part about "payment held up due to buggy software. If you could help fix it, the money will soon be on its way" | 20:43 | |
20:43
anaeem1 joined
|
|||
timotimo | did anybody actually wind up doing a --profile of the send more money thing? | 20:44 | |
also, andreoss, where can i find that nqp code? | |||
did it land in perl6-bench? | |||
ah, indeed | |||
tony-o_ | did you end up checking out my benchmark module? | 20:45 | |
ab5tract1 | tony-o_: very interesting! TMTOWTDI :D | 20:46 | |
I was able to get my existing code working with a very small change gist.github.com/ab5tract/2c618fa8a.../revisions | 20:47 | ||
tony-o_ | ab5tract1: i'm knee deep into this start block stuff | ||
ab5tract1: that's also a good one^ | 20:48 | ||
20:48
colomon joined
|
|||
andreoss | tony-o_: i did, my theory about .map == 2 * »» == 3 * Xop didn't hold | 20:48 | |
ab5tract1 | tony-o_: good one? you mean that revision? | 20:49 | |
tony-o_ | yea | ||
20:49
sftp joined
|
|||
tony-o_ | andreoss: so the cmpthese worked for you? | 20:49 | |
i used it quite a bit to cmp perl to perl6 doing the same stuff and then didn't really use it much after that so i'm curious if it still works well (it's old by perl6 standards) | 20:50 | ||
ab5tract1 | tony-o_: thanks mate :) | ||
andreoss | how do you cmpthese perl 5 code against perl 6 code ? | 20:51 | |
ab5tract1 | the start stuff is really quite crazy | ||
tony-o_ | andreoss: i was comping with Proc | ||
so it included start up + run time | |||
andreoss: yea it can get hairy, i still like it better than callback hell where you can easily wind up with 30 variable declarations or, alternatively, 30 indents | 20:52 | ||
20:52
rindolf left
|
|||
ab5tract1 | so many concurrency examples use 'say' as an example, and I'm hoping that this might be a useful demonstation of queuing mutations to a data structure | 20:53 | |
20:54
colomon left
|
|||
andreoss | perl6-bench probably should use some kind of eval servers for that | 20:55 | |
20:56
dolmen joined
|
|||
timotimo | JSON::Tiny wants to get a .flatmap instead of a .for, moritz :) | 20:57 | |
dalek | kudo/nom: a20619a | lizmat++ | src/core/Any.pm: Fix thinko not found by spectest |
20:59 | |
21:01
anaeem1 left
|
|||
timotimo | fwiw, 20% and 16% exclusive time are used for &next alone | 21:01 | |
brrt | next is a lexotic right? | 21:02 | |
brrt would've thought they weren't that bad... | |||
21:02
cognominal joined
|
|||
timotimo | look at m-CORE.setting line 722 | 21:03 | |
it may be more efficient if we could get the check for "does it carry a label" out of the sub that's executed every time | 21:04 | ||
lizmat | ahhhhh.... | ||
timotimo | &next is responsible for 5708403 BootCODE allocations | 21:05 | |
and it only ever gets speshed, never jitted | |||
lizmat | so why are these not just subs anyway ??? | ||
timotimo | i'm not sure; it sort of feels like i knew at some point | ||
lizmat | if nobody else will, I'll play around with it after I added some more classify / categorize spectests | 21:06 | |
21:07
Peter_R left
|
|||
timotimo | right; but even if we can't just make those subs, we may get away with assigning a proto to &next and give it two candidates? | 21:09 | |
lizmat | who knows ? :-) | ||
perhaps it wasn't possible at one time, and it is now | |||
ran into that a few times myself :-) | |||
timotimo | right | 21:10 | |
21:12
cygx joined
|
|||
cygx | o/ | 21:12 | |
lizmat: commit e60f85c2 broke dispatch to the :$basename! candidate of IO::Path.new | 21:13 | ||
lizmat | cygx: could you give me an example ? | 21:14 | |
cygx | m: IO::Path.new(:basename<foo>) | 21:15 | |
camelia | rakudo-moar c2a57e: OUTPUT«IO::Path is disallowed in restricted setting in sub restricted at src/RESTRICTED.setting:1 in method new at src/RESTRICTED.setting:32 in block <unit> at /tmp/XFzqFccatO:1» | ||
cygx | ^ that warns in non-restricted setting instead of dispatching to the correct new candidate | ||
lizmat | cygx: confrirmed | ||
21:16
FROGGS left
|
|||
lizmat | looking at a fix | 21:17 | |
21:17
colomon joined
21:18
hudo joined
|
|||
lizmat | spectesting the fix | 21:21 | |
21:22
andreoss left
|
|||
lizmat | cygx: could you add some tests to make sure it now works ? | 21:22 | |
21:23
Akagi201 joined
|
|||
cygx | lizmat: I can do that, but not today | 21:24 | |
lizmat | ++cygx :-) | ||
dalek | kudo/nom: 00b44eb | lizmat++ | src/core/IO/Path.pm: Fix IO::Path(:basename<foo>), spotted by cygx++ Which I broke with e60f85c275af59e9d42d and which did not cause any spectest breakage :-( |
21:26 | |
21:28
Akagi201 left
|
|||
cygx | lizmat++ # my code works again | 21:31 | |
21:32
brrt left,
laouji joined
21:37
laouji left
|
|||
dalek | kudo/nom: e6f4046 | lizmat++ | src/core/Any.pm: Fix MMD named parameter snafu again When will I learn that named parameters only serve as tie breakers, and that therefore the order of the candidates is important! |
21:38 | |
tony-o_ | got perl6-hiker auto rendering pages after the controller is called | ||
oops | 21:39 | ||
jdv79 | what's a perl6-hiker? | ||
21:40
itz2 left,
colomon left
|
|||
tony-o_ | wrong channel, it's an mvc framework i'm working on | 21:40 | |
21:40
telex left
|
|||
dalek | ast: 01c49d6 | lizmat++ | S32-list/classify.t: Add classify tests for :into and :as |
21:41 | |
21:41
colomon joined
|
|||
lizmat | and with that I've committed enough for today | 21:41 | |
tony-o_ | jdv79: no documentation yet: github.com/tony-o/perl6-hiker/tree/master/usage | ||
lizmat | good night, #perl6! | ||
21:42
smls left,
smls_ joined
|
|||
tony-o_ | later lizmat | 21:42 | |
21:42
telex joined
21:45
kaare_ left
|
|||
timotimo | so, 5708404 allocations of Parcel and one less of BOOTArray are created by the next code block | 21:45 | |
maybe we could re-use an empty parcel in there? or something like that? | 21:46 | ||
because i don't think we have a need for arguments to the THROW sub's first parameter | |||
21:46
mr-foobar left
|
|||
timotimo | not that i've looked at THROW or something | 21:47 | |
ah, that's just the exception payload | |||
dalek | kudo-star-daily: 28183a9 | coke++ | log/ (2 files): today (automated commit) |
21:48 | |
tony-o_ | timotimo: do you know if jnthn already fixed the race? | ||
jdv79 | oh some sort of web frame-ish thing | 21:49 | |
does anyone use perl6 for a real webapp yet? | |||
tony-o_ | jdv79: yea like mojo but less intimidating | ||
jdv79 | i imagine the threading instability might make that difficult yet | ||
21:49
espadrine joined
|
|||
timotimo | he has not pushed the fix, at least | 21:49 | |
he's traveling today | |||
21:52
virtualsue left
|
|||
tony-o_ | jdv79: it works really well as long you have no traffice | 21:56 | |
21:58
fhelmberger joined,
espadrine left
22:00
colomon left
|
|||
timotimo spec tests a thing | 22:01 | ||
ab5tract1 | .tell jnthn This async code will work more often than not, but if I do it 20 times in a row, I can get fairly consistent blowups at some point in the run gist.github.com/ab5tract/2c618fa8accc70464952 | ||
yoleaux | ab5tract1: I'll pass your message to jnthn. | ||
22:03
fhelmberger left,
muraiki left
|
|||
ab5tract1 | .tell jnthn also, I expected the output to be relatively uniform across 'frames', but sometimes the delay values to sleep don't seem to be taking effect | 22:03 | |
yoleaux | ab5tract1: I'll pass your message to jnthn. | ||
22:05
hudo left
|
|||
timotimo | the S17 tests are a whole lot more crashy since jnthn fixed the "we run a single core at 100% usage" thing, eh? | 22:07 | |
22:08
ab5tract_ left,
ab5tract1 left,
vendethiel left
|
|||
japhb | ab5tract1: Note that github.com/japhb/perl6-bench is also able to do stress testing and capture failure modes -- so I'm looking for more failure cases that can be turned into stress/threading minibenchmarks like github.com/japhb/perl6-bench/blob/...nd-conquer | 22:10 | |
Please to consider adding your test there. :-) | |||
22:11
vendethiel joined
|
|||
cygx | .tell lizmat github.com/perl6/roast/pull/60/files ; it's my first commit to roast, so please sanity-check | 22:18 | |
yoleaux | cygx: I'll pass your message to lizmat. | ||
22:19
colomon joined
22:20
Foxcool left
|
|||
timotimo | hm. my "improvement" reduced GC load, but made us JIT a whole lot fewer frames | 22:20 | |
timotimo checks out what's wrong | |||
it only reduced GC load a bit | 22:21 | ||
but i have an idea for how to improve it a tiny bit more | |||
oh, another interesting thing: ordfirst is now our blocker for jitting MATCH | 22:22 | ||
we may want to hook that up with the jit very soon | |||
tony-o_ | japhb++ | 22:26 | |
22:27
RabidGravy left
|
|||
masak | 'night, #perl6 | 22:30 | |
tony-o_ | later | 22:31 | |
22:32
cygx left
22:38
ab5tract_ joined,
ab5tract1 joined
|
|||
timotimo | great. i have an improved (?) next sub thingie, i'll do the same for last and redo and see if it still spec tests properly | 22:40 | |
jdv79 | timotimo: where is this? | 22:41 | |
seems mildly interesting | |||
timotimo | where is this what? | 22:42 | |
it's only a performance improvement | 22:43 | ||
jdv79 | the diff | ||
timotimo | you'll get to see it in a few. if it is a success | ||
jdv79 | .tell masak what of RT #109880? | 22:44 | |
yoleaux | jdv79: I'll pass your message to masak. | ||
22:45
ab5tract1 left
|
|||
timotimo | well, it still runs the benchmark just fine | 22:45 | |
jdv79 | .tell masak also what of RT #113040 | 22:46 | |
yoleaux | jdv79: I'll pass your message to masak. | ||
22:46
ab5tract_ left
|
|||
jdv79 | what is it about - invariants in loopy code? | 22:46 | |
dalek | kudo/proper_control_multi_subs: abeb0f2 | timotimo++ | src/core/control.pm: promote last, next and redo to full multi subs at some point it had to be changed into this, but it seems like it's safe to have it like this now. the no-arguments version of those will now not only not allocate a BOOTArray and a Parcel, but also get jitted properly due to not using param_sp (slurpy positional) op codes. |
22:48 | |
timotimo | i'd be glad if someone could spec test this on the JVM | ||
flussence | I'm getting «Cannot call method '!cursor_next' on a null object», on stuff that hasn't changed and was working fine ~2 months ago... | ||
timotimo | oh, yikes | 22:49 | |
can you locate the source of that exception? | |||
flussence | github.com/flussence/Text-Tabs-Wra...rap.pm#L45 this line here, I'm pretty certain $text is always a string with chars in it at that point... | ||
the only thing unusual is I'm actually using :pos in there, hm. | 22:51 | ||
timotimo | on moar it spec tests successfully | 22:53 | |
it can possibly now also be inlined | 22:54 | ||
22:54
vendethiel left
|
|||
dalek | ast: aa22e3b | cygx++ | S32-io/io-path.t: Str.path is deprecated: Use .IO instead |
22:54 | |
ast: 287a9c5 | cygx++ | S32-io/io-path.t: Add tests for :basename and :dirname parameters of IO::Path.new |
|||
ast: 2f3c79a | labster++ | S32-io/io-path.t: Merge pull request #60 from cygx/io-path Update S32-io/io-path.t to use .IO instead of .path and test :basename, :dirname args |
|||
timotimo | nope, the optimizer doesn't seem to inline a "last", but it does turn it into a callstatic | 22:55 | |
but perhaps the optimizer inlines THROW into the next, last, and redo subs | 22:56 | ||
22:56
dolmen left
|
|||
timotimo | jdv79: did you see my commit up there? ^ | 22:59 | |
jdv79 | i did, thanks | 23:02 | |
timotimo | it seems like the code was like that previously because the JVM version of rakudo was unhappy about it | 23:03 | |
tony-o_ | is rakudobrew test what you're looking for on jvm timotimo ? | 23:04 | |
timotimo | dunno if it runs spec tests at all | 23:05 | |
flussence | .oO( If a module fails its tests and nobody's using it, did it fail at all? Maybe it's better for me to leave it alone... ) |
||
timotimo | and i don't know if the non-spectest tests exercise next, redo, and last | ||
flussence | oh and on a totally unrelated subject: my desktop just ran a full spectest under 5 minutes for the first time :D | 23:06 | |
tony-o_ | flussence: maybe just a note in github and not wasting time iwth it | ||
timotimo | not bad :) | ||
tony-o_ | timotimo: it's running spec/S\d\d.+ | ||
timotimo | cool | ||
yeah, can you run that? | |||
maybe i'll install a jvm nqp, too | |||
tony-o_ | yea i'm running it now | ||
on jvm | |||
i'm on the magicals | 23:07 | ||
timotimo | -j2 makes it not so annoying | ||
tony-o_ | i'll gist it when it finished | ||
timotimo | thank you | ||
23:08
Akagi201 joined
|
|||
tony-o_ | s/d$/s/ | 23:09 | |
23:13
Akagi201 left
23:16
andreoss joined
23:18
andreoss left
|
|||
timotimo | stage parse ... 100 seconds :\ | 23:19 | |
(well, a system under load) | |||
23:20
virtualsue joined
23:21
mohij left
23:23
smls_ left,
amurf joined,
smls joined
|
|||
tony-o_ | on S17 | 23:26 | |
23:26
inokenty left
|
|||
tony-o_ | my stage parse was 29s for moar and 62s for jvm | 23:26 | |
23:28
smls left
23:31
virtualsue_ joined
23:32
virtualsue left,
Vlavv left,
virtualsue_ is now known as virtualsue
23:38
gfldex left
|
|||
timotimo | i don't even have to TEST_JOBS=* because it already maxes out all my 4 cores with just one job | 23:40 | |
23:41
inokenty joined
23:45
Vlavv joined
|
|||
tony-o_ | ready for 1001 lines of greatness? | 23:47 | |
gist.github.com/tony-o/968656e889f1a95aa4c3 | 23:48 | ||
timotimo | that's good | ||
i can merge, in that case | |||
dalek | kudo/nom: abeb0f2 | timotimo++ | src/core/control.pm: promote last, next and redo to full multi subs at some point it had to be changed into this, but it seems like it's safe to have it like this now. the no-arguments version of those will now not only not allocate a BOOTArray and a Parcel, but also get jitted properly due to not using param_sp (slurpy positional) op codes. |
23:49 | |
tony-o_ | i thought perl *just handled* utf8 without me having to do much to it :/ | ||
timotimo | masaks send-more-money benchmark now runs only half as many GC collections as it used to | ||
what do you mean? | |||
tony-o_ | i'm writing an application for a client and they have an api server i'm getting info from for the end user and it took a big fat poop as soon as i started getting unicode chars from the api | 23:50 | |
LWP+JSON | 23:51 | ||
the fix is easy but finding out that was the problem wasn't | |||
timotimo | m: say "we used to take { 26392.53 / 19400.56 }x as much time for that benchmark" | ||
camelia | rakudo-moar c2a57e: OUTPUT«we used to take 1.36040042x as much time for that benchmark» | ||
timotimo | FWIW | ||
tony-o_ | that's p good speed up | 23:52 | |
timotimo | for what i did, yeah | ||
tony-o_ | i wish i could cycle 1.3x faster | ||
timotimo | hah | ||
tony-o_ | then i'd cruise at 27mph :-) | ||
timotimo | m: say "entered and exited { 41483844 / 30067041 }x as many frames before the change" | 23:53 | |
camelia | rakudo-moar c2a57e: OUTPUT«entered and exited 1.379711559x as many frames before the change» | ||
timotimo | i can't deal with mph | ||
tony-o_ | ~43kph | ||
timotimo | oh wow | ||
tony-o_ | i have an easier time visualizing kilometers, that's mostly from field military stuff though | 23:54 | |
timotimo | that's pretty fast for a bike even before the 1.3x speedup | ||
tony-o_ | i separated my rib from the cartilage so my cruising speed is down right now | ||
timotimo | :o | 23:55 | |
that seems like a failed optimization attempt | |||
tony-o_ | haha | 23:56 | |
it's caused me to diet until it heals, so i'll gain some aerodynamic improvement from it, i guess | |||
timotimo | :o | 23:57 | |
tony-o_ | by diet i mean i forego the peanut butter and nutella sandwiches | ||
timotimo | OK :) | 23:58 | |
if i wanted to lose some unnecessary weight, i think i'd need a more proper change of intake | |||
and also do sports | |||
i have to clean my bike and get it repaired | |||
tony-o_ | i eat 3k-5k cals / day even without the sandwiches, despite ugexe's advice | 23:59 | |
where do you live timotimo ? |