»ö« Welcome to Perl 6! | perl6.org/ | evalbot usage: 'perl6: say 3;' or rakudo:, niecza:, std:, or /msg p6eval perl6: ... | irclog: irc.perl6.org/ | UTF-8 is our friend! Set by sorear on 4 February 2011. |
|||
00:06
LlamaRider joined
00:13
molaf left
|
|||
dalek | ecza: 36a2589 | sorear++ | / (2 files): Implement binding to attributes |
00:24 | |
ast: f3230f8 | sorear++ | S (2 files): Fudge S03-operator/binding-attributes.t for niecza |
00:25 | ||
00:25
molaf joined
00:38
xinming left
|
|||
ashleydev | does perl6doc exist? | 00:41 | |
00:57
arlinius left
00:59
arlinius joined
01:21
leprevost joined
01:22
LlamaRider left
01:31
leprevost left
01:40
pmurias left
01:53
tim joined,
tim left
01:59
leprevost joined
02:13
benabik joined
02:14
PAAL3RT joined
|
|||
[Coke] | niecza: sub foo ($b, Int $c?); foo(2); | 02:21 | |
p6eval | niecza v13-224-g36a2589: OUTPUT«===SORRY!===Malformed block at /tmp/fnlSk3r1kS line 1:------> sub foo ($b, Int $c?)⏏; foo(2);Parse failed» | ||
[Coke] | niecza: sub foo ($b, Int $c?) {}; foo(2); | ||
p6eval | niecza v13-224-g36a2589: OUTPUT«Potential difficulties: $b is declared but not used at /tmp/FZRHbwROQm line 1:------> sub foo (⏏$b, Int $c?) {}; foo(2); $c is declared but not used at /tmp/FZRHbwROQm line 1:------> sub foo ($b, Int ⏏$c?) {}; foo(2… | ||
[Coke] | niecza: sub foo ($b, Int $c?) {$b; $c; Nil;}; foo(2); | 02:22 | |
p6eval | niecza v13-224-g36a2589: ( no output ) | ||
02:22
raiph left
02:26
wolfman2000 joined
|
|||
sorear | [Coke]: you can stick #OK on the end of the line to suppress all compiler warnings | 02:32 | |
b: class Foo { our $.x } | |||
p6eval | b 1b7dd1: ( no output ) | ||
02:33
whiteknight left,
silug joined
|
|||
sorear | b: class Foo { our $.x; has $y; has $.z; my $!w; has $!v }; say Foo.^attributes | 02:33 | |
p6eval | b 1b7dd1: OUTPUT«Null PMC access in get_attr_str() in main program body at line 22:/tmp/3dowQbqCM5» | ||
sorear | b: class Foo { our $.x; has $y; has $.z; my $!w; has $!v }; say Foo.^attributes».namew | ||
p6eval | b 1b7dd1: OUTPUT«Null PMC access in get_attr_str() in main program body at line 22:/tmp/a4FiIFPtrg» | ||
sorear | b: class Foo { our $.x; has $y; has $.z; my $!w; has $!v }; say Foo.^attributes».name | ||
p6eval | b 1b7dd1: OUTPUT«Null PMC access in get_attr_str() in main program body at line 22:/tmp/n03e7ImsG4» | ||
sorear | b: class Foo { our $.x; has $y; has $.z; my $!w; has $!v }; say Foo.^attributes».WHAT | ||
p6eval | b 1b7dd1: OUTPUT«Null PMC access in get_attr_str() in main program body at line 22:/tmp/IOCdjH_mGy» | ||
sorear | b: class Foo { has $!v }; say Foo.^attributes».WHAT | 02:34 | |
p6eval | b 1b7dd1: OUTPUT«Attribute()» | ||
sorear | b: class Foo { has $!v }; say Foo.^attributes | ||
p6eval | b 1b7dd1: OUTPUT«$!v» | ||
sorear | Should our $.x produce an introspectable attribute? I am thinking it probably shouldn't. | ||
[Coke] | niecza: sub j ($a, Int $b?) {}; sub g($a, Int $b?) { j($a,$b)}; g(3) | 02:35 | |
p6eval | niecza v13-224-g36a2589: OUTPUT«Potential difficulties: $a is declared but not used at /tmp/45CGBgqN4t line 1:------> sub j (⏏$a, Int $b?) {}; sub g($a, Int $b?) { j( $b is declared but not used at /tmp/45CGBgqN4t line 1:------> sub j ($a, Int ⏏$b… | ||
cognominal | in nom I tried token circumfix:sym<ang> { <?[<]><!pblock> … to recognize <-> as a lambda but pblock panics | 02:37 | |
should the method panic be a noop when called from a negative assertion? | |||
as tested by a dynamic var set by the negative assertion? | 02:38 | ||
anyway, bed overdue. I will read the log | |||
02:42
aber joined
|
|||
sorear | No, it shouldn't. | 02:42 | |
Better to use <!before '<->'> '<' ... | 02:43 | ||
Or wait for proper LTM support to land (qbootstrap branch) | |||
cognominal: for you ^^^ | |||
02:44
silug left,
abercrombie left
|
|||
[Coke] | sorear: I'm having trouble dispatching the sub splice to the method, due to the optional arguments, default values, etc. | 02:44 | |
is there something like "callsame" I could use, that would strip off the array and let me pass the remaining args as is? | 02:45 | ||
cognominal | <!before '<->'> would make <-> not recognized as a string when it should. | 02:47 | |
thx sorear. | |||
02:50
silug joined
|
|||
sorear | [Coke]: not really. | 02:51 | |
[Coke]: don't all the arguments have default values? | |||
[Coke] | no. | 03:00 | |
03:01
jaldhar joined
03:13
leprevost left
03:16
leprevost joined
|
|||
[Coke] | ugh. many questionable splice tests. | 03:33 | |
dalek | ast: e60ee59 | coke++ | S32-array/splice.t: don't skip anti-spec tests, remove them. |
03:34 | |
[Coke] | splice spec says it fails if $offset or $size is negative or undefined, but $size is defined as Int $size? | 03:35 | |
So, how does that work? | |||
03:37
orafu left
03:38
orafu joined
|
|||
[Coke] | (that is, $size is optional, so the signature allows an undefined value) | 03:38 | |
03:41
Patterner left
03:43
Psyche^ joined,
Psyche^ is now known as Patterner
|
|||
sorear | I don't know | 03:46 | |
it probably shouldn't fail | |||
Perl 5 defines splice such that $size = elems(@list) - $offset | 03:47 | ||
03:49
colomon joined
04:20
pliu joined
|
|||
pliu | anyone here? | 04:21 | |
come on you ppl | |||
benabik | pliu: Nobody here but us butterflies. »ö« | 04:22 | |
japhb | pliu, many people idle and backlog later; if you have a question, just ask. | 04:23 | |
04:26
pliu left
|
|||
colomon got so involved watching The Republic of Doyle he forget to spectest wrangle. | 04:29 | ||
04:35
bacek left
|
|||
benabik | colomon: I would expect watching an entire country would be time consuming. | 04:40 | |
colomon | nah, just distracting. | 04:41 | |
en.wikipedia.org/wiki/Republic_of_Doyle # tonight was the season 3 premiere, guest starring Russell Crowe and Alan Doyle | 04:45 | ||
niecza: say +'' | 04:48 | ||
p6eval | niecza v13-224-g36a2589: OUTPUT«0» | ||
colomon | nom: say +'' | ||
p6eval | nom 38165a: OUTPUT«0» | ||
dalek | ast: ac43a25 | (Solomon Foster)++ | S03-operators/basic-types.t: Fixed broken test, tweaked another to keep Niecza happy. |
04:49 | |
ecza: 8d043fe | (Solomon Foster)++ | t/spectest.data: Turn on S03-operators/basic-types.t. |
|||
colomon | I unfudged a nom test in there too, actually -- hope it does actually work. :) | 04:51 | |
05:06
Trashlord left
05:18
birdwindupbird joined
05:53
kaleem joined
06:03
thou joined
06:11
am0c^ joined
06:13
koban joined
06:14
sayu joined
|
|||
sorear | seems I just accidentally expected any to be a prefix operator | 06:30 | |
06:41
thou left
|
|||
moritz | \o | 06:41 | |
sorear | o/ | 06:42 | |
am0c^ | \o/ | ||
06:55
wtw joined
07:00
sayu left
|
|||
dalek | ecza: 51764f7 | sorear++ | / (2 files): Implement my $.foo, etc forms |
07:02 | |
ast: e8a2962 | sorear++ | S (2 files): [S03-operators/binding-attributes,S12-attributes/class] Remove an obviously wrong test and fudge for niecza |
|||
07:03
satyavvd joined
|
|||
dalek | ecza: d0ee156 | sorear++ | / (3 files): Within the body of a named "anon sub", make the name visible. GlitchMr++ |
07:13 | |
sorear | huh. 'anon sub' is not mentioned in any test file | 07:15 | |
07:15
xinming joined
07:17
nebuchadnezzar left
|
|||
sorear | perl6: class A { method postcircumfix:<( )>($x) { say $x.WHAT } }; A.(5) | 07:17 | |
p6eval | rakudo 38165a: OUTPUT«Capture()» | ||
..pugs b927740: OUTPUT«*** Must only use named arguments to new() constructor Be sure to use bareword keys. at /tmp/oHHSinpxbn line 1, column 61 - line 2, column 1» | |||
..niecza v13-226-g51764f7: OUTPUT«Int()» | |||
sorear | perl6: class A { method postcircumfix:<( )>($x) { say $x.WHAT } }; A.new.(5) | 07:18 | |
p6eval | pugs b927740: OUTPUT«*** Cannot cast from VObject (MkObject {objType = (mkType "A"), objAttrs = <Hash:0x7f06b7f9c1c9>, objOpaque = Nothing, objId = MkObjectId {unObjectId = 3}}) to VCode (VCode) at /tmp/dHCRy5YGiU line 1, column 61 - line 2, column 1» | ||
..rakudo 38165a: OUTPUT«Capture()» | |||
..niecza v13-226-g51764f7: OUTPUT«Int()» | |||
sorear | phenny: tell jnthn This greatly suprised me, and I would like to discuss the rationale: q[ perl6: class A { method postcircumfix:<( )>($x) { say $x.WHAT } }; A.new.(5) ] | ||
phenny | sorear: I'll pass that on when jnthn is around. | ||
07:19
nebuchadnezzar joined
|
|||
sorear | phenny: tell jnthn I've decided that 'my $.foo' is "just" a funny lexical + generated accessors and does not make anything show up in .^attributes or involve the MOP in any way (beyond installing methods). Is this sane? | 07:20 | |
phenny | sorear: I'll pass that on when jnthn is around. | ||
dalek | ecza: 54921c8 | sorear++ | lib/ (2 files): Prevent choking when trying to serialize a multi-dispatch cache |
07:28 | |
07:33
panterax left
07:34
panterax joined
07:39
molaf left
08:15
bacek joined
08:33
mj41 joined
08:40
jupp joined
08:42
drbean joined
08:50
snearch joined
08:53
snearch left,
snearch joined
08:54
am0c^ left
08:55
geze joined
|
|||
geze | history 20 | 08:59 | |
09:08
snearch left
09:09
stefanZ joined
|
|||
moritz | I've just tried to investigate the -p / -n failures in rakudo | 09:13 | |
turns out that the code for handling them tries to use Perl6::Compiler::{Signature,Parameter} which have been removed in May last year | 09:14 | ||
d'oh. | |||
masak | huh. | 09:16 | |
moritz | did -n/-p ever work in nom? | 09:17 | |
masak | sure. | ||
I used them quite a bit. | 09:18 | ||
moritz | when? | ||
maybe that code got accidentally merged back or so | |||
masak | oh wait -- maybe just in b. | ||
strangelyconsistent.org/blog/dash-n-and-dash-p is from late August 2011. | |||
but I'm pretty sure that's b, not nom. | |||
so those classes were removed in May, and then when we switched to nom the -n/-p patch was copied over somehow, and no-one tested it. | 09:19 | ||
moritz | I don't think the -n/-p patch was ever "copied over" | 09:21 | |
it looks to me that despite the date of the blog post, the implementation of -n / -p is older than the nom branch | |||
masak | ah. | 09:22 | |
yes, the implementation happened before the blog post. don't remember quite when. | |||
moritz | commit 7fb6341cdd71c3d5f236f4acdef45e9b2083334d | ||
Author: Carl Masak [email@hidden.address] | |||
Date: Mon Mar 7 23:01:13 2011 +0100 | |||
added -n and -p options | |||
and yes, that commit appears in the old master lineage as well as in nom | 09:23 | ||
masak | ah. | 09:24 | |
ooh, that was probably during the Vught hackathon last spring. | |||
moritz | so, how does one build a block with a custom signature around a code AST in nom? :-) | 09:25 | |
masak | beats me. | ||
maybe look at the Signature.pm class for ideas? | 09:26 | ||
moritz | nom: sub f(:$x, :x(:$y)) { } | 09:27 | |
p6eval | nom 38165a: OUTPUT«===SORRY!===Method 'CURSOR' not found for invocant of class 'ResizablePMCArray'» | ||
moritz | excuse me? | 09:28 | |
09:29
mj41 left
|
|||
moritz | ah, create_signature_object wants $/ as the first argument, and some code calls with $<signature> | 09:30 | |
and if that's quantified... BOOOM | |||
geze | * | 09:31 | |
09:31
geze left
09:32
daxim joined
|
|||
masak | moritz: yes, we can definitely get better at failing softly on that level. | 09:32 | |
moritz found the place | |||
09:33
mj41 joined
09:35
satyavvd left
|
|||
dalek | kudo/nom: f365ad3 | moritz++ | src/Perl6/Actions.pm: pass a Match object to create_signature_object, so that we can fail correctly previously, sub f(:$x, :x(:$y)) { } died incorrectly, because it tried to call method CURSOR on an RPA |
09:51 | |
masak | ./perl6 -e 'sub MAIN(Int $a) { say $a - 5 }' 7 | 09:55 | |
7 | |||
can anyone confirm? | |||
masak submits rakudobug | |||
moritz has to wait for a rakudo build to conform | |||
erm, confirm :-) | 09:56 | ||
masak | :10($a) is a workaround so far. | ||
./perl6 -e 'sub MAIN(Int $a) { say :10($a) - 5 }' 7 | |||
2 | |||
moritz | confirmed. | 09:59 | |
I guess it's the mixing in of the current string form that's bothering the multi dispatcher | |||
masak | I'm sure it is. | ||
10:01
dakkar joined
|
|||
masak | henceforth, this new Int type with Str mixed in, is dubbed "freaky Int". similar for other double-typed types. | 10:01 | |
moritz | nom: my roles orig-string[$o] { method Str() { $o.Str }; multi method gist (Mu:D:) { $orig.gist } }; my $a = 7 but orig-string['7']; say $a - 2 | 10:02 | |
p6eval | nom f365ad: OUTPUT«===SORRY!===Malformed my at line 1, near "roles orig"» | ||
moritz | nom: my role orig-string[$o] { method Str() { $o.Str }; multi method gist (Mu:D:) { $orig.gist } }; my $a = 7 but orig-string['7']; say $a - 2 | ||
p6eval | nom f365ad: OUTPUT«===SORRY!===Variable $orig is not predeclared at line 1, near ".gist } };"» | ||
moritz | nom: my role orig-string[$o] { method Str() { $o.Str }; multi method gist (Mu:D:) { $o.gist } }; my $a = 7 but orig-string['7']; say $a - 2 | ||
p6eval | nom f365ad: OUTPUT«7» | ||
moritz | nom: my role orig-string[$o] { method Str() { $o.Str } }; my $a = 7 but orig-string['7']; say $a - 2 | 10:03 | |
p6eval | nom f365ad: OUTPUT«7» | ||
moritz | nom: my role orig-string[$o] { }; my $a = 7 but orig-string['7']; say $a - 2 | ||
p6eval | nom f365ad: OUTPUT«5» | ||
moritz | WTBH does it call a .Str in $a - 2? | ||
nom: my role orig-string[$o] { method Str() { $o.Str } }; my $a = 7 but orig-string['7']; say ($a - 2).WHAT | 10:04 | ||
p6eval | nom f365ad: OUTPUT«Int+{orig-string}()» | ||
moritz | OMG | ||
bigints are to blame | |||
masak | o.O | ||
moritz | the bigint operations need to generate a new bigint object | ||
and they try to create one of the right type | 10:05 | ||
... by chosing the type of one of the arguments | |||
and here it happens to be the type of the first argument | |||
and that turns out to be less clever than we would have hoped :/ | |||
the fix is to add an additional parameter for the type object of the result to nearly all bigint ops | 10:06 | ||
jnthn | :/ | ||
phenny | jnthn: 07:18Z <sorear> tell jnthn This greatly suprised me, and I would like to discuss the rationale: q[ perl6: class A { method postcircumfix:<( )>($x) { say $x.WHAT } }; A.new.(5) ] | ||
jnthn: 07:20Z <sorear> tell jnthn I've decided that 'my $.foo' is "just" a funny lexical + generated accessors and does not make anything show up in .^attributes or involve the MOP in any way (beyond installing methods). Is this sane? | |||
masak adds this to the ticket | |||
moritz | the result is a proper 5, it just stringifies to 7 | ||
nom: my role orig-string[$o] { method Str() { $o.Str } }; my $a = 7 but orig-string['7']; say nqp::p6box_s(nqp::unbox_i($a - 2)) | 10:07 | ||
p6eval | nom f365ad: OUTPUT«5» | ||
jnthn | moritz: If somebody sends a subclass in, are we expecting to drop that in the type of the result? | ||
Guess we could... | |||
moritz | jnthn: I don't think we are supposed to do any automagic polymorphy in the int ops... | ||
jnthn | moritz: Yeah, I hoped we'd get away with this and save a lookup. | 10:08 | |
moritz | how could we possibly know what to do with A + B where both A and B inherit from Int, if not returning Int? | ||
jnthn | moritz: Guess wildly :) | ||
moritz: Anyway, yeah, we probably should be returning an Int. | 10:09 | ||
moritz | jnthn: that's what led to RT #108052 :/ (guessing wildly) | ||
jnthn shoulda guessed somebody would run into this in the space of weeks rather than years. :/ | |||
stefanZ | hi. just a little question: how can i define a typed variadic parameter? (TYPE *@args) gets parsed by rakudo but cant be called correctly | ||
masak | guess who ran into it... :) | ||
moritz | 'masak' given 'somebody' :-) | ||
stefanZ | rakudo: sub test (Str *@args) { say @args[1] }; test('foo', 'bar'); | ||
p6eval | rakudo f365ad: OUTPUT«Nominal type check failed for parameter '@args'; expected Positional but got Array instead in sub test at /tmp/v5Wn1Spc0G:1 in block <anon> at /tmp/v5Wn1Spc0G:1 in <anon> at /tmp/v5Wn1Spc0G:1» | ||
moritz | the error message is less than awesome, for sure | 10:10 | |
jnthn | I'm not sure types on slurpy params make sense at all | ||
What if one of the thigns in slurps is an untyped lazy list? And all that | |||
moritz | well, we could defer the check to consumption time | 10:11 | |
but it would be rather confusing to have the error location the place where the list is used (which could be several subroutines away) | |||
stefanZ | but when you want to make sure that all given args have to be of a certain type...? | ||
masak | then you don't want a lazy list, it seems. | ||
jnthn | Then add a where clause | ||
*@foo where all(@foo) ~~ Str | 10:12 | ||
masak | it could be argued that typing a slurpy arg should mean that, though. | ||
moritz | jnthn: doesn't work | ||
jnthn | moritz: why? | ||
moritz | because type checks don't autothread | ||
I mean, where clauses do work, but not that way | |||
jnthn | oh | ||
stefanZ | jnthn: hmm looks nice (the where clause) | ||
moritz | nom: say all("a", "b") ~~ Str | ||
p6eval | nom f365ad: OUTPUT«Bool::False» | ||
jnthn | nom: say ("a", "b") >>~~>> Str | 10:13 | |
p6eval | nom f365ad: OUTPUT«True True» | ||
jnthn | nom: say all(("a", "b") >>~~>> Str) | ||
p6eval | nom f365ad: OUTPUT«all(Bool::True, Bool::True)» | ||
jnthn | That works. | ||
moritz | nom: say [&&] ("a", "b") >>~~>> Str | ||
p6eval | nom f365ad: OUTPUT«Bool::True» | ||
jnthn | And so does that. | ||
Though the all reads nicer. | |||
moritz | nom: say [&&] ("a", "b")>>.^isa(Str) | ||
p6eval | nom f365ad: OUTPUT«1» | ||
moritz | nom: say [&&] ("a", 0)>>.^isa(Str) | ||
p6eval | nom f365ad: OUTPUT«0» | 10:14 | |
jnthn | Also that. | ||
stefanZ | rakudo: sub test (*@args where all(@args) >>~~>> Str) { say @args[1] }; test('foo', 'bar'); | ||
p6eval | rakudo f365ad: OUTPUT«===SORRY!===Malformed block at line 1, near "(*@args wh"» | ||
moritz | might need a block around the where-clause | 10:15 | |
jnthn | yeah, probably does because precedence | 10:16 | |
bbi15 | |||
stefanZ | rakudo: sub test (*@args where (all(@args) >>~~>> Str)) { say @args[1] }; test('foo', 'bar'); | 10:17 | |
p6eval | rakudo f365ad: OUTPUT«bar» | ||
stefanZ | rakudo: sub test (*@args where (all(@args) >>~~>> Str)) { say @args[1] }; test('foo', 1); | ||
p6eval | rakudo f365ad: OUTPUT«Constraint type check failed for parameter '@args' in sub test at /tmp/wNluceGwuI:1 in block <anon> at /tmp/wNluceGwuI:1 in <anon> at /tmp/wNluceGwuI:1» | ||
stefanZ | seems to work. THX :D | 10:18 | |
moritz | stefanZ: though in practice it's often not necessary; you can use most types as strings | 10:19 | |
10:20
jupp left
|
|||
stefanZ | moritz: Str was just en example. maybe you need explicitly some other type | 10:21 | |
moritz | stefanZ: ok | ||
10:23
daxim left
|
|||
stefanZ | moritz: in fact i wanted to compile bioperl6. it uses some definitions of the form (..., *@args of TYPE) rakudo completely rejects this (maybe it worked in an earlier version) and i want to fix this | 10:23 | |
moritz | b: sub f(@args of Int) { @args.say }; f(2, 3) | 10:25 | |
p6eval | b 1b7dd1: OUTPUT«Nominal type check failed for parameter '@args'; expected Positional but got Int instead in 'f' at line 22:/tmp/a91u1eCorF in main program body at line 22:/tmp/a91u1eCorF» | ||
stefanZ | role Bio::Role::Range { our Bio::Role::Range method intersection ( RangeTest :$test = 'ignore', *@ranges of Bio::Role::Range) {}} | 10:27 | |
rakudo: role Bio::Role::Range { our Bio::Role::Range method intersection ( RangeTest :$test = 'ignore', *@ranges of Bio::Role::Range) {}} | |||
p6eval | rakudo f365ad: OUTPUT«===SORRY!===Invalid typename in parameter declaration at line 1, near " :$test = "» | ||
stefanZ | rakudo: role Bio::Role::Range { our Bio::Role::Range method intersection (*@ranges of Bio::Role::Range) {}} | 10:28 | |
p6eval | rakudo f365ad: OUTPUT«===SORRY!===No applicable candidates found to dispatch to for 'trait_mod:<of>'. Available candidates are::(Routine:D $target, Mu:U $type):(Mu:U $target, Mu:U $type)» | ||
stefanZ | thats the problem... | ||
masak | not sure we do 'of'... | ||
not sure we ever did. | |||
moritz | alpha: sub f(@args of Int) { @args.say }; f(2, 3) | 10:29 | |
p6eval | alpha : OUTPUT«Nominal type check failed for parameter '@args'; expected Positional but got Int insteadin Main (file src/gen_setting.pm, line 324)» | ||
moritz | looks like we didn't. | ||
if it works neither in alpha nor b nor nom... I wouldn't know where it ever worked | |||
stefanZ | but is this in principle some kind of correct perl6 syntax? | 10:30 | |
moritz | I think so, yes | 10:31 | |
stefanZ | hmm ok | ||
jnthn | Yeah, I didn't make "of" work yet | 10:34 | |
stefanZ | is there generally any perl6 impl which supports this yet? | 10:35 | |
moritz | niecza: sub f(@args of Int) { @args.say }; f(2, 3) | ||
p6eval | niecza v13-228-g54921c8: OUTPUT«===SORRY!===Unhandled trait of at /tmp/jXqPbzSKU_ line 1:------> sub f(@args of Int⏏) { @args.say }; f(2, 3)Unhandled exception: Check failed at /home/p6eval/niecza/boot/lib/CORE.setting line 919 (die @ 2)  a… | ||
moritz | stefanZ: no. | ||
stefanZ | so why does bioperl6 use this? strange... | 10:36 | |
o_O | |||
moritz | stefanZ: it might have never run | ||
stefanZ | :) | ||
jnthn is going to have NativeCall hacking session tomorrow :) | 10:37 | ||
moritz | jnthn: moritz.faui2k3.org/tmp/opts.patch is my attempt to fix -n and -p in nom, but when i run it with -n, it dies with "Could not locate compile-time value for symbol Parameter". Do you see anything obviously wrong with that patch? | ||
jnthn | moritz: Without looking I can guess it - you're calling create_parameter or create_signature somewhere, but it's from the TOP or comp_unit action method, after $*ST.pop_lexpad() was called on UNIT. | 10:38 | |
moritz: Thus the way to look up Parameter has vanished | 10:39 | ||
moritz: Basically, ETOOLATE :) | |||
moritz | hm. | ||
yes, that's from comp_unit | |||
jnthn knows about this one since tadzik++ ran into it when doing the default DOC INIT phaser | 10:40 | ||
moritz | is there a fix? | 10:41 | |
jnthn | moritz: See install_doc_phaser | 10:42 | |
moritz | uhm, that seems to work around it by emitting a runtime call to &pod2text | 10:44 | |
jnthn | moritz: no, no. Wrong sort of workaround :) | ||
moritz: See where it is called in Grammar.pm :) | |||
moritz | jnthn: oh, clever | 10:45 | |
jnthn | Yeah. Not sure if that trick works here, mind. | ||
moritz | well, worth a try | ||
jnthn | moritz: It's these two lines that are in your way, fwiw: | ||
$*W.pop_lexpad(); # UNIT | |||
$*W.pop_lexpad(); # UNIT_OUTER | |||
moritz: TBH, I don't think anything will explode terrifyingly if you move those calls to TOP. Heck, I doubt things to horribly wrong if you don't call them at all, but I'd rather do so. | 10:47 | ||
moritz tries | 10:48 | ||
10:48
panterax left
10:49
panterax joined
10:50
daxim joined
|
|||
jnthn gets distracted with $dayjob bits for a while | 10:50 | ||
10:58
daxim left
11:05
daxim joined
11:08
agentzh joined
11:18
bkolera joined
|
|||
masak uses ~<<$0 for the first time in code and finds it cute | 11:22 | ||
moritz | is that the same as $0>>.Str ? | 11:23 | |
arnsholt | What's that do? | ||
jnthn | More like $0>>.Stringy | 11:24 | |
arnsholt | Ah, right. Apply ~ to all elements in $0? | ||
masak | right. | ||
arnsholt | I've been programming too much AWK. $0 is the whole input record, damnit =p | ||
11:26
Alias joined
11:34
donri joined
11:40
JimmyZ joined
11:44
JimmyZ left
11:47
bluescreen10 joined
|
|||
masak | arnsholt: at least that's slightly less illogical than $0 being $*PROGRAM_NAME :) | 12:03 | |
_sri | shootout.alioth.debian.org/u64q/whi...astest.php # wonder how rakudo would look in that benchmark | 12:07 | |
arnsholt | masak: Yeah. AWK is really awesome for the kinds of things it's made for | 12:19 | |
12:28
koban left
|
|||
masak | nod. | 12:31 | |
12:40
Trashlord joined
|
|||
mathw | awk is one of those awesome special-purpose things that drives you nuts when you realise you're trying to do something it doesn't really handle | 12:45 | |
moritz | indeed | 12:46 | |
masak | sounds like Prolog, or regexes :) | ||
moritz | or junctions :-) | ||
12:47
spine_ joined
12:50
flairvelocity joined
|
|||
moritz | nqp: my %h; if %h<foo> { say('1') } | 12:50 | |
p6eval | nqp: ( no output ) | ||
flairvelocity | hello every one | 12:51 | |
moritz | hi flairvelocity | ||
flairvelocity | is the perl 6 is stable ? | ||
moritz | no | ||
flairvelocity | ok | 12:52 | |
moritz | but neither is C, Java or any other living programing language | ||
flairvelocity | i need help to install catalyst | ||
masak | hello flairvelocity | ||
moritz | flairvelocity: then I suggest you try a perl 5 or even catalyst channel | ||
flairvelocity: I guess irc.perl.org has a #catalyst channel | |||
flairvelocity | but i cant | ||
plz give me the chanel | 12:53 | ||
address | |||
masak | flairvelocity: #catalyst at the server irc.perl.org | ||
12:53
xinming left
|
|||
flairvelocity | next ? | 12:54 | |
www.irc.perl.org/channels.html | |||
i got this page | |||
masak | flairvelocity: I see you're using the web client to IRC on freenode. | 12:55 | |
flairvelocity: I don't know if irc.perl.org has a similar web client. | |||
flairvelocity | ok | ||
masak | you might need a real IRC client to get there. | ||
12:55
xinming joined
|
|||
flairvelocity | so what i have to use? | 12:55 | |
moritz | irssi -c irc.perl.org | ||
and then /join #catalyst | |||
flairvelocity | ok | 12:56 | |
12:56
Trashlord left
|
|||
flairvelocity | thanks | 12:56 | |
is their any web frame work made in perl6 ? | |||
moritz | yes, but not as mature as catalyst, mojolicious or dancer | 12:57 | |
flairvelocity | thats name ? | ||
moritz | bailador | ||
flairvelocity | i have documented a social web site | 12:58 | |
i want to build it in a secure framework | |||
? | |||
masak | was that a question? | 12:59 | |
yes, you probably do want to build it in a secure framework. | |||
flairvelocity | yes | ||
daxim | chat.mibbit.com/ can connect to any server | ||
masak | daxim++ | ||
flussence | .oO( maybe someone half-wrote an ircbot in `ed`? :) |
||
flairvelocity | so what i choose | ||
? | 13:00 | ||
daxim | whereever you go, people will recommend their local brand | 13:01 | |
moritz | I personally like mojolicio.us/ in perl 5. But we can't chose for you. You have to do that yourself. | ||
masak | flairvelocity: insufficient data. | ||
daxim | you should write out your requirements in detail | ||
moritz | ... but in a perl 5 channel :-) | ||
daxim | and I mean coherently, in a document, not in chat | ||
masak | aye. you'll thank yourself. | 13:02 | |
flairvelocity: when you enter a channel asking essentially "what is it that I want?", it's an indication that you need to sit down and figure out what it is you want. | |||
13:03
flairvelocity_ joined
|
|||
masak | flairvelocity_: now there's two of you :) | 13:03 | |
13:03
Trashlord joined
13:04
flairvelocity left
|
|||
flairvelocity_ | hello | 13:06 | |
sorry | |||
net problem | |||
masak | flairvelocity_: did you see my comment at irclog.perlgeek.de/perl6/2012-01-12#i_4973840 ? | ||
flairvelocity_ | no | 13:07 | |
yes] | 13:08 | ||
now i check | |||
sorry am littole confuse | |||
*little | |||
dalek | kudo/fix-n-p: 879983c | moritz++ | src/Perl6/ (2 files): first shot at fixing -n and -p options the code gen still dies, it seems to expect a PAST::Block when it gets a PAST::Stmts, but I fell it is moving in the right direction |
13:11 | |
flairvelocity_ | hello <mask> | 13:12 | |
13:12
xinming left
|
|||
masak | hi. | 13:12 | |
(and it's masak) | |||
flairvelocity_ | sorry | ||
masak | it's ok; you're a little confused ;) | ||
flairvelocity_ | so catalyst will be better? | ||
donri | flairvelocity_: most web frameworks are created because someone thought that design was a good idea. there'll usually be at least one person who likes any given framework. | ||
masak | flairvelocity_: it's not a one-dimensional worse-better scale. | ||
flairvelocity_ | ok | 13:13 | |
donri | it boils down to being up to your own preferences and needs | ||
13:13
bkolera left
|
|||
flairvelocity_ | cause i need surf on mobile tab & pc | 13:13 | |
so i need fast loading | |||
moritz | in most cases, it's not the web framework that turns out to be the bottleneck, but the database | 13:14 | |
donri | if you need performance, perl6 might not yet be for you | ||
flairvelocity_ | ok | 13:15 | |
donri | but yes, it's not simply about the framework/language | ||
also caching, ajax trickery etc | 13:16 | ||
moritz | being confused doesn't help making performant web apps either :-) | ||
flairvelocity_ | hmm | ||
right | |||
so what u suggestplz | 13:17 | ||
13:17
kaleem left
|
|||
moritz | flairvelocity_: I suggest you sit down with a piece of paper, get your head clear, and write down what you need | 13:17 | |
flairvelocity_: then you look at what various web frameworks offer, and compare that to what you need | |||
flairvelocity_ | ok | 13:18 | |
thanks | |||
donri | your question is sort of like asking "i want to get into music, what genres are good?" | ||
masak | donri++ | ||
flairvelocity_ | ha ha ha | ||
donri | i'll gladly tell you exactly what music is awesome, but you might not agree | ||
moritz | donri++ indeed | 13:19 | |
flairvelocity_ | hmm | ||
13:20
xinming joined,
skids left,
xinming left
|
|||
flairvelocity_ | thanks all | 13:20 | |
i should make map my need | 13:21 | ||
thanks masak | |||
moritz also | |||
thanks donri | 13:22 | ||
bye all | |||
see u | |||
donri | i suggest you simply go with something that you understand and that has good docs | ||
13:23
flairvelocity_ left
13:24
mj41 left
13:26
tokuhirom3 left,
xinming joined
|
|||
dalek | kudo/fix-n-p: e0f24b2 | moritz++ | src/Perl6/Actions.pm: avoid error while compiling -n. Still busted at runtime |
13:30 | |
13:32
tokuhirom3 joined,
mj41 joined
|
|||
moritz | the problem is now that it doesn't create Perl 6 Code object | 13:32 | |
so now I get | |||
Unmarshallable foreign language value passed for parameter '$block' in method map at src/gen/CORE.setting:1063 | |||
13:33
xinming left,
tokuhirom joined
|
|||
[Coke] | gist.github.com/1476841 - # 01/12/2012 - niecza at 98.32% | 13:33 | |
b: say 18590*.99-18279, 18590-18279 # for colomon | 13:34 | ||
p6eval | b 1b7dd1: OUTPUT«125.1311» | ||
[Coke] | b: say 18590*.99-18279,",",18590-18279 # for colomon | ||
p6eval | b 1b7dd1: OUTPUT«125.1,311» | ||
jnthn | moritz: Maybe use make_topic_block_ref or some such | ||
[Coke] | jnthn, moritz: gist.github.com/1476841 shows 47 failures in spectest for rakudo, up from 29 yesterday. | 13:35 | |
13:35
xinming joined
|
|||
jnthn | [Coke]: Do you have a list of what they are? | 13:36 | |
[Coke]: Also, is there a "tests Niecza passes that Rakudo does not"? | |||
jnthn would be curious to see that | |||
[Coke] | jnthn: nope. at this point, I'm just running t/spec/test_summary and grabbing the total lines. | ||
I could pretty easily expand the list to include per-synopsis breakdowns. | 13:37 | ||
moritz | ah, one file seems to be new grammar tests | ||
added by colomon++ | |||
so no rakudo regression, just needs fudging | |||
[Coke] | feather.perl6.nl/~coke/rakudo_summary.out | ||
moritz | t/spec/S14-roles/submethods.t seems to be a genuine new failure | 13:38 | |
13:40
xinming left,
xinming joined
|
|||
dalek | ast: d740641 | coke++ | test_summary: Get stats on S24 |
13:42 | |
jnthn | S02-lexical-conventions/unspace.rakudo | 13:45 | |
29 skipped: defining new operators | |||
hm, we can define new ops now | |||
[Coke] | I haven't done a full unfudge on rakudo in a while. | 13:46 | |
(last time I tried, got hung on one of the IO tests.) | |||
I can definitely try to unfudge that one. | |||
moritz | won't help | ||
colomon | moritz: ack, I'm sorry, I figured Rakudo would probably pass those tests | ||
moritz | colomon: I thought so too; but it seems it has problems with regex methods named 'any' :( | 13:47 | |
[Coke]: that is one huge block, and if one of the tests fail, the whole block won't be unfudged | |||
13:49
xinming left
|
|||
moritz | std: 1+\ +3 | 13:49 | |
p6eval | std dc62e1d: OUTPUT«ok 00:01 109m» | ||
[Coke] | moritz: I can unfudge most of it. momentito. | 13:53 | |
moritz | [Coke]: I'm doing the unfudge by hand now | 13:54 | |
[Coke] | As am I. :P | ||
moritz | :/ | 13:55 | |
jnthn | The race is on! :P | ||
[Coke] | (actually, I converted it to a form that autounfudge CAN fix, and am waiting for it to finish. ;) | ||
13:56
xinming joined
|
|||
moritz | [Coke]: then I'm feeling free to push, because I've actually thought about the reasons why stuff fails, and put it into the fudge messages :-) | 13:56 | |
dalek | ast: 4423b3e | moritz++ | S02-lexical-conventions/unspace.t: refudge unspace |
13:57 | |
masak is reading www.mat.unb.br/clausahm/area/AnAlg-...dmonds.pdf and liking it very much so far | 14:05 | ||
maybe we should resurrect the old Pugs tradition of keeping a READTHEM list up-to-date somewhere? | |||
moritz | +1 | 14:07 | |
colomon | +1 | ||
moritz | we can simply continue the one in the Mu repo | ||
14:07
benabik left
14:09
xinming left
|
|||
masak | wfm | 14:10 | |
masak starts the new tradition by adding his link | |||
umph! big repo, this Mu. :) | 14:12 | ||
14:13
molaf joined
|
|||
moritz has worked hard to reduce the size of the checkout | 14:14 | ||
14:14
xinming joined
14:16
sayu joined
14:21
mtk joined
14:22
pomysl joined,
pomysl left,
pomysl joined,
phenny joined
|
|||
flussence | argh. trying to track down a bug at $dayjob and I just realised `perl -Mre=debug` needs -DDEBUGGING... which perlbrew doesn't set by default :( | 14:23 | |
dalek | : b056eef | masak++ | READTHEM: [READTHEM] s/Pugs/Perl 6/g Feels appropriate if we're resurrecting it. There are many more Perl 6 hackers around than Pugs hackers. |
||
14:24
sivoais left
|
|||
dalek | : cd62281 | masak++ | READTHEM: [READTHEM] added three new references All of them free and online. |
14:28 | |
14:28
sivoais joined
|
|||
PerlJam | That "Let's build a compiler" one is what I used to write my very first compiler in 1988 or 1989 | 14:29 | |
(excpet I used C instead of Pascal) | |||
moritz followed it roughly in perl | 14:30 | ||
ok, I cheated. I used regexes for the lexer | |||
masak | nuaghty naughty :) | ||
PerlJam | I didn't know regex then, so no cheating for me! | ||
masak | people feel free to give READTHEM more love in various forms. | 14:31 | |
14:31
agentzh left
|
|||
masak | I bet it could use a post-golden-age structural refactor, too. | 14:31 | |
and I'm sure people have more references to good literature :) | |||
dalek | kudo/fix-n-p: 26f0b39 | moritz++ | src/Perl6/Actions.pm: restore basic -n and -p functionality. jnthn++ |
14:35 | |
: bd782a3 | duff++ | READTHEM: link to the full tutorial rather than just part 1 |
14:36 | ||
moritz | ok, what's missing now is the "is copy" part | ||
jnthn | moritz: context? | 14:37 | |
moritz: oh...the -n/-p thing? | |||
moritz | jnthn: my last patch to fix-n-p branch | ||
right | |||
jnthn | my $param := hash( :variable_name('$_'), :nominal_type($*W.find_symbol(['Mu'])), :is_parcel(1) ); | ||
moritz: you need to add a flag so that can do :is_copy(1) rather than :is_parcel(1) | 14:38 | ||
14:38
Trashlord left
|
|||
moritz | jnthn: seems like, yes | 14:39 | |
14:50
PacoAir joined
14:52
PacoAir_ joined,
PacoAir left
14:53
PacoAir_ is now known as PacoAir
14:58
kcwu left,
kcwu joined
14:59
benabik joined
15:00
sivoais left
15:01
sivoais joined
15:04
xinming_ joined
|
|||
dalek | kudo/fix-n-p: 4f3e5fc | moritz++ | src/Perl6/ (2 files): try to make the $_ for -n and -p "is copy" does not seem to work :( |
15:05 | |
15:08
xinming left
|
|||
colomon | does anyone have an idea what the packages/Test.pm file in roast is for? It seems to be interfering with use of the "normal" Test.pm in some cases in Niecza... | 15:11 | |
15:11
xinming_ left,
xinming joined,
Alias left
|
|||
moritz | colomon: t/spec/S06-currying/mixed.t seems to use it... | 15:12 | |
15:12
Trashlord joined
|
|||
colomon | and S10-packages/scope.t | 15:13 | |
moritz | colomon: but I have no objections to killing it with fire anyway | ||
colomon | why don't I rename it with fire | ||
moritz | or that, yes :-) | ||
colomon | packages::PackageTest ? | ||
jnthn | Because "mv" will also rename it, without risk of burns? ;) | ||
moritz | though I'd do the renaming with 'git mv', not fire | ||
benabik | alias fire='git mv' | ||
colomon | git has a mv? | 15:14 | |
I thought it just automatically detected that stuff | |||
moritz | colomon: yes :-) | ||
it does both | |||
benabik | It doesn't store the move. | ||
moritz | you can git mv a b | ||
mv a b | |||
git rm a | |||
git add b | |||
but 'git mv' is a bit shorter :-) | |||
colomon | moritz++ | ||
okay, I'm on it | |||
15:17
snearch joined
|
|||
dalek | ast: 46de3cf | (Solomon Foster)++ | / (3 files): Rename packages/Test.pm to packages/PackageTest.pm. |
15:17 | |
colomon | blast, that doesn't seem to have actually gotten rid of Test.pm. | 15:20 | |
moritz | git rm packages/Test.pm | 15:21 | |
colomon | It's gone locally | 15:22 | |
moritz | did you mv it without git mv? | ||
colomon | no, I used git mv | ||
dalek | ast: 4595f32 | moritz++ | packages/Test.pm: RIP packages/Test.pm |
||
colomon | moritz=+ | 15:23 | |
moritz++ | |||
15:26
wtw left
15:32
xinming left
15:35
thou joined
15:37
benabik left
15:38
xinming joined
15:40
GlitchMr joined,
pnu left
15:43
pnu joined
15:48
GlitchMr42 joined
15:49
tokuhirom left
15:50
tokuhirom joined
15:51
GlitchMr left
15:54
tokuhirom left
15:57
kaleem joined
|
|||
[Coke] | if I have a signature that is defined as (Int:D $foo), and I want $foo to not only be defined, but also allow a WhateverCode argument, what is the correct signature for that? or do I need a multi? | 15:58 | |
also, given a sig of Int:D foo? , how do you know if foo was passed? Is this another case where you need a multi? | 16:00 | ||
er, Int:D $foo? | |||
PerlJam | er, $foo is required there, so I'm not sure what you mean by knowing if it was passed. | 16:01 | |
oh | |||
PerlJam is slow | |||
16:02
pomysl left
16:03
pomysl joined,
pomysl left,
pomysl joined
|
|||
[Coke] | nom: sub foo (Int:D $foo?) {}; foo(); | 16:06 | |
p6eval | nom f365ad: OUTPUT«Parameter '$foo' requires an instance, but a type object was passed in sub foo at /tmp/eVeJ4TzuX9:1 in block <anon> at /tmp/eVeJ4TzuX9:1 in <anon> at /tmp/eVeJ4TzuX9:1» | ||
PerlJam | An error seems good though the message is LTA | 16:07 | |
[Coke] | nom: splice((1,2,3)) | ||
p6eval | nom f365ad: OUTPUT«Method 'splice' not found for invocant of class 'Parcel' in sub splice at src/gen/CORE.setting:4945 in block <anon> at /tmp/jj8ahqkI6s:1 in <anon> at /tmp/jj8ahqkI6s:1» | ||
16:07
Trashlord left,
GlitchMr42 is now known as GlitchMr
|
|||
[Coke] | nom: @a=1,2,3; splice(@a); say @a; | 16:07 | |
p6eval | nom f365ad: OUTPUT«===SORRY!===Variable @a is not predeclared at line 1, near "=1,2,3; sp"» | ||
[Coke] | nom: my @a=1,2,3; splice(@a); say @a; | ||
p6eval | nom f365ad: OUTPUT«» | ||
moritz | [Coke]: you need either a separate multi, or a broader type constraint | ||
($foo where Int:D | WhateverCode) | 16:08 | ||
[Coke] | nom: my @a=1,2,3; splice(@a,-2,Any(),<d e f>); say @a; | ||
p6eval | nom f365ad: OUTPUT«===SORRY!===CHECK FAILED:Undefined routine '&Any' called (line 1)» | ||
[Coke] | nom: my @a=1,2,3; splice(@a,-2,,<d e f>); say @a; | ||
p6eval | nom f365ad: OUTPUT«===SORRY!===Preceding context expects a term, but found infix , instead at line 1, near "<d e f>); "» | ||
[Coke] | nom: my @a=1,2,3; splice(@a,-2,-3,<d e f>); say @a; | ||
p6eval | nom f365ad: OUTPUT«1 d e f 1 2 3» | ||
[Coke] | nom: my @a=1,2,3; splice(@a,*-3,*-3,<d e f>); say @a; | ||
PerlJam | If $foo must be declartionally defined, then it can't be optional IMHO without a default value. | ||
p6eval | nom f365ad: OUTPUT«No applicable candidates found to dispatch to for 'Real'. Available candidates are::(\$v, Mu *%_) in method Real at src/gen/CORE.setting:654 in sub infix:<<> at src/gen/CORE.setting:2248 in method splice at src/gen/CORE.setting:4773 in sub splice at src/gen/… | ||
[Coke] | nom: sub f($foo = 0 where Int:D|WhateverCode) {say $foo;say $foo.WHAT}; foo(*-3); foo(); foo(3) | 16:11 | |
p6eval | nom f365ad: OUTPUT«===SORRY!===Malformed block at line 1, near "($foo = 0 "» | ||
[Coke] | nom: sub f($foo where Int:D|WhateverCode) {say $foo;say $foo.WHAT}; foo(*-3); foo(3); # foo() | 16:12 | |
p6eval | nom f365ad: OUTPUT«===SORRY!===CHECK FAILED:Undefined routine '&Int:D' called (line 1)Undefined routine '&foo' called (lines 1, 1)» | ||
[Coke] | moritz: would you expect that to work? | ||
PerlJam | std: sub f($foo where Int:D|WhateverCode) { } | ||
p6eval | std dc62e1d: OUTPUT«Potential difficulties: $foo is declared but not used at /tmp/zcj7zhtn4N line 1:------> sub f(⏏$foo where Int:D|WhateverCode) { }ok 00:01 111m» | ||
PerlJam | std does :) | 16:13 | |
std: sub f($foo where Int:D|WhateverCode) {say $foo;say $foo.WHAT}; | |||
p6eval | std dc62e1d: OUTPUT«ok 00:01 112m» | ||
[Coke] | std: sub f($foo=0 where Int:D|WhateverCode) {say $foo}; | ||
p6eval | std dc62e1d: OUTPUT«===SORRY!===Default expression must come last at /tmp/o_7i_TueNC line 1:------> sub f($foo=0 ⏏where Int:D|WhateverCode) {say $foo};Unable to parse signature at /tmp/o_7i_TueNC line 1:------> sub f⏏($foo=0 where … | ||
[Coke] | std: sub f($foo where Int:D|WhateverCode =0) {say $foo}; | 16:14 | |
p6eval | std dc62e1d: OUTPUT«ok 00:01 112m» | ||
[Coke] | huh. | ||
[Coke] needs that for splice. ;) | |||
PerlJam | or just use a multi | 16:15 | |
masak | +1 | ||
[Coke] | should I put the multis in the spec declaration? | 16:16 | |
or should I put the "ideal" version in the spec? | |||
(problem with the multis is that they compound, since we need this for multiple args.) | 16:17 | ||
16:18
birdwindupbird left
|
|||
moritz | [Coke]: I'd just remove the type constraint in the specs | 16:18 | |
[Coke] | nom: sub f(Int:D|WhateverCode $foo =0) {say $foo}; | ||
p6eval | nom f365ad: OUTPUT«===SORRY!===Malformed block at line 1, near "(Int:D|Wha"» | ||
PerlJam | [Coke]: another option is to fix rakudo so that it groks Int:D in a where clause ;) | ||
[Coke] | PerlJam: above my pay grade atm. | 16:19 | |
moritz: right now, spec sez: | |||
our multi method splice( @array is rw: Int $offset = 0, Int $size?, *@values ) is export | |||
should it say instead: | |||
our multi method splice(@array is rw: $offset, $size? *@values) ? | 16:20 | ||
moritz | yes (but comma after $size?) | ||
[Coke] | and then just describe all the various restrictions in text? (seems like it would be better to describe them in signature, in general. | ||
moritz | oh, and without the 'our' | ||
[Coke] | moritz: whoops, yes. | ||
most of the things in that section have our. | |||
moritz | std: sub f(Int|Str $x) { } | ||
p6eval | std dc62e1d: OUTPUT«===SORRY!===Unable to parse signature at /tmp/z58XLZ6gty line 1:------> sub f⏏(Int|Str $x) { }Couldn't find final ')'; gave up at /tmp/z58XLZ6gty line 1:------> sub f(Int⏏|Str $x) { } expecting any of: … | 16:21 | |
moritz | [Coke]: and they are all wrong | ||
16:23
sayu left
|
|||
PerlJam | did type-junctions go away in favor of using where clauses? | 16:26 | |
[Coke] | should we be able to do something like splice(@a,*-3,*-3) to delete the third element from the end? | 16:28 | |
(and *-3,* for the last 3?) | |||
(er, modulo offbyone errors in my description) | 16:29 | ||
PerlJam | S32 says both offset and size can be WhateverCode, so that sounds right | 16:31 | |
16:33
kaleem left
16:37
LlamaRider joined
16:42
mj41 left
16:43
wolfman2000 left
|
|||
[Coke] | PerlJam: I'm in the middle of rewriting that bit, which is why I asked if it was desired. ;) | 16:44 | |
s/rewrite/cleanup/ | 16:45 | ||
LlamaRider | о/ #perl6 | ||
masak | yo LlamaRider | 16:47 | |
LlamaRider | i am looking for suggestions how to get rid of a segfault in Rakudo, that randomly appeared after I built the newest git revision | 16:49 | |
PerlJam | [Coke]: The only one that gives me pause is using a WC for the $size parameter. Given the current spec, I could splice based on position from either end of the array and a number of elements to remove, or a position from either end of the array and a position only relative to the end. That seems a little weird. If I know positions, they're likely to be from the 0 end of the array | ||
[Coke]: (of course, then I could do the subtraction myself, and the WC for $size becomes uselesS) | 16:50 | ||
[Coke]: so, the conservative thing would be (if you agree with me that it's weird) would be not use a WhateverCode for $size | 16:51 | ||
16:53
lrnperl6 joined
|
|||
masak | LlamaRider: if it's really random, perhaps the best advice is to stay off that revision. | 16:54 | |
LlamaRider | masak: but then I need to rewrite all Parcel zen slices I have (which is the reason i upgraded) | 16:55 | |
I was trying to find a segfault kernel and ship it over as a bug | |||
maybe I can try again now | 16:56 | ||
colomon | phenny: tell sorear Got rid of the false Test.pm from roast, Test::Util still causing trouble with the proto, I think. I'd appreciate it if you could take a look. (Off to lunch now.) | ||
phenny | colomon: I'll pass that on when sorear is around. | ||
jnthn | LlamaRider: If you use gdb to get a backtrace, this may (or may not) help find the segfault. | 16:57 | |
masak | LlamaRider: please do. we don't have much in the way of random segfaults anymore. | ||
jnthn | Yeah, especially after the last round of wb fixes I did. | ||
masak decommutes | 17:02 | ||
17:02
benabik joined,
kaleem joined
|
|||
[Coke] | jnthn: wb? | 17:03 | |
jnthn | welcome back? | ||
OH | |||
write barrier | |||
If you forget them, the GC may prematurely eat objects. | 17:04 | ||
benabik | And eating objects is bad, m'kay? | 17:05 | |
jnthn | Indeed. They're high in fat and have loads of carbs. | ||
Also, other code doesn't expect objects it has references to to get eaten. :) | |||
benabik | Only when they're premature. Gotta let the ripen first. | ||
[Coke] grumbles at jnthn for making him hungry so soon after lunch! | |||
so, the GC is all like, "Hey, you gonna finish that? OMNOMNOMNOM" | 17:06 | ||
tadzik | that reminds me of one of the garfields | ||
jnthn | Pretty much | ||
17:07
PacoAir left
|
|||
jnthn | (For those who want a technical explanation rather than a lolspeak one: a generational GC doesn't walk the entire heap looking for objects, it just looks in the nursery generation most times it is called. This means that objects outside of the nursery that come to point to objects within it pose a problem. The write barrier makes sure that such old gen -> nursery pointes get written into a remembered set, so we know not to prematurely swallow the object.) | 17:08 | |
17:09
GlitchMr42 joined
17:10
GlitchMr left,
GlitchMr42 is now known as GlitchMr,
PacoAir joined
17:12
simcop2387 left
17:14
simcop2387 joined
17:15
JimmyZ joined
17:20
mj41 joined
17:21
thou left
17:22
thou joined
17:26
rsimoes joined
17:28
kaleem left
|
|||
LlamaRider | *phew* found what causes the segfault | 17:31 | |
constructing a minimal example now | |||
benabik | LlamaRider++ | 17:33 | |
[Coke] | \o/ | ||
[Coke] ponders XPath in P6. | 17:35 | ||
LlamaRider | ok, so, I can't make p6eval segfault, since it has some restrictions set | 17:41 | |
but this segfaults locally for me: | |||
sub MAIN(Int $n) { my $a=1; say $a.clone for (1..$n); }; MAIN(5000); | |||
if it doesn't for you, just pump up the argument for MAIN and it should. Alternatively, something is messed up on my local config. | |||
17:42
spine_ left
|
|||
LlamaRider | (and it's rakudo, just to be clear) | 17:42 | |
17:43
packetknife joined
|
|||
[Coke] | dies here also. | 17:43 | |
LlamaRider | \o/ | ||
great, then success on localizing it :) | |||
benabik | malloc: pointer being freed was not allocated. | ||
jnthn | And here. | ||
moritz | LlamaRider++ # finding bugs | 17:44 | |
benabik | in mp_clear() in bn_mp_clear.c:32 | ||
jnthn | benabik: My debugger has it to the same place. | 17:45 | |
benabik | Of course, that's not the _source_ of the problem, just the symptom. :-/ | ||
17:46
alester joined
|
|||
jnthn | Ah, I see what's wrong. | 17:47 | |
LlamaRider++ | |||
Will fix it this evening. | |||
LlamaRider | yey! I will keep my t2 untouched then :-) | 17:48 | |
[Coke] | jnthn++ | ||
LlamaRider | if it is of any help, it was introduced somewhere between Dec 27 and several days back | 17:49 | |
since everything was working prior to my git pull then | |||
jnthn | LlamaRider: I think we were just getting lucky before, actually. | ||
LlamaRider | oh. well, best of luck in any case! | ||
benabik | GC bugs are often exposed by changes in unrelated sections of code. | ||
jnthn | LlamaRider: It's a bug in cloning, and we've had it since probably November-ish. | 17:50 | |
But memory corruption bugs are somewhat probabalistic. | |||
LlamaRider | yeah, it was very weird to localize | 17:51 | |
the less code there was, the bigger of an input parameter it needed to segfault | 17:52 | ||
benabik | LlamaRider: The smaller the code, the less memory pressure. | ||
jnthn | LlamaRider: That's quite normal with these kinds of issues. | ||
17:53
kaare_ joined,
jakky left
|
|||
LlamaRider | Understood. I'm quite new to hunting segfaults :) | 17:53 | |
17:54
jakky joined
18:01
Trashlord joined
18:16
leprevost left,
sayu joined
18:18
spine joined
18:19
daxim left,
GlitchMr42 joined
18:20
lrnperl6 left
18:22
GlitchMr left,
GlitchMr42 left
18:23
Chillance joined,
overrosy joined
18:25
dakkar left
18:26
molaf left
18:35
kaleem joined
18:40
kaleem left
18:44
JimmyZ left
18:47
bluescreen10 left,
rml joined
|
|||
TimToady has been hunting segfaults since before they were called that... | 18:47 | ||
UNIBUS TIMEOUT FATAL TRAP | |||
PROGRAM LOST--SORRY | |||
18:50
jakky left
|
|||
jnthn | At least it yelled SORRY ;) | 18:50 | |
TimToady | it yelled everything back then... | ||
18:50
jakky joined
18:51
stefanZ left
18:54
bluescreen10 joined
|
|||
[Coke] | .u sorry | 18:58 | |
phenny | [Coke]: Sorry, no results for 'sorry'. | ||
18:59
sivoais left
19:02
bluescreen100 joined
19:07
mj41 left
19:08
sivoais joined
|
|||
colomon wonders if Perl 6s should always yell SORRY after error messages... | 19:10 | ||
19:11
sudokode joined
|
|||
jnthn | We well it before, so it doesn't seem like an afterthought. :) | 19:11 | |
masak | LlamaRider++ # so happy seeing you report problems with Rakudo | 19:14 | |
19:15
sayu left
|
|||
jnthn | Yeah. It sucks when Rakudo doesn't have problems. | 19:15 | |
:P | |||
19:15
djanatyn left
|
|||
jnthn has dinner, then he'll have some time to eliminate a couple more of Rakudo's problems :) | 19:16 | ||
19:17
djanatyn joined
19:21
GlitchMr joined
19:24
Trashlord left
|
|||
colomon | jnthn: they're not problems, they're opportunities! ;) | 19:32 | |
[Coke] | colomon: speaking of which, irclog.perlgeek.de/perl6/2012-01-12#i_4973955 ! | 19:35 | |
sooo close. ;) | |||
colomon | oh, I know, I saw that when you posted it | 19:39 | |
If sorear++ can figure out how to get Test::Utils working in niecza, we'll blow right by that number in a matter of hours. | 19:40 | ||
meanwhile, I'm working on month end / quarter end / year end taxes for $work | |||
spine | masak: I dont agrre with the line is run(3), "1-2-3-2\n"; in t5-base-test | 19:51 | |
my program generates 1-2-1-3 | |||
that's correct too, right? | |||
t5-base-test of the coding contest of course | 19:52 | ||
masak | right. | 19:54 | |
feel free to change or ignore the test. | |||
it did not occur to me at the time that that was an alternative representation, but of course it is :) | 19:55 | ||
dalek | ast: 44388f7 | (Solomon Foster)++ | S05-modifier/sigspace.t: Fudge for niecza. |
||
masak is thrilled that people are working on the tasks | |||
spine | masak: ok thanks, so only task 4 left for me :) | 19:56 | |
masak | should be easy :P | ||
[Coke] | crap, I've only done t1 | 19:57 | |
spine | seemed to be the hardest one, but haven't given it much thought yet :) | ||
tadzik | crap, I haven't started yet :/ | ||
masak | oh noes, tadzik! | ||
tadzik | I wonder if I'll get some tuits before the exam session ends | ||
which is half of February in the worst case | 19:58 | ||
and the first week of February in the best case | |||
masak | tadzik: I have strong indications that starting is strongly correlated with winning... | ||
contest ends by the end of January. | |||
tadzik | oh! | ||
dang | |||
I'll have to allocate time sooner then | 19:59 | ||
masak | one really would expect the contestants to keep track of the only two dates that matter :P | ||
dalek | ecza: 50a1d80 | (Solomon Foster)++ | t/spectest.data: Turn on S05-modifier/sigspace.t. |
||
19:59
_RobiX_ joined
|
|||
[Coke] | masak: I'm waiting for a Chopped style game to take the dates seriously! :P | 19:59 | |
tadzik | well, the C++ project comes first, sadly | 20:00 | |
20:00
Trashlord joined,
_RobiX_ left
|
|||
masak | tadzik: well, at least read through the task descriptions before you go to bed or something. :) | 20:01 | |
tadzik | :) Will do | ||
after I finish my PL/SQL | |||
should have some time for that tomorrow afternoon | |||
masak | \o/ | ||
tadzik | then I'll just go everywhere with my notebook and think | ||
masak | excellent. | ||
colomon | don't do that! I did it, and I kept on waking up and 4 am and not being able to sleep because I had half-done problem solutions in my head! | ||
masak | *lol* | 20:02 | |
colomon | seriously | ||
20:02
LlamaRider left
|
|||
masak | colomon: that's how I feel the weeks *before* launching p6cc... | 20:02 | |
dalek | ast: e14fe6a | (Solomon Foster)++ | S12-attributes/recursive.t: Fix dodgy test. Fudge for niecza. |
20:10 | |
ecza: e217a39 | (Solomon Foster)++ | t/spectest.data: Turn on S12-attributes/recursive.t. |
|||
20:13
cognominal left,
ggoebel left
|
|||
dalek | ast: 63cff50 | (Solomon Foster)++ | S12-construction/construction.t: Fudge for niecza. |
20:14 | |
ecza: 405ed78 | (Solomon Foster)++ | t/spectest.data: Turn on S12-construction/construction.t. |
20:15 | ||
20:18
ggoebel joined
20:19
az5112 joined
20:23
overrosy left
20:24
ggoebel left
20:25
overrosy joined
20:31
slavik joined
|
|||
dalek | ast: 05846cc | (Solomon Foster)++ | integration/99problems-61-to-70.t: Change Mu to Any throughout, to make the tests work with modern Perl 6. |
20:31 | |
20:32
overrosy left
|
|||
dalek | ecza: 96f741a | (Solomon Foster)++ | t/spectest.data: Turn on integration/99problems-61-to-70.t. |
20:32 | |
20:34
overrosy joined
|
|||
[Coke] | yowza. | 20:37 | |
masak | yowza? | 20:38 | |
[Coke] | colomon++ | ||
dalek | ast: a1e656f | (Solomon Foster)++ | S02-magicals/dollar_bang.t: Fudge for niecza. |
20:39 | |
colomon | I can stop fudging any time.... | ||
20:39
ksi joined
|
|||
GlitchMr | perl6: my Num $a = 1; print $a; | 20:39 | |
p6eval | pugs b927740: OUTPUT«1» | ||
..niecza v13-228-g54921c8: OUTPUT«Unhandled exception: Nominal type check failed for scalar store; got Int, needed Num or subtype at /tmp/XQwMvKIUov line 0 (mainline @ 1)  at /home/p6eval/niecza/lib/CORE.setting line 2988 (ANON @ 3)  at /home/p6eval/niecza/lib/CORE.setting line 2989… | |||
..rakudo f365ad: OUTPUT«Type check failed in assignment to '$a'; expected 'Num' but got 'Int' in block <anon> at /tmp/rIFAtaUF93:1 in <anon> at /tmp/rIFAtaUF93:1» | |||
GlitchMr | What's wrong with this code? | 20:40 | |
colomon | 1 isn't a Num | ||
GlitchMr | But it can be represented as Num... | ||
colomon | perl6: my Num $a = 1.Num; print $a; | ||
p6eval | pugs b927740: OUTPUT«*** No such method in class Int: "&Num" at /tmp/B233ScL7yt line 1, column 8-18» | 20:41 | |
..rakudo f365ad, niecza v13-228-g54921c8: OUTPUT«1» | |||
GlitchMr | Oh, I see... | ||
It makes sense | |||
dalek | ecza: 9111898 | (Solomon Foster)++ | t/spectest.data: Turn on S02-magicals/dollar_bang.t. |
||
GlitchMr | I was trying to do "Num 1" | ||
And "(Num) 1"... yeah... | |||
colomon | you might mean | ||
perl6: my Real $a = 1; print $a | |||
masak | GlitchMr: if you give your variable a type, you have to store things of that type in it... :) | ||
p6eval | pugs b927740, rakudo f365ad, niecza v13-228-g54921c8: OUTPUT«1» | ||
GlitchMr | Thanks :). | 20:42 | |
I wanted to have generic number container which wouldn't accept strings :). | |||
colomon | Real being the generic number role. | ||
you could also use Numeric instead of Real, if you want to allow, say, Complex numbers | |||
GlitchMr | Nominal type check failed for scalar store; got Int, needed Complex or subtype | 20:43 | |
:( | |||
But I can understand it | |||
I don't care about "Complex". It usually just breaks calculations... | 20:44 | ||
colomon | then Real should be just the thing | ||
GlitchMr | perl6: print i ** 1 | ||
p6eval | pugs b927740: OUTPUT«*** No such subroutine: "&i" at /tmp/MxxmmQaEIS line 1, column 7 - line 2, column 1» | ||
..rakudo f365ad: OUTPUT«===SORRY!===HyperWhatever (**) not yet implemented at line 1, near " 1"» | |||
..niecza v13-228-g54921c8: OUTPUT«6.1230317691118863E-17+1i» | |||
GlitchMr | 6.1230317691118863E-17+1i | ||
Is there something wrong with my logic? | |||
[Coke] | nom: say 1i**1; | ||
p6eval | nom f365ad: OUTPUT«6.12323399573677e-17 + 1i» | ||
GlitchMr | nom: print cos(pi/2) | 20:45 | |
p6eval | nom f365ad: OUTPUT«1.79489673696541e-09» | ||
20:45
am0c joined
|
|||
GlitchMr | answers.yahoo.com/question/index?qi...157AA9mq3U | 20:45 | |
... | |||
[Coke] | GlitchMr: the ** makes it a Real. 6.12e-17 is probably 0+epsilon. | 20:46 | |
GlitchMr | I'm already confused... | ||
[Coke] | what is your confusion? | ||
GlitchMr | 0+epsilon... | ||
[Coke] | e.g. which result seems wrong to you? | ||
GlitchMr | And that magical 6.12e-17 value.. | ||
masak | floats are fuzzy... | 20:47 | |
[Coke] | What number are you expecting? (I can guess, but being explicit helps) | ||
GlitchMr | I haven't expected anything | ||
[Coke] | ah, then everything's fine. Excellent. | 20:48 | |
GlitchMr | I rather expected just to see 1i because it's ** 1, but it's weird math... | ||
Everything they've learned me in school is wrong... | |||
[Coke] | nope. | 20:49 | |
GlitchMr | Perl 7 will probably requre 6GHz CPU :P. | 20:51 | |
With 10 cores... ;) | |||
And of course Netscape Navigator 4 installed in 419th sector of hard drive (of size 51TB) | 20:52 | ||
[Coke] needs a shorter summary version of docs.oracle.com/cd/E19957-01/806-35...dberg.html for cases like this. | |||
GlitchMr | I've already read this | 20:53 | |
Also 0.1 + 0.2 is around 0.30000000000000004... but not in Perl... | |||
But I think it works this way for example in JS or Python... | |||
I guess it's this same in Perl 5, but it makes rounding... | 20:54 | ||
az5112 | Hello, a question about arrays in Rakudo -- what is the underlying data structure for arrays? | 20:55 | |
Is it a list or some continuous memory chunk? | 20:56 | ||
When I splice the array and insert some elements in the middle, is this operation constant time or is Rakudo rewriting the complete array? | |||
jnthn | az5112: Underlying data structure is implementation specific. | ||
az5112: In Rakudo, an array has a reified part and a lazy part. | 20:57 | ||
I think splice reifies the required amount of the array...I think it then makes the thing being spliced in be mostly eager. | 20:58 | ||
masak .oO( your mind makes it a Real ) | 20:59 | ||
PerlJam | az5112: why do you ask anyway? | ||
az5112: are you noticing something that's slow and you want to make it faster? :) | |||
az5112 | PerlJam: I'm just a snoop :) | 21:00 | |
[Coke] | masak: *thwap* | ||
masak++: *thwap*, I mean. | |||
az5112 | I'm kind of looking at it from the C++ perspective. The C++ standard tells you that if you insert an element into such and such container, that operation is log n, or if you do sth else, than it's n, etc. | 21:02 | |
Hence I got curious about Perl6 arrays. | |||
(I'm coding one of the task for this new contest.) | |||
I could optimize one thing on condition that the cost of splicing is not proportional to the array length. | 21:04 | ||
masak | az5112: t2? :) | 21:06 | |
az5112 | masak: t3, you already got t2. | ||
masak | oh, right! | ||
you're splicing in t3? inneresting... | 21:07 | ||
az5112 | Oh well, I'll just code it and see whichever runs faster. | ||
masak | ;) | 21:09 | |
21:11
GlitchMr left
21:13
MayDaniel joined
21:19
MayDaniel left
21:23
ggoebel joined
|
|||
[Coke] | b: say 18590*.99-18331,",", 18590-18331 #niecza at 98.6% - | 21:25 | |
p6eval | b 1b7dd1: OUTPUT«73.1,259» | 21:26 | |
dalek | p: 08a079c | jnthn++ | src/6model/reprs/P6opaque.c: REPRS that flatten other REPRs into themselves should delegate to their copy_to. Fixes Int cloning issue found by llamarider++. |
21:28 | |
jnthn | ...I hope I remembered that nick correctly... :) | 21:29 | |
21:29
bluescreen10 left,
bluescreen100 left
|
|||
jnthn | ah yes. :) | 21:30 | |
phenny: tell LlamaRider the clone bug you found is fixed. Thanks! | |||
phenny | jnthn: I'll pass that on when LlamaRider is around. | ||
dalek | kudo/nom: 9a7dbbe | jnthn++ | tools/build/NQP_REVISION: Bump to latest NQP revision. |
||
colomon | aanyone out there think (@a Z @b) = (1, 2, 3, 4) makes sense? | 21:33 | |
flussence | @a = 1, 3; ? | 21:34 | |
[Coke] | using Z to generate an lvalue? ew. | ||
colomon | that's supposed to assign 1, 3 to @a and 2, 4 to @b, according to S32-container/zip.t | 21:35 | |
looks like TimToady may have had something to do with the test.... :( | |||
dalek | ast: 22d53ea | (Solomon Foster)++ | S32-container/zip.t: Try to clean up tests. Fudge for niecza. |
21:36 | |
PerlJam | colomon: so ... (@a Z=> @b) = (1 => 2, 3 => 4) would work too, right? | 21:37 | |
colomon | PerlJam: heavens, I hope not | 21:38 | |
dalek | ecza: ed2de8b | (Solomon Foster)++ | t/spectest.data: Turn on S32-container/zip.t. |
||
flussence | github.com/flussence/specgraphs/ra.../impls.png ! | ||
PerlJam | seems like there's a subset of us who agree that this is madness :) | ||
[Coke] | flussence: you're still counting skips! ;) | ||
niecza is skipping about 1500, rakudo about 2K. | 21:39 | ||
flussence | I started working on trying to fix that at some point, need to get back to it | ||
[Coke] | also. "SOON" | ||
(imagine niecza photobombing rakudo, with crazy eyes.) | 21:40 | ||
does look much niftier in the graph, though. flussence++ ! | |||
Anyone know Adriano Ferreira ? | 21:41 | ||
(did some articles back in '07/'08, don't see anything recent) | 21:42 | ||
masak | jnthn: what's so difficult to remember about the nick "LlamaRider"? it's not like he's riding an okapi, or a macaque, or a xenops, or a quokka, or a cookie-cutter shark. :P | 21:44 | |
just a simple llama. | |||
[Coke]: never heard of him. | 21:45 | ||
21:45
bacek left
|
|||
[Coke] | found him just now with an onlamp article on perl6's zip. | 21:46 | |
21:46
kaare_ left,
az5112 left
|
|||
jnthn | masak: Nothing especially difficult, I just typed it in the commit message and suddenly had a moment of "oh noes did I get it right" :) | 21:48 | |
21:52
x3nU joined
|
|||
masak .oO( what a llame excuse ) | 21:55 | ||
jnthn | :P | 21:56 | |
geekosaur | se llama ... | 21:57 | |
jnthn | *lol* | 21:58 | |
masak | phenny: "se llama"? | 21:59 | |
phenny | masak: "is called" (es to en, translate.google.com) | ||
masak | :P | ||
22:00
Trashlord left
22:09
ksi left
|
|||
dalek | kudo/nom: 248eb5d | jnthn++ | src/ (2 files): Implement trait form of 'is parcel'. |
22:13 | |
kudo/nom: 5df8b35 | jnthn++ | src/core/Parameter.pm: Start to fill out some missing bits in parameter introspection. |
|||
22:27
LlamaRider joined
22:33
cognominal joined
|
|||
sorear | good * #perl6 | 22:34 | |
phenny | sorear: 16:56Z <colomon> tell sorear Got rid of the false Test.pm from roast, Test::Util still causing trouble with the proto, I think. I'd appreciate it if you could take a look. (Off to lunch now.) | ||
colomon | o/ | ||
dalek | ast: 31dd22f | jnthn++ | S06-signature/introspection.t: Update signature introspection test for current spec, remove all but one Rakudo fudge. |
22:36 | |
kudo/nom: b5a5055 | jnthn++ | src/Perl6/ (2 files): Start to unbust signature literals. |
22:37 | ||
kudo/nom: 6342762 | jnthn++ | src/core/Parameter.pm: More work on parameter introspection; ensure sub-signatures are included in .perl output. |
|||
kudo/nom: 5ccf1ab | jnthn++ | t/spectest.data: Turn on S06-signature/introspection.t. |
|||
22:38
az5112 joined
|
|||
az5112 | Anybody had a success running binary version of Niecza on WinXP? I have ,NET Framework 4 but when I run\Niecza.exe it's telling me "Unable to find a version of the runtime to run this application". | 22:38 | |
LlamaRider | jnthn: rebuilt rakudo and my code is back to working well :) thanks a lot! jnthn++ | 22:45 | |
phenny | LlamaRider: 21:30Z <jnthn> tell LlamaRider the clone bug you found is fixed. Thanks! | ||
sorear | .u о | 22:47 | |
phenny | U+043E CYRILLIC SMALL LETTER O (о) | ||
sorear | [Coke]: Generally, I think splice should interpret its arguments in the same way as substr, which already has picked interpretations for WC. | ||
jnthn | LlamaRider: Great! :) | 22:48 | |
22:49
panterax left
22:51
benabik left
22:52
donri left
22:53
molaf joined
|
|||
sorear | jnthn: obligatory: irclog.perlgeek.de/perl6/2012-01-05#i_4936162 | 22:56 | |
jnthn | sorear: ? | 22:57 | |
There's not meant to be a write barrier in copy_to | |||
(And what I fixed today didn't add one.) | 22:58 | ||
But nice try. | |||
sorear | :) | ||
az5112: niecza is designed to require the .NET framework 2.0 or any later version | 22:59 | ||
az5112: can you persuade it to give you more details? | 23:00 | ||
23:01
colomon left
23:02
fsergot joined
23:06
alester left
|
|||
az5112 | sorear: How do I go about persuading it? | 23:07 | |
sorear | dunno. | 23:17 | |
at some point I need to procure a copy of Windows for myself so I can actually test this and write proper instructions | |||
23:19
sudokode left
23:21
localhost left
23:22
localhost joined
|
|||
masak | 'night, #perl6 | 23:25 | |
tadzik | o/ | 23:26 | |
jnthn | 'night, masak | 23:27 | |
sorear | jnthn: you might know a few things about debugging with the "real" .NET runtime... | 23:28 | |
23:28
spine left
|
|||
jnthn | sorear: I was pretty sure that the .Net 4 CLR is meant to be able to run .Net 2 compiled assemblies. | 23:31 | |
sorear: In fact, I'm pretty sure I've seen it happen. So I'm mostly confused about the error az5112 is seeing. | 23:32 | ||
23:33
whiteknight joined,
aber left
|
|||
sorear | jnthn: Do you have any comments on my tells? | 23:36 | |
sorear wonders what photobombing is | |||
jnthn | (my $.foo) yes, sane, there's no reason I didn't do that yet besides not getting around to it. | 23:38 | |
23:39
colomon joined
|
|||
az5112 | sorear: Actually I'm on a Linux box and running Windows XP on a virtual host. Maybe I'll try it on Linux then... | 23:39 | |
jnthn | (postcircumfix:<( )>) yes, it's meant to get a Capture. ruoso++ was quite insistent on that. :) But it fits with [...] giving a single arg for @a[1,2,3] which is a Parcel... | ||
And it's easy to use a subsig to unpack. | |||
Was too uncaffienated to answer them when I first saw 'em this morning. :-) Spent all night on a train... :) | 23:40 | ||
sorear | Getting the arguments directly would make it possible to use multis, and would be more efficient to boot | 23:41 | |
23:41
sudokode joined
|
|||
sorear | I can make either way work | 23:41 | |
jnthn | sorear: I remember having it the other way in Rakudo, being told I was doin' it rong and having to change it. :) | ||
I forget the details of the discussion now. | 23:42 | ||
dalek | ast: 69f1075 | (Solomon Foster)++ | S12-methods/syntax.t: Fudge for niecza. |
||
ecza: 64c0380 | (Solomon Foster)++ | t/spectest.data: Turn on S12-methods/syntax.t. |
23:43 | ||
sorear | jnthn: TimToady expects it to work the other way, as seen in his latest gist | ||
jnthn | grrr | 23:44 | |
s/expects/now expects/ :P | |||
Unless the latest gist was a thinko | 23:45 | ||
sorear | az5112: Oh yes. If you try mono and it doesn't work, I can be a lot more helpful. :) | 23:47 | |
23:47
snearch left
|
|||
colomon | perl6: say ~Int | 23:48 | |
p6eval | pugs b927740: OUTPUT«Int» | ||
..niecza v13-228-g54921c8: OUTPUT«Int()» | |||
..rakudo 5ccf1a: OUTPUT«use of uninitialized value of type Int in string context» | |||
[Coke] | sorear: photobomb: someone in the frame of the picture who wasn't intended to be there. google will show you a ton of examples. | ||
jnthn | rakudo++ | 23:49 | |
23:49
PacoAir left
|
|||
sorear | if one result is clearly better than another, we should have tests for it | 23:55 | |
although it may be useful to keep essential tests and quality-of-implementation tests in separate files | |||
now, what am I going to do today?... | 23:56 | ||
tadzik | Warning: execution completed with warning | 23:57 | |
Why, thank you, Oracle | |||
LlamaRider | I can contribute another such test ;) | 23:58 | |
perl6: our @a = (1,2); say @a; | |||
p6eval | rakudo 5ccf1a: OUTPUT«Method 'STORE' not found for invocant of class 'Any' in block <anon> at /tmp/jnw67VtuZ4:1 in <anon> at /tmp/jnw67VtuZ4:1» | ||
..niecza v13-228-g54921c8: OUTPUT«1 2» | |||
..pugs b927740: OUTPUT«12» | |||
LlamaRider | rakudo-- :)) | ||
jnthn | LlamaRider: That one's already ticketed though. | ||
LlamaRider | can someone point me to the bug tracker of rakudo? I don't want to start generating spam here. | ||
23:58
az5112 left
|
|||
TimToady | I wouldn't put too much weight on the latest gist, or anything else I say while I have the flu | 23:59 | |
jnthn | LlamaRider: Well, it's OK to mention here, just didn't want you to spend time ticketing something we already have one for :) | ||
TimToady | and I have no memory at all of wanting Z for an lvalue... | ||
sorear | rtrt.perl.org:443/rt3/Public/ |