Perl 6 - the future is here, just unevenly distributed

IRC log for #perl6, 2012-04-08

Perl 6 | Reference Documentation | Rakudo

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

All times shown according to UTC.

Time Nick Message
00:57 whiteknight joined #perl6
01:01 tokuhirom joined #perl6
01:01 kst joined #perl6
01:26 nif joined #perl6
01:27 lichtkind karma: jnthn
01:27 lichtkind dalek: karma
01:29 tokuhirom joined #perl6
01:31 tokuhiro_ joined #perl6
01:32 sorear karma jnthn
01:32 aloha jnthn has karma of 2584.
01:32 sorear lichtkind: dalek has *no* functions other than announcements
01:32 lichtkind thank you
01:32 lichtkind karma lichtkind
01:32 aloha lichtkind has karma of 10.
01:33 lichtkind karma Herbert Breunung
01:33 aloha Herbert Breunung has karma of 296.
01:33 pmichaud karma pmichaud
01:33 aloha pmichaud has karma of 1445.
01:33 sorear karma sorear
01:33 aloha sorear has karma of 2135.
01:33 sorear what.
01:33 pmichaud jnthn++ and sorear++
01:33 sorear oh
01:33 lichtkind cant believe that pm has less
01:33 pmichaud oh, I can.
01:33 sorear pmichaud's cancer situation coincides with the switch from purl to aloha
01:34 pmichaud (not for log readers: pmichaud doesn't have cancer, one of his close relatives does)
01:34 sorear pmichaud, are you p6-old enough to remember lambdabot? :>
01:34 pmichaud *note for log readers
01:34 lichtkind but i would not believe to have 300
01:34 pmichaud yes, I remember lambdabot.  I had issues with lambdabot, although not nearly as many as purl--
01:36 nif joined #perl6
01:38 nif joined #perl6
01:47 lichtkind good night all the brave knights
01:47 sorear good night lichtkind
01:47 lichtkind :)
02:20 orafu joined #perl6
02:35 thou joined #perl6
02:47 JimmyZ_ joined #perl6
02:52 JimmyZ__ joined #perl6
03:09 tokuhirom joined #perl6
03:28 kst joined #perl6
03:57 stevieb_ joined #perl6
04:19 PerlJam joined #perl6
04:21 birdwindupbird joined #perl6
04:23 vlixes joined #perl6
04:34 Util joined #perl6
04:44 nif --help
04:45 nif srry :( mistake
04:55 thou joined #perl6
05:12 libertyprime joined #perl6
05:17 moritz good morning
05:24 sorear o/
05:32 fgomez joined #perl6
05:57 kaare_ joined #perl6
05:59 birdwindupbird joined #perl6
05:59 stevieb_ joined #perl6
06:49 tadzik good morning #perl6
06:49 sorear good morning tadzik
07:07 moritz happy Easter everybody!
07:07 * moritz got a Kubb spel for Easter
07:07 sorear o/
07:26 moritz masak, tadzik: and we've got two more games by the makers of "Zoff im Zoo" :-)
07:59 stevieb_ joined #perl6
08:02 pmichaud good morning, #perl6
08:02 moritz good am, pm
08:02 moritz pmichaud: isn't it a bit early for you?
08:02 pmichaud well, late, yes.  I'm about to head to bed :)
08:03 moritz :-)
08:03 pmichaud I just sent off a message to p6c and to pkg-parrot-devel@debian that is likely to stir up some hornets, so thought I'd check in on the channel before heading off :)
08:04 pmichaud (about Rakudo and "1.0 release")
08:04 moritz oh, fun :-)
08:05 sorear what.
08:05 sorear Debian has a parrot packagers' list?
08:05 sorear how important does Debian think Parrot is?
08:06 moritz Debian has a packager's mailing list for almost every package that is maintained by m,more than one developer
08:07 sorear ah
08:07 pmichaud much of the discussion on parrot-dev, p6c, and other lists over the past couple of days has been because of difficulties in packaging Parrot + Rakudo for Debian.
08:07 sorear pmichaud: has travis-ci stopped posting to parrot-dev every ten minutes yet?>
08:08 moritz sorear: it has
08:08 pmichaud the early messages in the threads were very unflattering (and imo unfair) to Rakudo -- basically repeating the notions that the problems are all Rakudo's fault for not following Parrot APIs properly.
08:12 pmichaud (the quote was "pokes indiscriminantely into Parrot's internals"  (sigh) )
08:13 pmichaud anyway, comments, thoughts, refinements, criticisms of my post are welcomed.  I'm off to sleep
08:14 pmichaud bbl
08:14 moritz pmichaud++ # mail
08:15 tokuhirom joined #perl6
08:17 grondilu joined #perl6
08:17 grondilu Is there a formatter for Pod v6 yet?
08:18 moritz I'm pretty sure there's a HTML emitter somewhere
08:18 moritz and a plain text emitter is shipped with rakudo
08:18 moritz https://github.com/perl6/Pod-To-HTML/
08:19 sorear there is "grok"
08:19 sorear there is also Pod::PseudoPod::Latex, which is sort of a formatter
08:19 moritz Pseudopod and Pod6 aren't the same
08:19 sorear (PseudoPod is an O'Reilly specific book format, which has more in common with pod6 than pod5 but is not the same as either)
08:20 * grondilu runs find /usr/local/src/rakudo -name grok and finds nothing :/
08:21 grondilu oh indeed there is a lib/Pod/To/Text.  My bad
08:22 moritz r: enum A < b c d> is export;
08:22 p6eval rakudo 4373f0: OUTPUT«===SORRY!===␤Confused␤at /tmp/b84meTrQrp:1␤»
08:22 moritz r: enum A is export  < b c d>;
08:22 p6eval rakudo 4373f0:  ( no output )
08:24 grondilu Say I have a 'Foo' module in my @INC.  I want to name 'Foo' a package in an other, non-related module Bar.  The Bar module would also use the Foo module.  How do I call the "outer" Foo module instead of the local 'Foo' package?
08:24 grondilu you see what I mean?
08:25 moritz rakudo: class Foo { method who { 1 } }; class Bar { class Foo { mthod who { 2 } }; method lookup { say PROCESS::Foo.who } } ; Bar.lookup
08:25 p6eval rakudo 4373f0: OUTPUT«===SORRY!===␤CHECK FAILED:␤Undefined routine '&who' called (line 1)␤Undefined routine '&mthod' called (line 1)␤»
08:26 moritz rakudo: class Foo { method who { 1 } }; class Bar { class Foo { method who { 2 } }; method lookup { say PROCESS::Foo.who } } ; Bar.lookup
08:26 p6eval rakudo 4373f0: OUTPUT«Could not find symbol 'PROCESS::&Foo'␤  in method lookup at /tmp/_fAh0PwI8r:1␤  in block <anon> at /tmp/_fAh0PwI8r:1␤␤»
08:26 moritz rakudo: class Foo { method who { 1 } }; class Bar { class Foo { method who { 2 } }; method lookup { say GLOBAL::Foo.who } } ; Bar.lookup
08:26 p6eval rakudo 4373f0: OUTPUT«Could not find symbol 'GLOBAL::&Foo'␤  in method lookup at /tmp/Md_TgtmF3C:1␤  in block <anon> at /tmp/Md_TgtmF3C:1␤␤»
08:26 moritz rakudo: class Foo { method who { 1 } }; class Bar { class Foo { method who { 2 } }; method lookup { say GLOBAL.WHO<Foo>.who } } ; Bar.lookup
08:26 p6eval rakudo 4373f0: OUTPUT«1␤»
08:26 moritz grondilu: that works, though I admit it's ugly
08:27 moritz grondilu: you should be able to write OUTER::Foo, but that's NYI
08:27 grondilu Oh I didn't know about OUTER::.  It's fine, I can wait.
08:28 Psyche^ joined #perl6
08:29 sorear grondilu: App::grok on CPAN, iirc
08:30 * grondilu checks this out
08:40 grondilu Ok that will do.  Thanks.
09:00 NamelessTee joined #perl6
09:15 fsergot joined #perl6
09:15 fsergot hi o/
09:18 PacoAir joined #perl6
09:22 sorear o/
09:25 daxim joined #perl6
09:53 mucker joined #perl6
10:00 plutoid joined #perl6
10:15 jnthn mornin'
10:15 jnthn Happy Easter :)
10:15 jnthn nom: class Foo { }; say GLOBAL::Foo
10:15 p6eval rakudo 4373f0: OUTPUT«Could not find symbol 'GLOBAL::&Foo'␤  in block <anon> at /tmp/X4FY867xoU:1␤␤»
10:15 jnthn p6: class Foo { }; say GLOBAL::Foo
10:15 p6eval niecza v15-6-gefda208: OUTPUT«Foo()␤»
10:15 p6eval ..rakudo 4373f0: OUTPUT«Could not find symbol 'GLOBAL::&Foo'␤  in block <anon> at /tmp/W3aOmWp0Ih:1␤␤»
10:15 p6eval ..pugs: OUTPUT«*** No such subroutine: "&GLOBAL::Foo"␤    at /tmp/k6NJl3dmp2 line 1, column 20 - line 2, column 1␤»
10:15 * jnthn was sure that worked...
10:16 tadzik hello, happy easter to you as well :)
10:24 tokuhirom joined #perl6
10:27 plutoid joined #perl6
10:31 thelazydeveloper joined #perl6
10:39 spider-mario joined #perl6
10:48 arnsholt jnthn: Is there any documentation beyond comments and code on how 6model fits in with NQP/Parrot?
10:51 fgomez joined #perl6
10:54 tadzik are there any circumstances under which adding an additional 'use' statement would result in "Could not find symbol Bla&Bla"?
10:56 jnthn tadzik: Maybe a circumstance in which the import mechanism does the wrong thing...
10:57 tadzik jnthn: if I stick 'use Bailador' on topp of https://github.com/tadzik/Bailador/blob/master/lib/Bailador/Test.pm then it dies with Could not find symbol 'Bailador::&Request'
10:57 tadzik (in runtime)
10:58 tadzik ftr, both Bailador and Bailador::App use Bailador::Request
11:00 jnthn arnsholt: Depends what you mean exactly by "how it fits in". At a high level, not sure there's much...only some diagram I did a while back trying to show its place.
11:01 jnthn tadzik: Before or after the module declaration? Does it make a difference?
11:01 jnthn tadzik: Sounds like something is wrong there, though.
11:01 tadzik jnthn: always after
11:02 tadzik well, Bailador::App does it before
11:02 tadzik does not change anything when I move stuff before in Bailador.,pm
11:03 tadzik I'll figure out some test case
11:03 jnthn OK
11:05 libertyprime joined #perl6
11:08 tadzik jnthn: http://ge.tt/8hkzh2G/v/0
11:08 tadzik 6 files, I  know :)
11:15 brrt joined #perl6
11:27 birdwindupbird joined #perl6
11:32 jnthn tadzik: Thanks, will try and look at it soon.
11:34 tadzik thank you
11:39 plutoid joined #perl6
11:41 fsergot joined #perl6
11:51 arnsholt jnthn: Well, it'd probably help if I had a better idea as well =)
11:52 arnsholt But I figured one thing I could look into was making the CStruct repr support CArray/CPointer members
11:53 arnsholt I figure it'll require adding a branch to allocate space for a void* in the struct, and some kind of interaction with GC so that the child objects are marked when the parent is
11:53 jnthn arnsholt: And a diddle in the attribute handling too.
11:54 jnthn arnsholt: But yes, your analysis is correct.
11:54 jnthn arnsholt: You'll probably only need to change CStruct.[ch] to implement what you're after, I think.
11:55 jnthn So it's quite a contained change.
11:56 jnthn arnsholt: The thing that makes it a little trickier is that you have two cases.
11:56 jnthn 1) The case where the struct is returned
11:56 jnthn 2) The case where the struct is being built up by the user
11:57 jnthn In the first csae you'll have no object with the CPointer repr handy to use for attribute lookups.
11:57 jnthn In the second case, you will because they'll have assigned it.
11:59 jnthn Well, though there's a choice there too...you can always box the void* into the appropriate type with CPointer on demand, e.g. when it's looked up. Then you skip GC worries.
11:59 jnthn Maybe try it that way first.
12:11 arnsholt Hmm. Right
12:12 arnsholt I'll go for a walk and think about it and then look at the code a bit
12:47 whiteknight joined #perl6
12:56 plobsing joined #perl6
13:03 birdwindupbird joined #perl6
13:10 stevieb_ joined #perl6
13:12 lichtkind joined #perl6
13:17 lichtkind tell raiph the topics of tablets 2 can be made in the same wash :)
13:18 lichtkind phenny: tell raiph the topics of tablets 2 can be made in the same wash :)
13:18 phenny lichtkind: I'll pass that on when raiph is around.
13:27 Mowah joined #perl6
13:28 * arnsholt is starting to get some kind of overview of Reprs
13:38 Chillance joined #perl6
13:39 fsergot joined #perl6
13:59 spider-mario this fails with the latest rakudo but I can’t understand why:
13:59 spider-mario > sub id(Any ::T $x) returns T {$x}
13:59 spider-mario sub id(Any $x) { ... }
13:59 spider-mario > id 42
13:59 spider-mario Type check failed for return value
13:59 spider-mario is it a problem
13:59 spider-mario with my code or a bug in rakudo?
13:59 spider-mario (sorry for the split between “problem” and “with”, it was accidental)
14:00 spider-mario (I hate it when it happens :()
14:01 arnsholt Premature carriage return syndrome =)
14:08 mucker joined #perl6
14:09 IngisKahn joined #perl6
14:15 felher If i have a class 'Date' in some package 'X::Y' and i do 'use X::Y::Date;', does X::Y::Date get used when i write 'Date.new()', or is the 'normal' Date used?
14:18 IngisKahn left #perl6
14:21 felher Hmm... nom seems to use the standard Date.
14:27 Trashlord joined #perl6
14:39 IngisKahn joined #perl6
14:44 jnthn arnsholt: a repr just implements a way of allocating, accessing and managing memory. It's orthogonal to the notion of type. That's about it. :)
14:44 jnthn spider-mario: That generic return thing does indeed look like a bug.
14:45 IngisKahn joined #perl6
14:45 jnthn spider-mario: Well, most likely just a NYI case. But anyway, please do file a ticket.
14:45 PZt joined #perl6
14:46 arnsholt jnthn: Yeah. Also, the *_initialize functions at the end of the files were useful indicators of what functionality a repr exposes and how
14:47 arnsholt Right now I'm fiddling a bit with getting a simple test file going
14:47 IngisKahn joined #perl6
14:48 felher Oh, no, nom doesn't is just did not import it properly :)
14:49 felher s/t is/t. I/
14:57 nif joined #perl6
15:03 spider-mario I’ve just sent the report
15:03 spider-mario not sure if it matches the expected format
15:04 spider-mario woah, my bug number is pretty. :D
15:04 spider-mario #112344
15:04 jnthn spider-mario: Nice
15:04 jnthn spider-mario: Well, bug reports should always be: what I did, what happened, what I expected to happen. :)
15:05 spider-mario hm, I think I forgot the “what I expected to happen” part
15:05 spider-mario I hope it will be obvious enough
15:08 jnthn Yeah, probably :)
15:10 birdwind1pbird joined #perl6
15:10 stevieb_ joined #perl6
15:11 moritz \o
15:11 jnthn hi moritz
15:11 spider-mario o/ moritz
15:15 Chillance joined #perl6
15:23 pmichaud good morning, #perl6
15:25 jnthn hi, pmichaud
15:33 stevieb_ joined #perl6
15:33 stevieb_ Good morning all :)
15:33 jnthn o/ stevieb_
15:33 * jnthn -> dinner, bbl
15:36 fglock joined #perl6
15:39 IngisKahn joined #perl6
15:48 Psyche^ joined #perl6
15:54 IngisKahn joined #perl6
16:06 thou joined #perl6
16:10 Mowah joined #perl6
16:17 felher 'constant' is compile time, right? So if i'd write something like 'constant SOME_OBJECT = lengthy-calculation()' and i precompile that to .pir, i don't have to wait lengthy-compuation-time each time i start the script. Is that about right?
16:18 moritz yes
16:19 pmichaud ooc, what if I do    constant SOMETHING = rand();   ?
16:19 moritz then you get a random number per compilation
16:19 * felher looks up 'ooc'
16:20 pmichaud "out of curiosity"
16:20 felher pmichaud: ah, thanks :)
16:48 Mowah joined #perl6
16:52 felher If i have a 'module X:Foo;' in which a 'constant PI = 3' is defined, how do i export/import it?
16:55 jnthn constant PI is export = 3; # if it's implemented, but I ain't sure it is
16:56 felher jnthn: that's what i tried first. So it seems it's NYI. :)
16:57 felher jnthn: thanks :)
16:57 felher i just wrap it in a sub for now. :)
16:58 jnthn pmichaud: re
16:58 jnthn "We'll work on removing the libtomath and dyncall sources from NQP
16:58 jnthn > tarballs, or make it very easy for NQP to ignore those sources.
16:58 jnthn "
16:58 jnthn pmichaud: Think it'll have to be the second one.
16:59 jnthn BUT we statically link these things in.
16:59 moritz aye. Bundling is way too convenient for non-distributor distribution
16:59 jnthn I don't see why distributions should care.
16:59 jnthn I mean, wow, the executables are a couple of hundred KB more big. :) Disk is cheap. :)
17:00 jnthn Time to resolve dependency is issues is more costly.
17:00 jnthn s/is//
17:01 jnthn Plus I think we have at least one custom patch to dyncall...
17:08 mattp_ joined #perl6
17:11 lichtkind jnthn: o/
17:13 jnthn hi lichtkind
17:13 lichtkind jnthn: may i talk to you about rakudo
17:15 pmichaud why are we statically linking?
17:16 pmichaud simply to improve startup time?
17:16 jnthn pmichaud: Less things to install, easier to set up (particularly on Windows where it frees you from worrying about export stuff, though maybe both libraries get that out of the box, but I ain't sure they do)
17:17 spider-mario is there anything that does the same as slurp but for writing?
17:17 jnthn pmichaud: Also because I'm just far happier with things being self-contained rather than having complex dependency chains.
17:17 spider-mario something like Haskell’s writeFile
17:17 jnthn lichtkind: Sure
17:18 pmichaud could we do dyanmic link on *nix and static link on Windows?
17:19 jnthn Probably, with effort.
17:19 pmichaud I just know that we're going to get a *lot* of pushback/resistance from debian packagers if we try to include the sources in the nqp tarball.
17:19 jnthn :(
17:19 jnthn But...they're shipping built binaries, no?
17:19 pmichaud it has to do with licensing and build requirements, not shipping ones
17:20 jnthn Ah
17:21 fgomez joined #perl6
17:21 * jnthn comes from Windows land and probably has a completely different set of values/interests inherited from that culture when it comes to these issues
17:22 pmichaud yeah, there are difficult cultural constraints at work here.  debian is very very concerned with license and source purity
17:22 pmichaud (it's one of their "core values")
17:22 pmichaud s/difficult/different/
17:23 jnthn OK, this probably explans why I'm finding this so curious. :)
17:23 pmichaud so, although it's possible to get exceptions, there has to be a really strong justification for it, and my guess is that Rakudo is not (yet) big enough to warrant them
17:23 arnsholt jnthn: Should NQP complain about something along the lines of: class Test is repr('CStruct') { has SomethingElse $!member; } ?
17:24 jnthn pmichaud: I'm doubtful our justification is really strong either. :)
17:24 jnthn Even if we were yet big enough :)
17:24 pmichaud :)
17:24 jnthn arnsholt: What's the "something else"?
17:24 jnthn arnsholt: It has to be something CStruct knows what to do with.
17:24 arnsholt Just a plain class SomethingElse (non-native)
17:25 jnthn That won't work out.
17:25 jnthn Yes, it should complain loudly.
17:25 arnsholt Yeah, that's what I was aiming for (to make sure I hadn't screwed things up =)
17:28 arnsholt Hmm. Doesn't here
17:28 spider-mario what do you think would be an idiomatic way of getting all the elements of a list but the last one?
17:29 spider-mario currently, I do: @x .= [^ (@x - 1)]
17:29 arnsholt nqp: class Foo {}; class Test is repr('CStruct') { has Foo $!foo; } my $x := Test.new; say('alive');
17:29 p6eval nqp: OUTPUT«Confused at line 1, near "class Test"␤current instr.: 'nqp;HLL;Grammar;panic' pc 22008 (src/stage2/gen/NQPHLL.pir:7047) (src/stage2/gen/NQPHLL.pm:329)␤»
17:29 spider-mario oh, pop does it.
17:30 arnsholt Durr?
17:30 jnthn arnsholt: Missing semi
17:30 jnthn After the class decl
17:31 arnsholt nqp: class Foo {}; class Test is repr('CStruct') { has Foo $!foo; }; my $x := Test.new; say('alive');
17:31 p6eval nqp: OUTPUT«alive␤»
17:31 arnsholt Thanks! I keep doing that
17:31 jnthn Hm. I'm surprised that doesn't expode.
17:31 jnthn *explode
17:31 arnsholt Yeah, me too
17:32 jnthn oh wait...
17:33 jnthn nqp: class Foo is repr('IDoNotExist') { }
17:33 p6eval nqp:  ( no output )
17:33 jnthn Right.
17:33 jnthn nqp: class Foo is repr('IDoNotExist') { }; say(Foo.REPR)
17:33 p6eval nqp: OUTPUT«KnowHOWREPR␤»
17:33 arnsholt Oh, right. That goes some way to explain it
17:33 jnthn Hm, that should really be an error.
17:34 jnthn Anyway, in NQP the dyncall ops lib ain't loaded by default.
17:34 arnsholt That's not a problem at this point, really
17:34 jnthn rakudo: class Foo {}; class Test is repr('CStruct') { has Foo $!foo; }; my $x := Test.new; say('alive');
17:34 p6eval rakudo 4373f0: OUTPUT«CStruct representation only implements native int and float members so far␤  in method bless at src/gen/CORE.setting:567␤  in method new at src/gen/CORE.setting:554␤  in block <anon> at /tmp/8MUEYk34rn:1␤␤»
17:34 jnthn There you go
17:34 jnthn arnsholt: It is because the repr lives inside that ops lib :)
17:34 arnsholt Oh, right!
17:35 arnsholt So I should just recompile Rakudo and use that to test it?
17:36 plobsing_ joined #perl6
17:38 jnthn arnsholt: That's the easiest way. Though if you only change the dynops, you can actually just copy nqp_dyncall_ops.so or whatever it is on your system from the nqp dynext directory into where it land sin the install directory
17:38 jnthn then you need not build Rakudo.
17:38 jnthn er, only change the repr I meant
17:39 arnsholt Kewl. Not recompiling Rakudo all the time would be nice =)
17:40 jnthn Very. :)
17:47 snearch joined #perl6
17:54 * jnthn heads home, bbi 45m or so
17:57 felher Why does
17:57 felher nom: a(3); sub a($x) { $x.say; }
17:57 p6eval rakudo 4373f0: OUTPUT«3␤»
17:57 felher work, but
17:58 felher nom: OPERATOR 3; sub prefix:<OPERATOR>($x) { $x.say; }
17:58 p6eval rakudo 4373f0: OUTPUT«===SORRY!===␤CHECK FAILED:␤Undefined routine '&OPERATOR' called (line 1)␤»
17:58 felher doesn't?
17:58 tadzik nom:  sub prefix:<OPERATOR>($x) { $x.say; }; OPERATOR 3
17:58 p6eval rakudo 4373f0: OUTPUT«3␤»
17:58 tadzik well ;)
17:59 moritz felher: only normal subroutines can be post-declared
17:59 moritz felher: if the compiler sees an unknown identifier at parse time, it assumes its a subroutine call. If it turns out that is not the case, it complains loudly
18:08 felher moritz: ah, i see. Is there a way to make it know to the compiler but supply its body later? Something like 'sub somefix:<OPERATOR>($a, $b); some code that uses OPERATOR ...; sub somefix:<OPERATOR>($a, $b) { actual defintion ... }'
18:11 felher Oh, maybe the yada-thing? *testing*
18:12 felher Nope, it isn't that simple :)
18:25 havenn joined #perl6
18:29 moritz felher: sure: sub PREFIX:<myop>($x) { function_that_implements_myop($x) }
18:29 moritz felher: and implement function_that_implements_myop later
18:31 felher moritz: ah, yes, i din't think of that workaround, thnx! :)
18:32 sorear good * #perl6
18:33 Mowah joined #perl6
18:33 felher moritz: but i wonder: why doesn't 'sub somefix:<OPERATOR> { ... }' work? I thougt it might after reading a bit of S06 (But maybe i'm just thinking to much in terms of operators are subroutines with funny names and funny syntax :)
18:34 moritz felher: erm, you can't just stub subs like that. Because you can post-declare them
18:34 moritz felher: what you can do is write a proto first
18:34 moritz proto sub somefix:<OP>(|$) { {*} }
18:35 moritz and then you can install the multis later
18:35 moritz and the proto re-dispatches to the multis
18:35 felher moritz: so i misunderstood the S06, "To predeclare a subroutine without actually defining it, use a "stub block": sub foo {...}     # Yes, those three dots are part of the actual syntax" ?
18:35 moritz felher: or maybe I'm just wrong :-)
18:37 felher moritz: maybe it's a fossil or something like that. I already borrowed the proto,multi-trick from your JSON code :D
18:47 masak evenin', #perl6
18:47 sorear o/ masak
18:49 cognominal_ o/
18:50 cognominal_ sorear, what does niecza use for regex?
18:50 whiteknight joined #perl6
18:54 sorear cognominal_: a nameless thing mostly of my own creation, with heavy inspiration from TimToady's regex engine, and the lessons I learned when I tried to implement Prolog in 2007
18:56 * lichtkind just wrote his first rakudo patch :)
18:58 cognominal_ sorrear, written in which language?
18:58 masak \o/
19:01 lichtkind masak: was that for me?
19:01 sorear cognominal_: It's not really separable from the rest of niecza
19:01 sorear the regex parsing and semantic analysis is done in Perl 6, the runtime primitives like ScanCClass are all C#
19:01 cognominal_ ok
19:03 * jnthn back
19:04 sorear yay, jnthn
19:05 birdwindupbird joined #perl6
19:08 masak lichtkind: sure! keep 'em coming!
19:09 lichtkind i hope to expand kephr ato automate lot of these tasks
19:15 masak x
19:16 masak heh -- I wish I had a one-year-old to blame when I accidentally type random things into the channel :P
19:17 tadzik ;)
19:18 cognominal I can't do that either when I type here stuff intended for #perlfr
19:18 IngisKahn joined #perl6
19:31 Psyche^ joined #perl6
19:34 nwc10 joined #perl6
19:45 * moritz is careful not blame his one-year-old for his own mistakes
19:46 wolfman2000 joined #perl6
19:49 colomon joined #perl6
19:55 LylePerl joined #perl6
19:55 raiph joined #perl6
19:56 pomysl joined #perl6
19:56 pomysl joined #perl6
20:02 spaceships joined #perl6
20:05 spaceships joined #perl6
20:05 IngisKahn joined #perl6
20:06 spaceships joined #perl6
20:20 lichtkind raiph: hai
20:20 nif joined #perl6
20:32 nwc10 left #perl6
20:51 Mowah joined #perl6
20:56 ggoebel joined #perl6
21:02 spaceships joined #perl6
21:07 nif joined #perl6
21:09 nif joined #perl6
21:11 Ingis joined #perl6
21:15 Chillance joined #perl6
21:17 plobsing joined #perl6
21:23 tokuhirom joined #perl6
21:31 nif joined #perl6
21:39 IngisKahn joined #perl6
21:47 lichtkind anybody here?
21:48 sorear yes
21:51 lichtkind im bit pissd that my rakudo patch dosnt work
21:52 lichtkind jnthn: i see that in terms.pm are other acurances of the symbol OS, might that the reason why it breaks?
21:53 jnthn lichtkind: It'd help to see your patch
21:53 lichtkind mom
21:53 jnthn just gist the diff
21:53 lichtkind https://github.com/lichtkind/rakudo/commit/f6d48c56fd9ebc3ca15ddfc6a705c82d743b80a7
21:54 lichtkind https://github.com/lichtkind/rakudo/commit/4b11a4ec556311da52d0b20bc7f6fd78d532fc41
21:54 lichtkind the first i did after we spoke
21:55 jnthn lichtkind: If you remove $OS and other things later in the code use it then sure, it'll be a problem.
21:56 jnthn Don't see where that's happening though.
21:57 jnthn lichtkind: So, how does it fail?
21:59 lichtkind like said
21:59 lichtkind https://github.com/lichtkind/rakudo/commit/4b11a4ec556311da52d0b20bc7f6fd78d532fc41
21:59 lichtkind sorry
21:59 lichtkind Missing or wrong version of dependency 'src/stage2/NQPCORE.setting'
22:00 jnthn That error is nothing to do with your change, it means something isn't built properly.
22:00 wolfman2000 joined #perl6
22:00 jnthn You just did "make" after your changes?
22:00 jnthn Did you rebuild NQP in the meantime?
22:01 jnthn Are you in the build directory?
22:01 lichtkind yes i had no problem with the build
22:02 lichtkind it came just runtime
22:03 lichtkind i knowits bit frustrating buts its bit new to me
22:04 jferrero joined #perl6
22:06 jnthn Do you get the error when you do "./perl6", or only when you actually run some code?
22:06 jnthn Anyway, it's almost certainly an odd build issue. I suggest just a "make clean && make"
22:07 lichtkind i called locale perl6 -e '...'
22:07 lichtkind i put os back into it now i cant compile it
22:13 colomon n: (-> *%a { }).count
22:13 p6eval niecza v15-6-gefda208: OUTPUT«Potential difficulties:â�¤  %a is declared but not used at /tmp/uXO2iYHLPP line 1:â�¤------> [32m(-> *[33mâ��[31m%a { }).count[0mâ�¤â�¤Â»
22:13 colomon n: say (-> *%a { }).count
22:13 p6eval niecza v15-6-gefda208: OUTPUT«Potential difficulties:â�¤  %a is declared but not used at /tmp/0UXVmTTJQA line 1:â�¤------> [32msay (-> *[33mâ��[31m%a { }).count[0mâ�¤â�¤1â�¤Â»
22:15 sorear o/ colomon
22:15 colomon \o
22:15 lichtkind joined #perl6
22:15 colomon sorear: a new spectest says that last .count call should return 1.  Any feelings on fix versus fudge?
22:15 colomon should return 0, sorry
22:16 colomon is (-> *%a { }).count, 0,   'slurpy named causes no count change';
22:16 sorear n: say (-> *% {}).count
22:16 p6eval niecza v15-6-gefda208: OUTPUT«1␤»
22:16 sorear n: say (-> *%a {}).count #OK
22:16 p6eval niecza v15-6-gefda208: OUTPUT«1␤»
22:16 sorear two ways to make the output easier to read
22:16 sorear alternatively, we could disable warnings in p6eval
22:16 sorear comments?
22:17 sorear re. your real question - let's at least try to fix it
22:18 colomon I think the warnings are pretty frequently useful, even in p6eval.  Though that particular one might be worth suppressing, if we can still get other warnings.
22:21 colomon would that be SLURPY_NAM
22:21 colomon ?
22:21 sorear yes
22:23 colomon if ((fl & Parameter.SLURPY_NAM) != 0) continue;
22:23 colomon ?  That's in sig_count.  (er, that's my suggested and completely untested fix.)
22:25 colomon niecza> say (-> *%a {}).count
22:25 colomon 0
22:27 colomon arity.t passes with it.
22:29 sorear colomon: I think that's reasonable
22:30 colomon spectesting
22:37 colomon pass, patch coming along in a sec
22:38 dalek niecza: 87bc0df | (Solomon Foster)++ | lib/Builtins.cs:
22:38 dalek niecza: A slurpy hash parameter is just putting a name on the normal named arguments, so it does not affect arity.
22:38 dalek niecza: review: https://github.com/sorear/niecza/commit/87bc0df258
22:51 colomon sorear: how have you been?
22:56 sorear fine
22:58 colomon things have been going pretty well here, except for a near-complete lack of p6 tuits.
23:00 lichtkind quasi  blocks are compiled to AST at runtime right?
23:11 lichtkind TimToady: allright from your comemtns i excerpted new explanation of $*ON_DIE and $*ON_ERROR but wth is $*COMPILING and $*DEBUGGING for?
23:36 jferrero joined #perl6
23:58 lestrrat joined #perl6

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

Perl 6 | Reference Documentation | Rakudo