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