Camelia, the Perl 6 bug

IRC log for #perl6, 2012-01-12

Perl 6 | Reference Documentation | Rakudo | Niecza | Specs

| Channels | #perl6 index | Today | | Search | Google Search | Plain-Text | summary

All times shown according to UTC.

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

| Channels | #perl6 index | Today | | Search | Google Search | Plain-Text | summary

Perl 6 | Reference Documentation | Rakudo | Niecza | Specs