Perl 6 - the future is here, just unevenly distributed

IRC log for #perl6, 2008-12-17

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:03 eric256 night
00:03 eric256 left #perl6
00:07 Hinrik are Perl 6 punctuation vars ($/, $!, $¢) always lexicals?
00:08 Hinrik and $_ ...
00:16 [particle] hinrik: yes, see S02:1611
00:18 abebae joined #perl6
00:27 jnthn If any November developers can try out the latest rakudoreg and let me know how it goes, that'd be wonderful.
00:28 dukeleto joined #perl6
00:54 [particle] http://www.perlfoundation.org/perl6/index.cgi?a_​guide_to_the_pugs_repository_for_rakudo_hackers
00:55 [particle] i'll do a lightning talk on this page tonight
00:55 jnthn [particle]: Cool, where at?
00:55 [particle] seattle.pm
00:55 pmichaud note that on unix boxes rakudo hackers can just "make t/spec" to check out a copy of the tests
00:55 [particle] it's always third tuesday, so i get to make announcements about new releases :)
00:56 [particle] pmichaud: can do that on win32 as well, but only to check out, not to update
00:56 pmichaud huh?
00:56 pmichaud there's a difference?
00:56 [particle] yes, if t\spec exists, it won't run svn up
00:56 pmichaud oh.
00:56 pmichaud sure, after that can do   svn up t/spec
00:57 jnthn Thankfully, if you make spectest it does update.
00:57 jnthn For me, anyway.
00:57 pmichaud but there's no need for a _separate_ copy of the t/spec repository if people want to update tests
00:57 jnthn I just let make spectest check it out
00:57 pmichaud (yes, need a separate copy to move tests from t/ to t/spec)
00:57 jnthn And then commit directly from taht copy.
00:57 pmichaud right, same here.
00:58 pmichaud maybe we should provide a make target to grab a copy of the synopses, too.
00:58 jnthn Oooh, I'd like that.
00:58 jnthn Especially as I'm going to be hacking on 'em soon...
00:58 [particle] good idea
00:59 [particle] it'd be nice to have STD.pm as well
00:59 pmichaud yes, we could grab that too.
00:59 [particle] which are the three reasons i keep a pugs repo around :)
00:59 yjh joined #perl6
00:59 pmichaud [particle]: what's youre feeling/expectation about 'make install' for parrot?
01:00 pmichaud *your
01:00 [particle] docs/spec/S*.pod and src/grammar/STD.pm?
01:00 pmichaud I'd probably grab docs/spec and (maybe) src/grammar/
01:00 pmichaud I don't know that svn works well at checking out single files
01:00 [particle] svn 1.5 does
01:01 [particle] and i'm suggesting those dirs for rakudo, in pugs they're differently named
01:01 jnthn I'd rather not have STD.pm under source - it's a tad confusing.
01:01 [particle] i'm afraid make install will slip, for lack of hands
01:01 [particle] but i'll know better after talking to rurban
01:02 [particle] jnthn: it will be source after pge/pct/rakudo fixes
01:02 jnthn Especially since we'll have a STD.pm of our own that is converging on the one inf the Pugs repo at some point.
01:02 pmichaud STD.pm from pugs would be in a different directory, yes.
01:02 pmichaud I'll work it out.
01:02 [particle] sure.
01:02 pmichaud [particle]: I think "make isntall" is one of those things that mustn't slip.
01:02 pmichaud it's far more important than the things that slipped dec release.
01:02 [particle] i agree
01:03 [particle] that's why it's marked 'critical'
01:03 [particle] we hold the release if it doesn't get done
01:03 pmichaud we hold the jan release?
01:03 [particle] that's my feeling now, yes.
01:03 pmichaud okay, I can agree with that.
01:03 pmichaud I'm wondering if this is something that I should go ahead and devote some tuits to.
01:04 pmichaud in conjunction with planning for moving rakudo to its own repo.
01:04 jnthn I can probably give it some time on Win32.
01:05 jnthn But I'm not at all knowledgable on how it should look anywhere else (heck, I'm not that hot on how it should look on Win32...)
01:05 pmichaud it might mean that I'd slip a bit on PGE stuff, but being in a "install limbo" is not going to be good for rakudo this month.
01:05 pmichaud I _really_ think we're going to have a lot of people looking at rakudo in the next few weeks, especially with holidays
01:05 pmichaud and recent events
01:05 pmichaud and recent new features
01:05 [particle] we *absolutely* *must* have 1 release after make install and before 1.0
01:06 pmichaud correct
01:06 [particle] i may not take my laptop home for the holidays
01:06 [particle] which would be bad for parrot, but good for me
01:06 jnthn Getting a good break matters.
01:07 pmichaud correct.
01:07 jnthn (FWIW, I will certinly be mostly offline Fri-Mon, visiting friends and relatives in the UK.)
01:08 pmichaud how do your schedules look after the 25th?  (the week of the 29th?)
01:10 jnthn I expect I'd be about a bit in the days immediately before and immediately after Christmas, hard to be sure.
01:10 jnthn Week starting 29th...
01:10 jnthn I'm back in Slovakia, but have some family visiting.
01:10 pmichaud okay.
01:11 jnthn They'll want some attention, but from the last time they visited me they will like to spend some time wandering around themselves a bit too.
01:11 jnthn Plus they're not late night people so much.
01:11 jnthn So I expect I'll be about a bit.
01:11 pmichaud okay.
01:11 [particle] i'll be back on the 28th, but should have an 8h power outage the 29th
01:11 pmichaud I expect to be around most of the time, unless we decide to take a trip somewhere.
01:12 alanhaggai__ joined #perl6
01:12 pmichaud but Paula has gotten very canny about asking about trips these days.  "Can we take a trip to <cool place XYZ>?  They have high-speed internet available."
01:12 jnthn lol!
01:12 jnthn Oslo! Oslo! ;-)
01:12 [particle] i have to head to seattle.pm now &
01:12 pmichaud have fun, particle
01:12 jnthn have fun
01:13 pmichaud be sure to highlight all of the really cool things that got added to rakudo this week
01:13 [particle] ta! i'll write that lightning talk over beer :)
01:13 pmichaud hyperops!  reduce ops!  better sorts!  given/when!
01:13 pmichaud .assuming!
01:13 pmichaud also point out the twitter feed:  http://twitter.com/rakudoperl
01:14 [particle] wilco, bye &
01:15 jnthn pmichaud: I may have got the branch working enough for November.
01:15 jnthn Need testing.
01:15 jnthn If so, I'm inclined to merge tomorrow.
01:15 pmichaud jnthn: I saw the backscroll comments.  So, it was about like I had said it would be, eh?  ;-)
01:16 jnthn I uncommented two lines and it worked. ;-)
01:16 pmichaud which was kinda what I was expecting.  I didn't understand why it "wasn't working".
01:16 jnthn To be fair, at the time I did that, I'm not sure the use sub had the check on %*INC to make sure we didn't load multiple times a module.
01:17 pmichaud it did.
01:17 jnthn Oh?
01:17 jnthn OK.
01:17 jnthn It probably woulda worked then. ;-)
01:17 pmichaud the check has been there since summer.
01:17 jnthn Fine. I suck. :-)
01:18 pmichaud not really -- it's just I actually got ahead of you for one brief moment, I think.  :-)
01:19 jnthn There's one thing that I don't like about what I've done.
01:19 jnthn Which is that if we put a load of stubs in, and then just leave 'em in the namespace and rely on Parrot to do the Right Thing and replace them, it doesn't work out.
01:20 pmichaud you mean stubs for subs?  or something else?
01:20 jnthn So I keep a list of the things I stick in, and then iterate it and they know how to clean themselves up.
01:20 jnthn stubs for types
01:20 jnthn stubs for subs I haven't tried yet.
01:20 pmichaud why is that a problem?
01:20 jnthn I didn't get to the bottom of why.
01:20 jnthn It was...odd.
01:20 pmichaud why is it a problem to leave them in the namespace?
01:20 pmichaud I'm confused.
01:20 jnthn If you leave them in the NS
01:21 jnthn Then when the loadinit stuff runs, you'd expect it just to replace the stuff in the namespace already.
01:21 jnthn That didn't happen.
01:21 pmichaud do you mean the stubs for the protoobjects?
01:21 jnthn It did...bizzare stuff.
01:21 jnthn Yes.
01:21 jnthn Well, I have one stub object that represents any type-ish thing for now.
01:21 pmichaud right.
01:22 jnthn I was going to crate a bunch of different ones, and then realized they'd all be the same.
01:22 pmichaud but it shouldn't matter, because P6object rebinds the symbol to the proto when it creates it.
01:22 jnthn At least, for now.
01:22 jnthn Right, that's what I thought.
01:22 jnthn Well, it's very easy to reproduce what does happen and debug it.
01:22 jnthn Well, it's easy to reproduce it.
01:22 jnthn Debugging it was harder.
01:23 pmichaud okay.
01:23 jnthn (Basically, comment out the 3 lines that loops and cleans.)
01:23 pmichaud I can look at that tomorrow morning.
01:23 jnthn Anyway, I broke re-entrancy by putting that in (which I knew it would).
01:23 jnthn I put in a hack for now.
01:23 jnthn But really I want to toss this.
01:23 jnthn As in, the whole cleaning up thing.
01:23 jnthn Because I don't think we should have to do it really.
01:24 pmichaud I don't think we should either.  The fact that we seem to need to do so means we're misunderstanding something somewhere.
01:24 jnthn Or Parrot is br0ken.
01:24 pmichaud that's possible too.
01:24 jnthn .oO( NO IT COUDN'T BE. )
01:25 jnthn Well, we've already discovered one curiosity this week about Parrot namespaces. :-)
01:25 pmichaud maybe p6object should have a 'new_stub' method. :-)
01:25 jnthn I doubt it's that I'm putting the things in the wrong place.
01:26 jnthn Since then I'd expect the tyename stuff to break in the case of a use. And it doesn't.
01:26 pmichaud right.
01:26 jnthn (Plus that woudln't make sense anyway...)
01:26 jnthn What I do fear is that
01:26 pmichaud when are you feeling ready to merge back to trunk -- any blockers?
01:26 jnthn Well, I want to hear from November if I broke it.
01:26 pmichaud okay.
01:27 jnthn If you're OK with us dealing with working out why we need the cleanup and removing it later, after the merge, I'm OK to do it after that.
01:27 jnthn As in, after I know November is OK.
01:27 pmichaud I think I'm okay with that -- I'm with you, I'd like verification that November is still okay.
01:27 pmichaud so we're in agreement.
01:27 jnthn OK.
01:28 pmichaud we can merge whenever you're comfortable.
01:28 jnthn So long as you know that I want that code to go away too, so you don't see it and think "OMG HE DID WHAT?" :-)
01:28 pmichaud no problem. :-)
01:28 armagad joined #perl6
01:28 jnthn Oh, we have to lose about 20 passing tests when we merge too.
01:28 pmichaud ouch.
01:29 jnthn A bunch in assign.t test want.
01:29 jnthn Which we ain't implemented.
01:29 pmichaud oh, but they're "fake passes", yes.
01:29 jnthn Thing is, we were running a load that didn't explode (and even looked to give a correct result).
01:29 pmichaud i.e., they aren't really passing, they just happen to give results that look like a pass.
01:29 jnthn Right.
01:29 pmichaud I don't have a problem with losing those.
01:30 jnthn I investigated how they'd possibly worked before, which was vaguely hilarious...
01:30 pmichaud I know there is some non-zero percentage of those in the suite.  Regressing on a "fake pass" isn't really a regression imo.
01:30 jnthn I've got a patch already that cleans them up, so I'll put it into t/spec before merging.
01:30 jnthn So so you know we'll drop some.
01:30 pmichaud that's fine.
01:30 jnthn But we'll then be able to pass tests with lowercase class/subset/enum names. ;-)
01:30 pmichaud I'm interested in accurate numbers more than "constantly increasing"
01:31 pmichaud and if it helps us get rid of the   ~~ Grammar::regex   stuff, I'm _all_ for it :-)
01:31 jnthn Oh, that *will* break now.
01:31 pmichaud good.
01:31 pmichaud KILL IT DEAD AND FLING IT INTO SPACE SO FAR WE CAN'T FIND IT WITH A RADIO TELESCOPE.
01:32 pmichaud ahem.
01:32 jnthn I won't be surprised if we still get at RT ticket complaining it broke. ;-)
01:32 pmichaud "I'll be happy when it breaks."
01:33 pmichaud I'll forward the ticket to p6l and say ... "uh, how is this supposed to work, exactly?"  ;-)
01:33 jnthn Didn't you already ask p6l about that one? ;-)
01:33 pmichaud yes.
01:33 pmichaud I think I did.  I know I asked in a p6 design meeting and got a "I'm still working that out" response.
01:33 pmichaud which is actually okay with me for the moment.  It's not an easy call.
01:34 pmichaud and we do have the /<Grammar::foo>/ workaround for now.
01:34 jnthn Yes
01:34 jnthn If there's wasn't that way to do it, I'm be much more bothered.
01:34 jnthn But that's still pretty compact.
01:34 pmichaud unfortunatley, I think STD.pm may actually be calling it /<Grammar.foo>/  now.
01:34 jnthn Oh, hmm.
01:35 pmichaud <Grammar::foo> syntax is apparently gone from S05, and the only thing remaining is an obscure reference to <Grammar.foo> (and the fact that STD.pm apparently parses the :: funny in angles)
01:35 pmichaud I'll still wait for something "official-ish"
01:35 jnthn I need to look at what STD.pm's latest decree is on parametric role stuff.
01:36 jnthn I'm also pondering traits and what we pass.
01:36 jnthn There doesn't seem to be a list anywhere.
01:36 jnthn But that's a whole other bunch of fun.
01:37 jnthn Got approval to work on S14, anyway.
01:38 pmichaud I was pretty sure you would.
01:38 pmichaud I'm glad you're doing it :-)
01:38 jnthn There's some quite hard/tricky questions that come up when you dig into the parametric roles stuff.
01:39 pmichaud I
01:39 pmichaud I've noticed you have a knack for being able to bring the tricky questions into understandable terms, though.
01:39 jnthn I'm sure the types guys on p6l will find plenty of things to say to my proposed answers...
01:39 jnthn I do expect that I'll end up getting some stuff into S14 on types that wants later to be moved elsewhere too.
01:40 pmichaud refactoring is okay.
01:40 jnthn You know how we do the hack on the Num proto at the moment for ACCEPTS, for example?
01:40 pmichaud yes.
01:40 jnthn I want to formalize how you do that.
01:40 jnthn So you can do something like will typecheck { ... } on the class
01:40 pmichaud okay.  If it can be cleanly formalized, that is.  We want to be careful not to constrain implementations unnecessarily.
01:40 jnthn Well, we need a way to express it in Perl 6.
01:41 jnthn Consider we wrote
01:41 jnthn sub foo(Int @x) { ... }
01:41 jnthn Which of these calls should work out?
01:41 jnthn my Int @a = 1,2,3; foo(@a);
01:41 jnthn my @a = 1,2,3; foo(@a);
01:41 jnthn I think _both_.
01:42 pmichaud I think both also.
01:42 jnthn In the first, we can go to the array and say "OK, you're parameterized, but what on?"
01:42 jnthn And it answers "Int" and we know it's good.
01:43 jnthn In the second case, it says "well, Any".
01:43 pmichaud (Object, I think)
01:43 Limbic_Region joined #perl6
01:43 jnthn Yes.
01:43 jnthn Object.
01:43 jnthn I had exactly that thought experiemnt earlier and realized it had to be Object. :-)
01:43 jnthn Anyway, the point is, not Int or something that Int accepts.
01:43 pmichaud right.
01:44 jnthn And it seems to me that the way that a parametric type checks if the incoming set of data conforms is custom per type.
01:44 jnthn For arrays, we look at the values. For hashes, we look at the values, and maybe the keys. For your own weird and wonderful parametric type, well, who knows what matters.
01:44 pmichaud I would say that since the array itself didn't conform, we check the elements.... right
01:45 jnthn But I don't think we can know what to look at.
01:45 jnthn That is, in the general case.
01:45 pmichaud isn't the general case just array, scalar, or hash?
01:46 jnthn No, because you can make your own parametric type.
01:46 pmichaud you mean   @a is ...   ?
01:46 jnthn sub foo(MyThingy[Int] $x) { ... }
01:46 pmichaud isn't that just doing a   MyThingy[Int].ACCEPTS($x)   ?
01:47 jnthn Yes, exactly, but how do we define that ACCEPTS?
01:47 pmichaud on the parametric type, yes?
01:47 jnthn Yes. That's what I'm getting at here. We want a way to be able to define the ACCEPTS.
01:48 jnthn And if we work it out as a general mechanism, we can use the same thing to have a way in the prelude of saying, in Perl 6, that Num accepts Int even though it's not just a subtype.
01:48 pmichaud got it.
01:48 pmichaud yes, that might work out well.
01:48 pmichaud but if nothing else, we just define Num.ACCEPTS and call it a day :-)
01:49 jnthn Well, we do that now, yes.
01:50 pmichaud "we want a way to be able to define the ACCEPTS" sounds a lot like "class Num is also { method ACCEPTS ... }"   :-)
01:50 pmichaud but yes, I understand where you're coming from.
01:50 jnthn No
01:50 jnthn Becuase that puts it on class itself
01:50 jnthn _not_ the proto.
01:50 jnthn That's the point here. We want ACCEPTS on the proto overridden.
01:50 pmichaud yes.
01:50 pmichaud okay, got it.
01:50 jnthn Or on the "role proto".
01:50 jnthn However that is going to look.
01:51 pmichaud yeah, I'm thinking role.
01:51 pmichaud anyway, I see where you're going -- it looks like a good direction to me.
01:51 jnthn Essentially though, I realized that if we take the body of a role package
01:51 jnthn And then we wrap it up in an outer sub, which is a multi-method taking the parameters
01:52 jnthn And this sub then returns the inner block, having cloned it (thus making a closure)
01:52 jnthn Then we pretty much get the type parameterization falling straight out of plain old closures and multiple dispatch.
01:52 pmichaud yes.
01:53 jnthn The only slighlty tricky bit might be making sure we end up putting into the class the methods referring to the correct outer.
01:53 jnthn That's remaining on my "to solve" list.
01:54 pmichaud I need a short break, then to come back and blog about this past week.
01:54 jnthn *nod*
01:54 pmichaud it's been quite a week.
01:54 jnthn I need sleep real soon too.
01:54 jnthn Yes!
01:55 pmichaud anyway, I'll bbl.  see you tomorrow if not before then.
01:55 jnthn Suggested blog post title: "And now we have some more presents under the Christmas tree" ;-)
01:55 pmichaud heh
01:55 jnthn I am totally not responsible for suggesting it. ;-)
01:55 pmichaud I got a small amount of flamage here for my other title.
01:55 jnthn I noticed. :-)
01:55 pmichaud fortunately, I have a flame-resistant ego.
01:56 jnthn Hey, we have to celebrate our achievements somehow...
01:56 jnthn Anyway, see you tomorrow, most likely.
01:56 jnthn Will be rakudo-daying.
01:56 pmichaud later
02:00 azawawi joined #perl6
02:14 [1]Limbic_Region joined #perl6
02:21 Limbic_Region joined #perl6
02:22 hercynium joined #perl6
02:44 kanru joined #perl6
02:53 alc joined #perl6
02:55 alanhaggai_ joined #perl6
03:02 LimbicRegion joined #perl6
03:02 eric256 joined #perl6
03:03 aindilis` joined #perl6
03:05 abebae left #perl6
03:21 charsbar joined #perl6
03:42 pugs_svn r24426 | hinrik++ | [util/perl6.vim] added a few keywords, small tweaks to angle quotes, contextualizers and pod format codes
04:02 Psyche^ joined #perl6
04:04 pugs_svn r24427 | hinrik++ | [util/perl6.vim] highlight the [oxbd] base in numbers like 0x1e3, 0b0101, etc
04:05 meppl joined #perl6
04:21 literal rakudo: my $foo = 'bar'; «:baz($foo)».perl
04:21 p6eval rakudo 34009: OUTPUT[Syntax error at line 1, near "\x{ab}:baz($foo"␤␤current instr.: 'parrot;PGE;Util;die' pc 129 (runtime/parrot/library/PGE/Util.pir:83)␤]
04:21 literal pugs: my $foo = 'bar'; «:baz($foo)».perl
04:21 p6eval pugs: RESULT["\":baz(bar)\""]
04:28 alester joined #perl6
04:30 rakudo_svn r34010 | pmichaud++ | [rakudo]:  Clean up stringification of mappings.
04:31 pmichaud rakudo doesn't handle french quotes yet (bug in Parrot)
04:31 pmichaud texas quotes work, although I don't think we're interpolating pairs yet.
04:32 meppl good night
04:33 pugs_svn r24428 | hinrik++ | [util/perl6.vim] highlight escaped # and :key<value> pairs in double angles
04:34 literal pugs: «foo\»bar».perl
04:35 p6eval pugs: RESULT["\"foo»bar\""]
04:39 literal pugs: 'foo\bar'.perl
04:39 p6eval pugs: RESULT["\"foo\\\\bar\""]
04:39 literal rakudo: 'foo\bar'.perl
04:39 p6eval rakudo 34009: RESULT["\"foo\\\\bar\""]
04:40 rakudo_svn r34011 | pmichaud++ | [rakudo]:  Add .pred and .succ methods for Int/Str/Num (RT #61420)
04:40 rakudo_svn r34011 | pmichaud++ | * Patch courtesy Eric Hodges <eric.hodges@gmail.com>
04:40 * eric256 cheers!
04:40 eric256 lol
04:40 pugs_svn r24429 | pmichaud++ | [t/spec]:  Unfudge passing .pred/.succ tests (eric256++)
04:57 pugs_svn r24430 | hinrik++ | [util/perl6.vim] highlight more escaped things in strings
05:00 apeiron joined #perl6
05:01 c9s_ joined #perl6
05:25 alester joined #perl6
05:27 eternaleye joined #perl6
05:27 eric256 left #perl6
06:07 literal rakudo: my $foo = 1; say "foo" if$foo
06:07 p6eval rakudo 34011: OUTPUT[foo␤]
06:12 pugs_svn r24431 | hinrik++ | [util/perl6.vim] adjust matching of conditional statements
06:14 pugs_svn r24432 | hinrik++ | [util/perl6.vim] forgot one bit
06:28 pugs_svn r24433 | hinrik++ | [util/perl6.vim] fix problem with highlighting of 'int'
06:34 alech joined #perl6
06:44 justatheory joined #perl6
06:51 mpeter joined #perl6
06:54 sail0r joined #perl6
06:57 ashizawa joined #perl6
07:01 sail0r left #perl6
07:11 DemoFreak joined #perl6
07:13 xinming-host joined #perl6
08:01 iblechbot joined #perl6
08:17 mpeter joined #perl6
08:22 pugs_svn r24434 | azawawi++ | [Syntax::Highlight::Perl6] Bumped version to 0.028
08:22 pugs_svn r24434 | azawawi++ | [Syntax::Highlight::Perl6] syntax-highlight-p6 is now hilitep6
08:22 pugs_svn r24434 | azawawi++ | [Syntax::Highlight::Perl6] added version prequisites for dependencies
08:22 pugs_svn r24434 | azawawi++ | [Syntax::Highlight::Perl6] POD fixes (e.g. =item -> =head2 in methods section)
08:28 maerzhase joined #perl6
08:39 TACPILOT joined #perl6
08:39 TACPILOT hello
08:40 moritz_ hi
08:41 TACPILOT I am trying to use an array or hash keys to create a reference to a hash value. I am wondering if there is some way of interpolating the reference. This exaple is just to convey my meaning. Any suggestions for what I need ?
08:41 TACPILOT http://sial.org/pbot/33829
08:41 elmex joined #perl6
08:41 TACPILOT sp >of hash keys
08:42 duke_leto joined #perl6
08:42 moritz_ is that supposed to be Perl 6?
08:42 TACPILOT just perl general
08:42 moritz_ then you're wrong here
08:42 eternaleye EWRONGCHANNEL
08:42 moritz_ try #perl or #perlhelp
08:42 moritz_ or http://perlmonks.org/
08:43 TACPILOT I'll try perl help  they're too buys in #perl playing grab ass to answer a real question beyond what 2+2
08:44 moritz_ you're not the first one complaining about #perl, but trying random channels with perl in the name isn't best pratice either
08:44 moritz_ there's also irc.perl.org with lots of perl channels
08:44 TACPILOT I'll look else where
08:45 TACPILOT in genral you see what I need, any suggestions other than go read a book before I go ?
08:45 moritz_ search.cpan.org -> Data::Diver
08:45 moritz_ good luck.
08:45 TACPILOT Tnx  L8r
08:56 timbunce joined #perl6
08:56 iblechbot joined #perl6
09:01 rgs joined #perl6
09:06 pugs_svn r24435 | azawawi++ | [Syntax::Highlight::Perl6] Updating Changes and releasing 0.028 to CPAN
09:07 explorer__ joined #perl6
09:09 TACPILOT left #perl6
09:28 duke_leto left #perl6
09:51 alanhaggai joined #perl6
10:04 masak joined #perl6
10:13 ChrisDavaz joined #perl6
10:41 masak joined #perl6
10:44 ejs joined #perl6
10:50 ejs joined #perl6
10:57 explorer__ joined #perl6
11:00 alexn_org joined #perl6
11:14 alech joined #perl6
11:18 alanhaggai_ joined #perl6
11:40 rakudo_svn r34018 | jonathan++ | [rakudo] Make sure we give correct error message when multiple dispatch ties on a bunch of candidates all with non-matching constraints.
11:44 alanhaggai__ joined #perl6
11:45 dmq joined #perl6
11:55 bloonix joined #perl6
12:10 ruoso joined #perl6
12:17 ruoso Hello!
12:19 donaldh joined #perl6
12:20 rakudo_svn r34019 | jonathan++ | [rakudo] Fix a test for multi-dispatch that didn't create classes the Perl 6 way to do so.
12:22 * ruoso enters annoying mode: TimToady, have you seen my question on p6-l about Foo::Bar.EXPORTALL?
12:25 ruoso is there some spec on how do you raise control exceptions? is it just by using fail also? I'd think it would be a different mechanism, since it will look for CONTROL blocks, instead of CATCH blocks
12:28 dmq left #perl6
12:34 xinming-host left #perl6
12:46 kane_ joined #perl6
12:47 pugs_svn r24436 | jnthn++ | [t/spec] Add a test to make sure if we declare something with the & sigil, we can only pass a Callable to it.
12:48 kane_ joined #perl6
12:50 rakudo_svn r34020 | jonathan++ | [rakudo] Add Callable role, make Code do it and make sure parameters with the & sigil require it.
13:05 alech joined #perl6
13:49 vixey joined #Perl6
13:55 alester joined #perl6
13:57 masak rakudo: say (1,2,3) ~~ [1,2,3]
13:57 p6eval rakudo 34020: OUTPUT[Method 'ACCEPTS' not found for invocant of class 'Perl6Array'␤current instr.: 'infix:~~' pc 16184 (src/builtins/match.pir:18)␤]
13:57 masak haha :)
13:57 * masak submits rakudobug
13:57 masak I wasn't even trying this time!
14:00 rakudo_svn r34022 | pmichaud++ | [rakudo]: spectest-progress.csv update: 250 files, 5170 passing, 0 failing
14:03 alanhaggai joined #perl6
14:08 jnthn masak: HAW! We already have a ticket for ACCEPTS on Array. ;-)
14:09 masak now you have two.
14:12 * masak shoots bug reports from the hip
14:13 jnthn Fine. I'll count it as TWO masakbug fixes then. :-P
14:13 masak hey! :P
14:14 * masak needs to think up _different_ bugs from now on
14:37 pugs_svn r24437 | jnthn++ | [rakudo] Un-fudge some .clone tests for Rakudo.
14:40 rakudo_svn r34026 | jonathan++ | [rakudo] First cut of the clone method (argumentless version).
14:46 Lunchy joined #perl6
14:51 pmurias joined #perl6
15:01 pmurias ruoso: i read through lowdoc/ sounds sane to me
15:04 ruoso pmurias, nice...
15:05 ruoso pmurias, I was thinking that will be the base for making smop more modular
15:05 ruoso btw...
15:06 ruoso I was wondering what we would need to do to remove 'void* data' from SMOP__Object*
15:06 ruoso it looks awkward
15:09 Trey joined #perl6
15:24 ejs joined #perl6
15:27 xiaoyafeng joined #perl6
15:29 pugs_svn r24438 | jnthn++ | [t/spec] Tests for .clone with parameters.
15:29 justatheory joined #perl6
15:30 rakudo_svn r34028 | jonathan++ | [rakudo] Generate private accessor methods for attributes.
15:30 rakudo_svn r34029 | jonathan++ | [rakudo] Implement version of clone that takes named parameters and sets attributes.
15:40 meppl joined #perl6
15:56 pjcj joined #perl6
16:05 pmurias joined #perl6
16:10 rakudo_svn r34030 | jonathan++ | [rakudo] Fix indirect calls on private methoeds.
16:13 pmurias ruoso: we could have SMOP__Object__refcounted
16:14 pmurias and SMOP__Object__refcounted__BASE
16:15 ejs joined #perl6
16:31 adc_penner joined #perl6
16:37 stephens joined #perl6
17:00 rakudo_svn r34031 | jonathan++ | [rakudo] Make substr handle being given a negative start and length. Patch courtesy of Ronald Schmidt <ronaldxs@software-path.com>.
17:00 pugs_svn r24439 | jnthn++ | [t/spec] Add a test for substr with negative start and length. Patch courtesy of Ronald Schmidt <ronaldxs@software-path.com>.
17:01 pugs_svn r24440 | jnthn++ | [t/spec] Unfudge indirect private method call tests for Rakudo.
17:02 gbacon joined #perl6
17:13 azawawi joined #perl6
17:13 azawawi good evening
17:16 azawawi moritz_: ping
17:16 moritz_ azawawi: pong
17:16 kcwu joined #perl6
17:16 azawawi moritz_: any chance we can upgrade YAML::Syck and Moose so that i can depend on the latest stable?
17:17 azawawi moritz_: currently we have Moose 0.57 and YAML::Syck 1.0.3 i think
17:17 moritz_ azawawi: on feather1?
17:17 azawawi moritz_: yup
17:18 azawawi moritz_: quick update, i managed to highlight the first p6 file in Padre::Plugin::Perl6 using Syntax::Highlight::Perl6
17:19 moritz_ azawawi: nice
17:19 azawawi moritz_: first time you get the lex time startup and afterwards it pretty good for small files
17:19 azawawi moritz_: s/it/it is/
17:19 azawawi moritz_: and STD_syntax_highlight is now bin/hilitep6
17:21 moritz_ rakudo: eval 'class C is D {}'; say "alive"
17:21 p6eval rakudo 34031: OUTPUT[alive␤src/inter_call.c:390: failed assertion 'PObj_is_PMC_TEST(sig_pmc)'␤Backtrace - Obtained 32 stack frames (max trace depth is 32).␤  (unknown)␤    Parrot_confess␤      Parrot_init_arg_op␤        Parrot_init_ret_nci␤          (unknown)␤            (unknown)␤
17:21 p6eval ..Parro...
17:21 stephens joined #perl6
17:24 moritz_ azawawi: I'm now running an upgrade on feather, if there are newer debian packages for the modules that will fix it
17:25 jnthn moritz_: Is that the same backtrace we get at exit for a bunch of other stuff?
17:27 moritz_ jnthn: dunno
17:27 jnthn moritz_: I suspect it is...
17:27 moritz_ jnthn: anyway, on my local checkout this doesn't fail
17:27 jnthn I don't see it on Win32 fwiw
17:28 jnthn Ah, OK.
17:28 jnthn Does the rakudo bot use perl6.exe?
17:28 jnthn erm, I mean, the fake executable?
17:28 jnthn Or run the PBC?
17:28 moritz_ run the pbc
17:28 jnthn Oh. :-|
17:29 moritz_ and when I close the REPL, I get such a backtrace again
17:30 jnthn Ah. Hmm.
17:30 jnthn I suspect it's an underlying Parrot issue. But if we get it from the PBC too, it's not the usual problem with the fake executable.
17:30 moritz_ and yes, it's the same backtrace as t/spec/S12-class/declaration-order.t
17:31 jnthn Ah, OK
17:31 jnthn we have a ticket to track the declaration-order.t problem.
17:32 jnthn So I don't think we need to re-open the one on eval 'class C is D { }'
17:32 jnthn As it's the same underlying Parrot issue in both.
17:33 moritz_ I've just replied... maybe they should be merged
17:33 jnthn Merge works for me.
17:49 Lorn_ joined #perl6
17:51 apeiron_ joined #perl6
17:51 adc_penner2 joined #perl6
17:52 azawawi moritz_: feather1 apt upgrade done?
17:52 moritz_ just finished now, yes
17:52 moritz_ ii  libmoose-perl  0.63-1         Extension of the Perl 5 object system
17:52 moritz_ is that new enough?
17:53 azawawi moritz_: Warning: prerequisite YAML::Syck 1.05 not found. We have 1.04.
17:53 azawawi moritz_: Moose is latest, yes that's perfect
17:53 moritz_ ii  libyaml-syck-p 1.05-1
17:53 PerlJam new enough?   Isn't that the latest Moose?
17:54 moritz_ why the bloody hell is the package version 1.05, and the module reports it's 1.04?
17:55 alech joined #perl6
17:55 eric256 joined #perl6
17:57 azawawi PerlJam: we had 0.57 on feather, and moritz_ upgraded it to 0.63
17:57 * azawawi running make test
17:58 stephens joined #perl6
18:00 azawawi moritz_: strange im still getting 1.04 warnings in perl Makefile.PL when i require 1.05
18:01 sail0r joined #perl6
18:02 moritz_ installing YAML::Syck now from cpan...
18:02 azawawi thx
18:03 moritz_ (the old cpan config had an outdated cpan mirror...)
18:03 moritz_ ... which still reports itself as 1.04
18:03 azawawi reload index ?
18:04 moritz_ which index?
18:04 azawawi cpan> reload index
18:04 moritz_ that's not the problem.
18:04 moritz_ it installs YAML-Syck-1.05
18:04 azawawi oh, ok
18:04 moritz_ but the Syck.pm reports its version as 1.04
18:05 azawawi hmmm
18:05 moritz_ uhm.
18:05 sail0r left #perl6
18:05 moritz_ no, it doesn't
18:05 moritz_ now I'm totally confused
18:06 moritz_ ah
18:06 moritz_ @INC is borked on my account
18:06 lambdabot Unknown command, try @list
18:06 moritz_ it loads /usr/local/lib/perl/5.10.0/YAML/Syck.pm
18:06 moritz_ not /usr/lib/...
18:06 azawawi lol lambdabot
18:07 moritz_ azawawi: what's your $PATH?
18:07 dukeleto joined #perl6
18:07 azawawi moritz_: /home/azawawi/bin:/usr/local/bin:/usr/bin:/b​in:/usr/bin/X11:/usr/games:/home/azawawi/bin
18:08 moritz_ azawawi: if you change that to include /usr/bin/ before /usr/local/bin, everything should be fine
18:09 eric256 @list
18:09 lambdabot http://code.haskell.org/lambdabot/COMMANDS
18:12 jhorwitz joined #perl6
18:12 azawawi moritz_: still the same problem
18:12 azawawi moritz_: $PATH= /home/azawawi/bin:/usr/bin:/usr/local/bin:/bin
18:13 alester joined #perl6
18:14 moritz_ that's quite annoying
18:15 moritz_ does anybody actually use the perl in /usr/local/?
18:16 azawawi moritz_: i can live with 1.04
18:17 pbuetow joined #perl6
18:17 azawawi moritz_++
18:18 moritz_ exactly the thing I didn't want to do... oh well.
18:21 pugs_svn r24441 | azawawi++ | [Syntax::Highlight::Perl6] Bumped version to 0.029
18:21 pugs_svn r24441 | azawawi++ | [Syntax::Highlight::Perl6] Updated changes and dependency on Moose 0.63
18:21 pugs_svn r24441 | azawawi++ | [Syntax::Highlight::Perl6] Fix the lexical scope sharing of my-vars that
18:21 pugs_svn r24441 | azawawi++ | [Syntax::Highlight::Perl6] caused the parser to work once across all instances.
18:26 mberends joined #perl6
18:28 pcbuetow joined #perl6
18:29 pugs_svn r24442 | moritz++ | [t/spec] remove a wrong test
18:38 dukeleto joined #perl6
18:39 azawawi moritz_: how can i share instance vars between different packages
18:40 moritz_ azawawi: there are no instance variables in Perl 5.
18:41 azawawi moritz_: i mean $self->{...}
18:41 azawawi moritz_: can u please take a look at Syntax::Highlight::Perl6  ?
18:41 moritz_ well, store the variable in two different $self's
18:42 * moritz_ took a look
18:43 moritz_ anything particular you want me to look at?
18:44 azawawi moritz_: problem is in ::Action my-variables and @locs
18:44 azawawi moritz_: @locs is shared and hence not good for multiple instances for Syntax::Highlight::Perl6
18:46 pugs_svn r24443 | azawawi++ | [Syntax::Highlight::Perl6] Adding testcase for multiple instances bug
18:47 moritz_ azawawi: just copy @loc to the instance once it's created, and clear the global ones
18:48 azawawi moritz_: cool
18:49 azawawi moritz_: ofcourse it means we're not thread-safe
19:02 ejs joined #perl6
19:06 pugs_svn r24444 | lwall++ | [t/regex] parsefail in context.t
19:08 alech joined #perl6
19:13 araujo joined #perl6
19:14 aindilis` joined #perl6
19:38 pugs_svn r24445 | jnthn++ | [t/spec] More tests for smartmatching against an array, plus unfudge.
19:40 rakudo_svn r34034 | jonathan++ | [rakudo] Implement ACCEPTS for List (and thus Array), including dwimming on *.
19:43 pugs_svn r24446 | moritz++ | [t/spec] add tests for grammars and inheritance, patch courtesy by peters++
19:44 __felix__ joined #perl6
19:45 gfldex joined #perl6
19:46 alech joined #perl6
19:57 pugs_svn r24447 | jnthn++ | [t/spec] Some tests for array smartmatch in some edge cases/boundary conditions.
20:00 rakudo_svn r34042 | jonathan++ | [rakudo] Handle a couple of missed edge cases/boundary conditions in ACCEPTS for array.
20:03 pugs_svn r24448 | azawawi++ | [Syntax::Highlight::Perl6] Real fix to multiple instance variable sharing, moritz_++
20:04 pugs_svn r24449 | moritz++ | [t/spec] fix anchors in grammars + inheritance test, peters++
20:08 pugs_svn r24450 | azawawi++ | [Syntax::Highlight::Perl6] Updated changes... Releasing 0.029 to CPAN
20:17 pugs_svn r24451 | moritz++ | [t/spec] remove a few evals from smartmatch.t
20:19 iblechbot joined #perl6
20:20 jnthn moritz_: If you life, I just realized I didn't do any tests with an array on the LHS/RHS instead of a list. Could be worth adding.
20:21 moritz_ jnthn: looks like an easy addtion, I'll take a look...
20:23 jnthn moritz_: It is, I just didn't think of it at the time. :-)
20:25 * eric256 just had to explain in explicit detail how to load paper into a credit card machine
20:25 moritz_ jnthn: should * in arrays do the same magic as in lists?
20:25 moritz_ seems like
20:25 jnthn Yes, I believe so.
20:25 moritz_ first bug found ;-)
20:25 jnthn S03 doesn't indicate otherwise.
20:25 jnthn Oh?
20:26 moritz_ rakudo: my @a = 1, 2, 3; my @m = (*, 2, *); say  (@a ~~ @m);
20:26 p6eval rakudo 34042: OUTPUT[1␤]
20:26 [particle] moritz_: your tireless pursuit of bugs amazes me.
20:26 moritz_ uhm
20:26 moritz_ why does it fail on my machine?
20:26 jnthn moritz_: That's correct.
20:26 [particle] what bug?
20:26 [particle] :)
20:26 moritz_ human stupidity, not bugs ;-)
20:27 moritz_ [particle]: I primarily pursue tests, and only secondarily bugs
20:27 eric256 is there a name for * when used like that?
20:27 moritz_ eric256: "Whatever"
20:27 * masak pursues bugs tirelessly
20:28 eric256 ahh thanks
20:28 moritz_ jnthn: should * on the LHS also magically dwim?
20:28 jnthn moritz_: I wasn't sure about that.
20:28 eric256 rakudo: * ~~ 1
20:28 p6eval rakudo 34042: OUTPUT[get_number() not implemented in class 'Whatever'␤current instr.: 'parrot;Int;ACCEPTS' pc 2423 (src/classes/Int.pir:50)␤]
20:28 eric256 rakudo: 1 ~~ *
20:28 masak eric256: ooh!
20:28 p6eval rakudo 34042: RESULT[Bool::True]
20:28 * [particle] bugs perseus tirelessly
20:28 jnthn moritz_: I didn't see any examples suggesting it would.
20:29 masak eric256: will you report that one? or shall I? :)
20:29 moritz_ @ask TimToady when smartmatching @array1 ~~ @array2, should Whatever stars in @array1 "dwim"? or just in @array2?
20:29 lambdabot Consider it noted.
20:29 eric256 so can i just yell out * ;)
20:29 eric256 hehe
20:30 eric256 masak: feel free. i'm not even sure if its a but or not ;)
20:30 masak eric256: it probably shouldn't report that, anyway.
20:30 * masak submits rakudobug
20:30 jnthn It shouldn't report that but 1 ~~ * is curious
20:30 jnthn Any       *         block signature match   block successfully binds to |$_
20:31 eric256 when do you submit a rakudobug versus just building a test?
20:32 moritz_ eric256: gut feeling ;-)
20:32 pugs_svn r24452 | moritz++ | [t/spec] tests for Array ~~ Array
20:32 moritz_ eric256: when I think something should be implemented by now, I open a ticket (*and* write a test)
20:32 jnthn eric256: You do both. And you say in the ticket, where you added the tests.
20:32 moritz_ eric256: when I know it's just not yet implemented, I just write the test, usually
20:32 jnthn This makes the implementers Very Happy because they then know where to go un-fudging. :-)
20:33 jnthn (Of course auto-unfudge catches stuff too, but I don't like comitting a fix without knowing there's a test.)
20:33 eric256 is that the same bug list as where you send patches?
20:33 moritz_ eric256: aye
20:35 eric256 docs don't seem to care where * is used.. very odd new operator ;) fits the perl mentality though i think 1..* is the same as 1,2,3,...till whenever i stop asking for mroe ;)
20:36 [particle] and 1..^* is only slightly different :)
20:36 masak eric256: technically, it's a term, not an operator. (I think.)
20:36 masak [particle]: :P
20:37 jnthn * is like, whatever.
20:37 PerlJam jnthn++
20:38 jnthn It does so much different stuff all over the place
20:38 jnthn I remember being in a talk when Larry was presenting it.
20:38 jnthn "I so don't envy the sucker that gets to implement that lot."
20:38 masak perl6: for 1..* { say "OH HAI"; exit }
20:38 moritz_ lol
20:38 p6eval elf 24452: OUTPUT[Undefined subroutine &GLOBAL::whatever called at (eval 125) line 3.␤ at ./elf_f line 3861␤]
20:38 p6eval ..rakudo 34043: OUTPUT[get_integer() not implemented in class 'Whatever'␤current instr.: 'parrot;Range;!to_test' pc -2866077 ((unknown file):-1)␤]
20:38 p6eval ..pugs: OUTPUT[OH HAI␤]
20:39 masak pugs: OH HAI!
20:39 p6eval pugs: OUTPUT[*** ␤    Unexpected "!"␤    expecting "::", dot, ":", "(", term postfix, operator or ","␤    at /tmp/0lP4DcMLI8 line 1, column 7␤]
20:39 masak pugs++
20:39 moritz_ ENOLAZYLISTS
20:39 masak dang.
20:39 masak thought we had them by now.
20:40 masak we have so many features nowadays, I can't quite keep them apart. :)
20:40 jnthn masak: The lack of a complete/approved iterators spec is rather a holdup for us.
20:40 masak ah.
20:40 moritz_ there was a branch, back in the auld days...
20:40 jnthn I started a branch.
20:40 jnthn But the spec is too fluid to make it worth spending a lot of time on yet, IMO.
20:40 masak mm.
20:41 moritz_ and right now there are many other important things to work on
20:41 jnthn Once there's a spec, I'm sure Rakudo won't be too far behind with starting to implement it.
20:41 masak I've been in a state of incredulous bliss ever since the closing of #58392.
20:41 masak nothing really compares to that bug.
20:41 moritz_ was that the (in)famous lex thing?
20:41 masak aye.
20:42 masak moritz_: I even got you crying that bug number out the window.
20:42 moritz_ and then we got list assignment and some meta ops just a few days or weeks after
20:42 masak yes, crazy.
20:42 moritz_ ready for $today+1week
20:43 moritz_ F*CK, IT'S JUST ONE WEEK?
20:43 jnthn What?
20:43 jnthn Ouch!
20:43 masak ihrd++ has merged the new-html-template branch into master now, thanks to the lexbug being fixed.
20:43 masak moritz_: it is. that's crazy too.
20:46 eric256 so how long till we have a perl6 prelude like pugs has?
20:46 masak eric256: there have been preparations for it.
20:47 masak I don't remember what things remain to make it possible. but 'class A is also' was one of the things needed.
20:47 masak (and Rakudo has that now, IIRC.)
20:51 eric256 just curious cuase there are tickets from a year ago relating to it ;) wondered what 12 months had gotten on that front
20:52 PerlJam eric256: deja vu.  I asked about that yesterday I think.
20:52 [particle] inline pir was also required and has been implemented, as well as 'is export'
20:52 moritz_ [particle]: do we have a prelude scope?
20:52 masak jnthn and pmichaud are probably the ones sitting on the most current information.
20:52 [particle] not yet
20:52 [particle] masak is correct
20:52 PerlJam eric256: grep the logs from #parrot or #perl6 from yesterday for "prelude" and I bet you'll find pmichaud's reply
20:52 moritz_ well, for methods that's not needed anyway
20:53 eric256 i guess a more important question would be..is rakudos goal to eventualy be a perl6 implementation written in perl?
20:53 adc_penner joined #perl6
20:53 [particle] no.
20:53 masak no?
20:53 [particle] rakudo's goal is to be a perl 6 implementation written for parrot
20:53 eric256 lol we need a mission statment
20:53 [particle] how do you write infix:<+> in perl?
20:53 moritz_ http://irclog.perlgeek.de/​parrot/2008-12-16#i_766322
20:54 eric256 ahh so in that case does it make more sense for everything to be written in pir ?
20:54 PerlJam moritz_++
20:54 eric256 $a.succ for 1..$b :)
20:54 jnthn eric256: Not everything.
20:54 moritz_ eric256: as always, it's neither black nor white
20:54 jnthn I'd like _more_ of what we have to be written in Perl 6.
20:54 moritz_ eric256: there are things that work fantastically when written in perl6, but some primitives are better left in PIR
20:54 jnthn But I don't see everything being.
20:55 * ruoso commute &
20:55 * azawawi Padre::Plugin::Perl6 is alive ;-)
20:56 azawawi and Padre 0.22 is tomorrow with slow Perl 6 highlight based on STD ;-)
20:56 azawawi s/highlight/highlighting/
20:56 masak (slow Perl 6 highlighting)++
20:57 masak azawawi++
20:57 * azawawi is creating Padre::Task::Perl6 for background highlighting lol
20:58 masak Highlight @ Home
20:58 pugs_svn r24453 | jnthn++ | [t/spec] Test for calling a rule in a grammar in a nested namespace.
20:58 moritz_ speaking of highlighting, perl6.vim is much better these days, thanks to Hinrik++
20:58 masak I should try that, then.
20:58 azawawi cool release to vim?
21:00 rakudo_svn r34045 | jonathan++ | [rakudo] Fix namespacing of grammars. Patch courtesy of Chris Dolan.
21:01 pugs_svn r24454 | putter++ | [rx_on_re] More rx prelude work.  STD_blue-based elf now runs entire rx_on_re test suite (runs, not passes).
21:02 moritz_ I think we had a ticket for grammar rules not being properly inherited, but I can't find it anymore...
21:02 moritz_ any idea what the title might have been?
21:02 Lorn joined #perl6
21:02 masak moritz_: #61338
21:03 masak Gmail++
21:03 azawawi Any idea if STD has standard error message that we could output while highlighting to status bar in Padre?
21:04 pmichaud blockers for prelude in p6:  EXPORTALL, unique :subid generation, fixing :load :init semantics
21:04 moritz_ rakudo: token foo { 'foo' }; say 'foobar' ~~ m/<foo>/
21:04 p6eval rakudo 34043: OUTPUT[foo␤]
21:04 pmichaud (may be more -- those are the ones that are on my list at the moment)
21:05 moritz_ if inheritance work, why does t/spec/S05-grammar/inheritance.t fail?
21:06 pmichaud I don't have an inheritance.t ?
21:06 pmichaud oh, svn up -- now I do.  :-)
21:06 jnthn moritz_: I just put in a patch that may help that test, from Chris Dolan.
21:06 moritz_ jnthn: aye, it helps - it passes teh first test now ;-)
21:07 jnthn Yes, I get that here...
21:07 jnthn :-|
21:07 moritz_ Null PMC access in invoke()
21:07 pmichaud checking.
21:07 pmichaud it may very well be some of the :nsentry stuff.
21:07 moritz_ is Grammar::Bar::foo valid if foo is defined in a superclass of Grammar::Bar?
21:08 jnthn moritz_: I think so.
21:08 masak moritz_: 'superclass' meaning 'grammar which Grammar::Bar derives from'?
21:08 masak moritz_: I think so too.
21:08 moritz_ masak: aye
21:09 Tene moritz_: I remember yes
21:09 masak I have difficulty putting another meaning to the word.
21:09 moritz_ it just doesn't look like method call, that's why I doubted
21:10 masak maybe if one or more of {token, regex, rule} work more like submethods than like methods. but I haven't read/heard of such a thing.
21:10 masak moritz_: I think much of the point of deriving grammars is to have the non-overridden rules available.
21:11 pugs_svn r24455 | putter++ | [STD.pm] Minor P5Regex bugfixes.  () and (?!) now parse.  (?!a) still doesn't.  Nor (?i:a), \y, etc.  1/4 of perl5's re_tests are unexpected parse failures.
21:12 moritz_ masak: sure, I just didn't know if they were available with that syntax
21:12 masak moritz_: me neither. but it seems a reasonable extension of the way other code works.
21:13 masak another way of saying the same thing is: "if the unqualified version of Grammar::Bar::foo works, why shouldn't the qualified version work too?"
21:33 eric256 rakudo: enum Test<a b c>; say Test.WHAT;
21:33 p6eval rakudo 34047: OUTPUT[Role␤]
21:34 Lunchy joined #perl6
21:34 moritz_ shouldn't that just report 'Test'?
21:34 moritz_ rakudo: class A { }; say A.WHAT
21:34 p6eval rakudo 34047: OUTPUT[A␤]
21:34 masak rakudo: enum Test<a b c>; say a ~~ Test
21:34 p6eval rakudo 34047: OUTPUT[Null PMC access in isa()␤current instr.: 'parrot;List;!flatten' pc 3874 (src/classes/List.pir:268)␤]
21:34 masak haha :)
21:34 moritz_ probably underspecced
21:35 masak underspecced--
21:35 * moritz_ chuckles evilly
21:35 masak I probably reported that one already, though.
21:36 eric256 enums doen't make any sense to me, if the enumerations become global like that wont they tromp all over everything?
21:36 eric256 rakudo: enum Test<a b c>; say a; enum Test2<c b a>; say a;
21:36 p6eval rakudo 34047: OUTPUT[too few arguments passed (0) - 1 params expected␤current instr.: '_block119' pc 967 (EVAL_16:283)␤]
21:37 masak eric256: the globality is somewhat of an illusion.
21:37 moritz_ eric256: Bool is an enummeration that makes much sense to me
21:37 eric256 rakudo: enum Test<a b c>; say a,b;
21:37 p6eval rakudo 34047: OUTPUT[too few arguments passed (0) - 1 params expected␤current instr.: '_block53' pc 479 (EVAL_15:147)␤]
21:37 eric256 why does it hate me? lol
21:38 moritz_ rakudo: say True
21:38 azawawi moritz_: do threads in Perl5 hate STD.pm ? ;-)
21:38 p6eval rakudo 34047: OUTPUT[1␤]
21:38 [particle] rakudo: enum Object<Class Role Failure>; say Class.WHAT, Object.WHAT;
21:38 p6eval rakudo 34047: OUTPUT[Role␤]
21:38 moritz_ azawawi: never tried, but I could very well imagine that
21:38 masak [particle]: how evil :>
21:39 [particle] rakudo: enum Object<Class Role Failure>; say Object::Failure;
21:39 p6eval rakudo 34047: OUTPUT[2␤]
21:39 eric256 rakudo: say Bool::True, Bool::False;
21:39 p6eval rakudo 34047: OUTPUT[10␤]
21:40 eric256 yea i like that way better, the global magical thingy scares me
21:40 eric256 lol
21:40 eric256 rakudo: enum A<B C>; enum B<A C>; say A, B;
21:40 p6eval rakudo 34047: OUTPUT[0B␤]
21:41 masak [particle]: shouldn't defining an enum called 'Object' constitute an error of some sort?
21:41 [particle] sure looks like a bug to me
21:41 pugs_svn r24456 | putter++ | [rx_on_re] fix <commit>.
21:41 * masak reports
21:42 [particle] rakudo: enum Abject<Joy Failure>; say ?Abject::Failure
21:42 p6eval rakudo 34047: OUTPUT[1␤]
21:43 eric256 rakudo: enum A<B C>; enum B<A C>; say A::B;
21:43 p6eval rakudo 34047: OUTPUT[Use of uninitialized value␤␤]
21:43 masak can joy be abject? sounds sort of contradictory-in-terms...
21:45 moritz_ there are many things that sound contradictory-in-terms but still go together sometimes
21:45 [particle] it's poetry.
21:45 [particle] consider it that, anyway
21:46 * azawawi wonders why STD->parse() dies in threads
21:47 moritz_ threads in perl 5 are a evil, ugly and unstable hack
21:47 masak perl6: say enum <a b c>
21:47 p6eval rakudo 34050: OUTPUT[a  0b      1c      2␤]
21:47 p6eval ..pugs: OUTPUT[*** No such subroutine: "&enum"␤    at /tmp/zD1jk1nH99 line 1, column 5 - line 2, column 1␤]
21:47 p6eval ..elf 24456: OUTPUT[Undefined subroutine &GLOBAL::enum called at (eval 119) line 3.␤ at ./elf_f line 3861␤]
21:48 masak rakudo reports abject joy, whereas pugs and elf choose abject failure.
21:48 [particle] only rakudo supports anonymous enums :)
21:48 masak ...masquerading as hashes. :)
21:48 [particle] i wonder if they can have anonymous values
21:48 [particle] rakudo: say enum<*>
21:48 p6eval rakudo 34050: OUTPUT[*  0␤]
21:49 [particle] rakudo: say enum<<*>>
21:49 p6eval rakudo 34050: OUTPUT[*  0␤]
21:49 [particle] i don't know what i expected there
21:50 [particle] errands &
21:50 moritz_ I think that's as sane as you can get it with a non-identifier type name ;)
21:51 masak rakudo: enum B <>
21:51 p6eval rakudo 34050: RESULT[Null PMC access in find_method()␤current instr.: '_block15' pc 29 (EVAL_16:16)␤]
21:51 masak hoho!
21:51 masak no-one has ever thought of that one before.
21:51 * masak submits rakudobug
22:07 jnthn masak: Taht's truely useless. :-)
22:09 masak jnthn: you're just jealous you didn't think of it first. :)
22:09 masak jnthn: now you see, it's much easier to create tickets than to close them.
22:09 jnthn Can't wait to work out how on earth to bug fix that...
22:09 jnthn Probably detect it and whine.
22:09 masak jnthn: sounds reasonable.
22:10 masak jnthn: unless it's created in some automated way (can enums do that?)
22:10 jnthn No
22:10 jnthn We could always have an enum type that has no elements I guess.
22:11 masak yes, I see no theoretical reason to forbid it.
22:11 masak a 'Zen enum'
22:11 jnthn I guess "it's useless" doesn't mean "it's forbidden"...
22:11 justatheory joined #perl6
22:11 moritz_ "need a typename? say enum<> and get one for free!"
22:11 masak rakudo: enum Contemplate<>; enum Emptiness<>; enum Stillness<>
22:11 p6eval rakudo 34050: RESULT[Null PMC access in find_method()␤current instr.: '_block23' pc 29 (EVAL_18:16)␤]
22:11 alech joined #perl6
22:11 masak rakudo is not yet Eastern enough.
22:12 moritz_ *lol*
22:12 masak by the way, how do you write Rakudo in katakana, alternatively kanji?
22:13 masak the last kanji oughta be �, but the first two...?
22:14 * jnthn hasn't learned katakana yet
22:14 masak it looks pretty easy.
22:14 jnthn yeah
22:14 jnthn I thought the same
22:14 jnthn Just not got to it
22:14 jnthn Hoping to visit .jp next year though, so will learn it for then.
22:15 masak alphabets/syllabaries in general are pretty low-effort, it seems to me
22:15 masak hangul++
22:16 masak and the intricate relations between the letters of the latin, greek and cyrillic alphabets are among the most interesting topics I've discovered. :)
22:18 jnthn Russian was an easy alphabet.
22:18 jnthn katakana is more symbols to learn, but other than that, not so bad.
22:19 masak it does have some regularities, though, doesn't it?
22:21 masak ���
22:21 masak LEIM++
22:22 masak to me, that looks like little pieces of Chinese characters :)
22:25 justatheory joined #perl6
22:29 jnthn masak: I've not tried learning it yet, or looked in detail, but I'm sure once I do I'll start to pick such things out. :-)
22:30 masak jnthn: I hope you do learn it. I expect it's more fun to go to .jp knowing how to read kana.
22:30 masak I hope I learn it too, eventually.
22:31 jnthn Oh, I want to before I go there.
22:31 jnthn I know just how helpful such things can be. Trying to backpack accross Russia without knowing the Russian alphabet woulda been rather hard.
22:31 masak aye.
22:38 Limbic_Region joined #perl6
22:39 pmichaud (enum B <> bug)    the correct compiler response is   "Don't do that, masak!"   :-P
22:40 pmichaud I think I'm definitely going to hide a bug in Rakudo for masak++ to find that gives that sort of error message.  :-P
22:42 alech_ joined #perl6
22:43 masak perl6: <good fast cheap>.pick(2).perl.say
22:43 p6eval pugs: OUTPUT[("cheap", "good")␤]
22:43 p6eval ..elf 24456: OUTPUT[Can't call method "pick" on unblessed reference at (eval 115) line 3.␤ at ./elf_f line 3861␤]
22:43 p6eval ..rakudo 34050: OUTPUT[["good", "fast"]␤]
22:43 * masak laughs
22:43 jnthn Nice selection!
22:44 masak yes, for all three impls, I'd say.
22:44 masak elf is the inscrutable one, as always.
22:45 masak I can't rule out the possibility that elf is Eastern enough.
22:45 masak it's basically saying "you can't pick 2 here". that's deep, man.
22:53 masak too bad that run.pugscode.org doesn't work anymore.
22:54 masak I think a page like that can be really good for showing Perl 6 to people.
22:54 masak maybe I should write a real REPL in Rakudo and put it online. :)
22:55 moritz_ masak: there's a patch for the 'P' part in RT
22:55 moritz_ (see p6l for the link)
22:57 masak moritz_: I'm more interested in a patch for the 'long-term memory' part of a REPL.
22:57 masak without that, much cool stuff is hard or impossible to do.
22:58 moritz_ masak: aye, I know
22:58 vixey joined #Perl6
22:59 * masak wonders if a long-term-memory REPL could be written on top of Rakudo today
23:00 masak preferable without it performing slower with each new command entered :)
23:00 masak s/ble/bly/
23:01 eric256 rakudo: <good fast cheap>.pick(2).join(" and ").say
23:01 p6eval rakudo 34051: OUTPUT[Syntax error at line 1, near "\ufeff<good fas"␤␤current instr.: 'parrot;PGE;Util;die' pc 129 (runtime/parrot/library/PGE/Util.pir:83)␤]
23:01 jnthn unicode fail?
23:02 eric256 dunno, runs fine localy
23:02 jnthn Oh. Hmm.
23:02 eric256 rakudo:  <good fast cheap>.pick(2).join(" and ").say
23:02 p6eval rakudo 34051: OUTPUT[fast and cheap␤]
23:02 eric256 typed in editor and cut and pasted
23:04 jnthn rakudo: <<sex drugs 'rock and roll'>>.pick(2).join(' and ').say
23:04 p6eval rakudo 34051: OUTPUT[drugs and sex␤]
23:05 * jnthn compensates by listening to some rock
23:06 eric256 man firefoxs looks up while searching the Synopsis, it doesn't like them at all
23:07 jferrero joined #perl6
23:07 moritz_ eric256: firefox 2 or 3?
23:07 eric256 2 and 3
23:07 eric256 went back to 2 hoping it was a 3.0 issue
23:07 moritz_ I have some problems here with ff2 and some plugins, native ff2 and ff3 with plugins work fine here
23:08 eric256 its normaly when it fails to match, locks up for 20-30 seconds at a time
23:09 dalek joined #perl6
23:09 justatheory joined #perl6
23:11 orafu joined #perl6
23:14 perlmonkey2 joined #perl6
23:16 bacek__ joined #perl6
23:30 ryanc joined #perl6
23:34 masak so... the semantics of * in (1,2,3) ~~ (1,*,3) et al is "one or more", not "zero or more"?
23:34 masak i.e. (1,2) ~~ (1,*,3) # doesn't match
23:34 jnthn masak: zero or more, I believe.
23:34 moritz_ isn't it just "one arbitrary"?
23:34 jnthn masak: Well, yeah.
23:34 masak jnthn: yeah, what?
23:34 jnthn masak: 1,2 won't match 1,3 either ;-)
23:34 moritz_ masak: 2 never matches 3
23:34 masak jnthn: oops, bad example.
23:34 moritz_ rakudo: say (1, 2) ~~ (*);
23:34 jnthn :-)
23:35 p6eval rakudo 34053: OUTPUT[1␤]
23:35 jnthn It can match many I believe
23:35 masak rakudo: say (1,2,3) ~~ (1,*,*,3)
23:35 p6eval rakudo 34053: OUTPUT[0␤]
23:35 moritz_ rakudo: say (1..10) ~~ (*,2,*,5,*);
23:35 p6eval rakudo 34053: OUTPUT[Non-dwimmy hyperoperator cannot be used on arrays of different sizes or dimensions.␤current instr.: 'die' pc 14378 (src/builtins/control.pir:188)␤]
23:35 masak rakudo: say (1,3) ~~ (1,*,3)
23:35 p6eval rakudo 34053: OUTPUT[1␤]
23:35 moritz_ wtf?
23:35 jnthn Hmm.
23:35 masak jnthn: what do you think of that first one?
23:35 moritz_ why does it think I want to use a hyper operator?
23:36 jnthn The first one looks like a bug.
23:36 masak jnthn: :)
23:36 jnthn moritz_: Because it's implemented in terms of hyper
23:36 * masak submits
23:36 moritz_ rakudo: my @a = 1..10; say @a ~~ (*,2,*,5,*);
23:36 p6eval rakudo 34053: OUTPUT[1␤]
23:36 jnthn (The spec actually says this.)
23:36 moritz_ jnthn: ah.
23:36 jnthn moritz_: Aslo, dwimmery doesn't work unless you have Array, Array or List, List or a mix of the two
23:37 jnthn The spec doesn't say dwim should work on ranges.
23:37 jnthn (In fact, explicitly suggests it shouldn't.)
23:37 jnthn The reason I think * can match 0 or more is the spec says you can use
23:37 moritz_ jnthn: that's why I used an array in the second case
23:38 jnthn @a ~~ *,3,*
23:38 lambdabot Maybe you meant: activity activity-full admin all-dicts arr ask . ? @ v
23:38 masak jnthn: aye.
23:38 jnthn And in that case it's a way of saying "is there a 3 in @a"
23:38 TimToady except ~~ is tighter than ,
23:38 lambdabot TimToady: You have 1 new message. '/msg lambdabot @messages' to read it.
23:38 moritz_ crippled regex engine? ;-)
23:38 jnthn I agree 1,2,3 ~~ 1,*,*,3 is odd, but should match.
23:38 jnthn TimToady: Ah, yes.
23:38 masak rakudo: say (3) ~~ (*,3,*)
23:39 p6eval rakudo 34053: OUTPUT[Non-dwimmy hyperoperator cannot be used on arrays of different sizes or dimensions.␤current instr.: 'die' pc 14378 (src/builtins/control.pir:188)␤]
23:39 jnthn TimToady: Rakudo gets the precednece right, you must do parens there.
23:39 jnthn I'm just being tired and sloppy. :-)
23:39 masak jnthn: is the above worth a ticket as well?
23:39 jnthn masak: Erm. Only one ticket on the hyper issue.
23:39 jnthn That one is interesting.
23:40 jnthn Because it's thinking the LHS isn't a List or Array.
23:40 masak jnthn: I haven't submitted a ticket on the hyper issue yet.
23:40 masak moritz_: did you?
23:40 jnthn rakudo: say list(3) ~~ (*,3,*)
23:40 p6eval rakudo 34053: OUTPUT[1␤]
23:40 jnthn Yes.
23:41 moritz_ masak: did I what?
23:41 jnthn TimToady: Am I right in thinking a (3) doesn't construct a list here?
23:41 masak moritz_: submit a ticket on the hyper issue.
23:41 moritz_ masak: no.
23:41 * masak does, then
23:41 TimToady it doesn't construct a list unless you say (3,)
23:41 jnthn Right. So the dwim shouldn't work on the rhs of the smartmatch in this case
23:42 jnthn (because Any and Array in the table say the dwim behaviour doesn't happen)
23:42 TimToady unless the ACCEPTS on the right coerces the left to a list
23:42 jnthn TimToady: The spec seemed to be to suggest we _do_ coerce it to a list.
23:42 bloonix joined #perl6
23:42 moritz_ TimToady: what about * in left list, should that act as a wildcard?
23:42 jnthn But we don't apply dwiminess after that.
23:42 TimToady moritz_: no
23:42 moritz_ TimToady: ok.
23:43 TimToady * ~~ 1 is false
23:43 moritz_ rakudo: say (1, *, 2) ~~ (1, *);
23:43 p6eval rakudo 34053: OUTPUT[1␤]
23:43 TimToady ~~ is not a symmetrical operator
23:43 masak rakudo: say (3,) ~~ (*,3,*)
23:43 p6eval rakudo 34053: OUTPUT[1␤]
23:43 jnthn TimToady: So (3) ~~ (*,3,*) by my reading of the spec shoud not give 1.
23:44 masak oh, so I just submitted a bug report with the wrong title. :)
23:44 jnthn Of course, a 1-element array would.
23:44 jnthn masak: We need to fix something, but I'm not completely sure what fix yet. :-)
23:44 masak jnthn: right.
23:44 jnthn TimToady: Where by 1 I mean true :-)
23:44 masak now there's a ticket for it, at least.
23:45 jnthn masak: Thanks.
23:45 eric256 rakudo: (1,2,3) ~~ (1,2,3)
23:45 p6eval rakudo 34053: RESULT[Bool::True]
23:45 eric256 okay thats odd...localy it returns an error about accepts
23:46 moritz_ rakudo: say (1, 2, 3) ~~ [1, 2, 3]
23:46 TimToady I'm still kinda low on blood sugar and caffeine at the moment, so I probably shouldn't make any profound decisions, but once the right side of ~~ is dispatched to ACCEPTS it depends on how it's implemented what it expects/allows on the left
23:46 p6eval rakudo 34053: OUTPUT[1␤]
23:46 moritz_ eric256: svn up and rebuild
23:46 TimToady and at that point I only care if it usually does what's expected in a bike-sheddy way
23:47 jnthn TimToady: It does that much.
23:47 jnthn The ACCEPTS of Array is deciding not to dwim in the case the LHS isn't an Array or List.
23:47 TimToady so I don't have a strong opinion about (3) ~~ (*,3,*)
23:47 jnthn Me either.
23:47 jnthn I think what I have now is consistent with the spec as it stands now.
23:47 TimToady but it would be easy to dwim it on Any too
23:47 jnthn Yes, I agree.
23:48 TimToady and it would also be easy to change the spec if it's wrong :)
23:48 jnthn It'd be _less code_ for me to dwim it on Any too! :-)
23:48 TimToady that's usually an indication...
23:48 yjh joined #perl6
23:48 jnthn OK. I'll change the spec and delete some code. :-)
23:48 masak you guys make it really difficult to turn off the computer and go to sleep.
23:49 jnthn (Tomorrow. Now I'm meant to be preparing stuff for going to family for Christmas.)
23:49 masak good night, everyone.
23:49 jnthn night, masak
23:49 eric256 i just realized that it says the svn revision # when it evals it
23:51 moritz_ bed is a good idea ;)
23:58 eric256 left #perl6

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

Perl 6 | Reference Documentation | Rakudo