»ö« | perl6.org/ | nopaste: paste.lisp.org/new/perl6 | evalbot usage: 'perl6: say 3;' or rakudo: / pugs: / std: , or /msg p6eval perl6: ... | irclog: irc.pugscode.org/ | UTF-8 is our friend!
Set by moderator on 10 October 2009.
00:21 lumi joined 00:24 muixirt_ joined 00:29 kst joined 00:41 Whiteknight joined 01:03 envi^home joined 01:08 lumi joined 01:14 dj_goku joined
pugs_svn r28813 | colomon++ | [t/spec] Further expand the workout.t overloaded operators tests. Unfortunately, most of the new tests need to be skipped. 01:26
01:35 orafu joined 01:43 lumi joined 01:53 jaldhar joined 02:08 ssm joined 02:56 drbean joined 02:57 eternaleye joined 03:08 tak11 joined
TimToady std: sub foo($a where { $b > $a }, $b) {} 03:39
p6eval std 28813: OUTPUT«Potential difficulties:␤ Variable $b is not predeclared at /tmp/k1xtw9UBDl line 1:␤------> [32msub foo($a where { $b[33m⏏[31m > $a }, $b) {}[0m␤ok 00:01 110m␤»
03:44 kst joined 03:54 TiMBuS joined 03:58 drbean_ joined 04:15 jaldhar joined 04:17 Minthe joined 04:33 tak11 joined
dalek p-rx: cafd369 | pmichaud++ | src/stage0/P6 (2 files):
Update stage-0 compilers.
04:49
p-rx: 239e497 | pmichaud++ | build/PARROT_REVISION:
Bump PARROT_REVISION to get better subids.
p-rx: 4dabcc0 | pmichaud++ | build/Makefile.in:
Add exe targets to Makefile.
p-rx: 180f18e | pmichaud++ | src/Regex/P6Regex/Grammar.pm:
Regexes no longer need explicit action tokens at the end.
p-rx: 73205a0 | pmichaud++ | src/Regex/P6Grammar/Grammar.pm:
Regexes no longer need explicit action markers at the end.
04:54 quietfanatic joined 04:59 kst joined 05:10 _jaldhar joined 05:27 rdice joined 05:30 mberends joined 05:33 drbean joined 05:39 drbean__ joined
dalek p-rx: 5699969 | pmichaud++ | build/Makefile.in:
Clean up Makefile a bit.
05:40
p-rx: af458ca | pmichaud++ | src/Regex/P6Grammar/ (2 files):
Add parsing of proto regex statements to P6Grammar.
p-rx: 9b7739d | pmichaud++ | src/Regex/P6Grammar/Actions.pm:
Oops, protoregex method should be !protoregex.
p-rx: 2408264 | pmichaud++ | src/ (4 files):
Eliminate protoregex cheats for P6Regex, place directly in grammar.
mberends oh hai pmichaud 05:41
05:46 infrared_ joined 05:50 rdice joined 05:58 zloyrusskiy joined 06:18 kst joined 06:25 maschla joined 06:27 Confield left 06:39 synth joined 06:53 drbean joined 07:03 [synth] joined 07:22 avuserow joined 07:29 agentzh joined 07:36 cahek joined
eternaleye pmichaud++ # Shiny new NQP 07:58
08:01 kst joined 08:03 Su-Shee joined
Su-Shee good morning. 08:03
mberends hi Su-Shee, did you ever find any other graphical libraries that worked with Parrot, apart from Enlightenment demo'd by Tene++ ? 08:08
08:11 NorwayGeek joined
Su-Shee mberends: no, not yet. haven't looked for a few weeks though. 08:12
mberends: sadly, the list to bind libs to parrot is rather long. 08:13
the list of libs to bind.
08:15 infrared joined 08:41 JimmyZ joined 08:44 zloyrusskiy joined
pugs_svn r28814 | colomon++ | [t/spec] Add tests for [-] and [T-], which uncover a troubling bug: If you run the prior [T+] case, that test passes but the [-] test fails. If you don't run the [T+] test, the [-] test passes. 09:15
colomon if someone out there has a notion how to approach looking at this bug, I'd love to hear it... 09:16
09:17 lumi joined 09:24 iblechbot joined 09:31 kst joined
mberends tries to grok diakopter++'s sophisticated JavaScript code in sprixel by reading www.ecma-international.org/publicat...ma-262.pdf 10:30
10:31 resu joined
resu Is november-wiki.org/ an "official" perl6 project? 10:32
mberends resu: no, the word "official" is almost never used for anything Perl 6, except for the Specifications and Test Suite. 10:35
the perl6 project has used november-wiki.org/ as the first and largest example of an application written in Perl 6, resulting in much feedback to the Rakudo and Parrot implementors. 10:38
10:39 edgar joined
edgar hello,now,who use perl catalyst 10:40
?
if,can email me:ariimood@gmail.com 10:41
thanks
resu To bad then that november-wiki seems to be down now. 10:43
I'll bet edgar won't get his mailbox filled. 10:44
mberends resu: no, he won't. The host of the november-wiki domain is known to be down quite a bit lately. :( 10:45
10:51 muixirt joined 10:52 NorwayGeek joined
muixirt good morning 10:53
mberends muixirt: it's quiet here, as usual early on a sunday 11:00
muixirt ok, no problem :-) 11:01
11:13 masak joined
masak greetings, #perl6ers. 11:13
muixirt \\o 11:14
colomon o/ 11:16
11:16 pmurias joined
mberends \\o masak 11:20
masak mberends o/
today is a perfect day for some Perl 6 coding. 11:21
colomon is remembering how according to our coach, every day was a great day for football... 11:23
masak rt.perl.org/rt3//Public/Bug/Display...l?id=63724 11:27
I believe the second test added is not-quite-right.
11:27 [[synth]] joined
masak it checks for a comma, but according to pmichaud's comment, it could be either a comma or just a backslash. 11:27
11:29 kst joined
colomon is the purpose of the comma or backslash to turn it into a list? 11:33
11:33 xinming_ joined
masak the purpose of the comma is to turn it into a list. the purpose of the backslash is to turn it into a capture. 11:34
colomon does the capture then turn into a list? 11:35
masak no, it turns into a .perl string. 11:36
or emits one, at any rate.
11:37 Whiteknight joined
mberends must work offline for a few hours 11:38
masak what an appropriate quitting message. :)
colomon masak: I thought the point here was that (1,).perl could equal \\(1)? 11:39
.oO(Is mberends a bot too?)
11:40
masak colomon: not sure they do. but they're at least similar enough that both are appropriate as .perlifications of each other.
colomon I guess I'm kind of confused about the purpose of the test, too? 11:42
seems like it is testing what (1,).perl looks like, which I'm guessing is not covered by the spec? 11:44
the goal appears to be to make sure that rakudo isn't returning [] there?
Ah, now I can type properly. 12:00
What I mean is, the .perl spec is
"Returns a perlish representation of the object, so that calling eval on the returned string reproduces the object as accurately as possible."
masak right. 12:01
which leaves several degrees of freedom for implementations.
colomon Presumably the .perl string is supposed to be platform independent?
masak no.
colomon eh?
masak er, I mean, the only constraint on it is what you just quoted. 12:02
colomon specifically meant "perl implementation independent"...
masak beyond that, it may differ from implementation to implementation, or even from invocation to invocation.
huf so it should say "calling eval in the same process"? 12:03
jnthn o/
masak Bool.pick() ?? '(1,)' !! '\\(1)
'
jnthn: \\o
colomon masak: so if I write the string out to a file, there's no guarantee that the same script restarted will be able to make sense of it? 12:04
masak well, yes.
because the degrees of freedom disappear when running eval on the string.
jnthn In general, I'd imagine the thing that gets spat out should be feedable to eval. 12:05
To get the right kind of thing back again.
pmurias it might not be always possible
jnthn The obvious problem you're going to run into is if you're holding references to resources.
e.g. if you try to .perl a file handle, that's really not going to work out too well. 12:06
masak there's no good solution to that anyway.
no good general solution, I mean.
colomon right.
12:06 meppl joined
colomon I'm wondering about the small cases here, though, that definitely should be serializable. Like a list of Ints. 12:06
jnthn I'd expect a list of ints not to be a problem. 12:07
pmurias and evaling stuff is a potential security/performance risk
masak as always.
jnthn The only thing that trips people up with .perl and lists is remembering that .perl considers the thing in scalar context.
12:07 zamolxes joined
colomon I'm specifically looking at the thing masak posted the link to, rt.perl.org/rt3//Public/Bug/Display...l?id=63724 12:10
the new tests test that (1,2,3).perl returns something with parans and a comma.
s/parans/parens/ 12:11
I'm trying to understand why (if?) that makes sense as a test.
masak my thesis is that the second test is too strict. 12:12
because it might as well (as pmichaud points out in the OP of the ticket) be a backslash as a comma. 12:13
12:13 NorwayGeek joined
jnthn Aye. 12:14
colomon right. but my thesis is it is too strict because it requires ( and ). Or possibly not strict enough because it doesn't test against other things in the string.
jnthn It should probably have all of 1, 2 and 3 in there somewhere. ;-)
masak heh :) 12:15
colomon Why?
(1, 1+1, 1+1+1)
or better yet 1...3
jnthn colomon: Because while we Rakudo devs may be maoschistic, we're also lazy. :-) 12:16
masak and while we're at it, those .* thingies make me want to rewrite them as <-[,]>* or something.
jnthn colomon: I mean, sure, those would work but...they're silly.
;-)
masak it's a small string, but still. no need to waste CPU resources.
12:17 jferrero joined
colomon I'm not encouraging Rakudo to change, I'm just thinking it's rude to encode Rakudo's behavior into the test suite. 12:18
jnthn Yeah, testing .perl output is a tricky one. 12:20
I guess "does it round-trip with eval" may be a good approach.
masak nod.
we're not really interested in the actual output of .perl 12:21
only whether it round-trips.
jnthn I think that approach eliminates a lot of problems with testing it. :-) 12:22
colomon :) 12:23
My impression is the ok $dehydrated ~~ / '(' .* ',' .* ')' / test is actually meant to test that Rakudo isn't returning square brackets there, right? 12:25
masak judging from the history of that ticket, yes. 12:26
colomon Do things like that make sense to put in the general test suite? 12:27
12:27 rdice joined
masak what things? the actual test, or the thing it intended to test? 12:28
colomon Tests for behavior we don't want Rakudo doing, but which in theory are legal Perl 6. :) 12:30
masak no. it does not make sense. 12:31
jnthn masak: resig2 (note the 2 - ignore resig) is down to just 3 test files with issues so far as I can see. 12:35
masak: The only one you're likely to hit is if you have code that uses .wrap, since it's bizzarely broken.
masak: Other than that, you should find that things generally work. 12:36
masak I don't hink I do.
ok, I'll give resig2 a whirl.
jnthn OK. I need to re-arrange the way it builds, so you may have build issues.
masak if I do, I'll let you know. 12:37
jnthn (Going to link the binder code into the PMC...)
12:38 NorwayGeek joined
masak I'm starting by running the tests in November and Druid, as a sort of control group. 12:42
proto doesn't have any tests. 12:43
but I can run a few commands and see that it works. 12:44
jnthn *nod* 12:46
masak a few failures in November (control group). I've known about them for a long time, since I get nightly smokes of it, but I seem to have some sort of mental block against taking care of them. 12:48
jnthn Aye. 12:49
I don't promise that resig2 will magically fix all of your tests. :-P
masak heh :)
done. two test failures each in one file, and two files which died before the first test. 12:50
now checking out and building resig2.
colomon Any ideas why isa_ok( eval Rat.new(1, 3).perl, Rat, 'eval Rat.new.perl is Rat' ); gets No applicable candidates found to dispatch to for 'isa_ok' ? 12:51
jnthn colomon: You passed all three parameters to eval, and only one string parameter to isa_ok 12:52
erm
I mean, only the return of eval to isa_ok
colomon d'oh!
jnthn isa_ok( eval(Rat.new(1, 3).perl), Rat, 'eval...') 12:53
masak ...been there, done that... :)
jnthn: src/binder/bind.ar: No such file or directory
colomon I was modeling my test on an existing test that was skipped -- and apparently wrong. :) 12:54
jnthn masak: hah
masak: Yes, that's exactly the reason I need to change the way the build works. :-/ 12:55
masak ok.
jnthn hates such things
masak I'm unable to go further at this point.
jnthn Aye, I feared you may hit that issue.
masak I'm glad I hit that issue in a branch, and not in trunk. 12:56
s/trunk/master/
jnthn I guess I could try and work out how to fix this approach, but it's not worth the pain.
masak that's entirely up to you.
jnthn (Basically, instead of building the binder in a separate library, we'll build it as part of the dynpmcs library, and then do *mumble* to make the dynops able to call it.) 12:57
masak :) 12:58
pugs_svn r28815 | colomon++ | [t/spec] Added four new tests for Rat.perl, and fixed up a syntax error in the (skipped) existing one.
12:59 desertm4x joined 13:00 payload joined
jnthn masak: I'll do that when I've nommed lunch, and with look you can do some testing while I go and do my Slovak homework. ;-) 13:02
masak deal.
13:06 kst joined
pugs_svn r28816 | colomon++ | [t/spec] Add tests for Complex.perl. 13:17
colomon Looking at int.t now... is, say, 21 guaranteed to be an Int? 13:28
rakudo: say 1.WHAT;
p6eval rakudo 24ebf3: OUTPUT«Int()␤»
masak colomon: I'd say yes. 13:29
colomon I'm not sure anything tests for that right now.
masak the literal 21 always has the type Int.
jnthn Aye. I dobut anything more Interesting could happen to it.
colomon ah, maybe in S02-builtin / num.t 13:30
jnthn: arrrrrrrrggggghhhhh....
I guess we sort of test that: my $a = 1; isa_ok($a, Int); 13:31
also -1, but interestingly, we don't test 0. :
:) 13:32
13:36 Confield joined
colomon rakudo: say -12.perl; 13:39
p6eval rakudo 24ebf3: OUTPUT«-12␤»
colomon rakudo: say eval(-12.perl) 13:40
p6eval rakudo 24ebf3: OUTPUT«Parameter type check failed on call to 'eval'.␤in Main (file <unknown>, line <unknown>)␤»
jnthn ...huh.. 13:41
colomon yeah, exactly.
rakudo: say eval("-12");
p6eval rakudo 24ebf3: OUTPUT«-12␤»
colomon std: say eval(-12.perl)
p6eval std 28816: OUTPUT«ok 00:02 110m␤»
masak STD.pm only checks compile-time issues. 13:42
not things like types and binding.
colomon masak: sure, I was just wondering if there might be something subtle I didn't understand. 13:43
(in this particular case, as I know that in general there is a universe of subtle I don't understand.)
rakudo: say eval((-12).perl)
p6eval rakudo 24ebf3: OUTPUT«-12␤»
masak that would be it. :) 13:44
method-dot binds tighter than unary minus.
jnthn oh! 13:45
colomon but why does say -12.perl make sense, then?
wouldn't it be say -"12"?
rakudo: say -"12" 13:46
p6eval rakudo 24ebf3: OUTPUT«-12␤»
masak :)
jnthn colomon: - coerces "12" to something numeric.
masak colomon: this is Perl.
colomon oh
jnthn Thing is, the result is numeric.
And eval wants a Str.
masak Perl does What You Mean. so even if you pass unary minus a Str, it understands what to do.
colomon okay, that makes sense. time to add ()s all around.
pugs_svn r28817 | colomon++ | [t/spec] Tests for Int.perl. 13:48
jnthn masak: I'm into the build fix. :-) 13:53
colomon rakudo: say 1.Num.perl
p6eval rakudo 24ebf3: OUTPUT«1␤»
colomon So, that's a bug, isn't it? 13:54
say eval(1.Num.perl).WHAT
rakudo: say eval(1.Num.perl).WHAT
p6eval rakudo 24ebf3: OUTPUT«Int()␤»
colomon appear to have crashed Finder (?) on OS X, which is weird and awkward... 13:56
colomon but it got better, hmmm. 13:57
jnthn but...but...OS X is teh perfect, no? 13:58
masak jnthn: cool. I'm presently investigating what I think is an rw bug I found yesterday.
colomon jnthn: nah, OS X is just the ass-kicking.
I'm blaming this one on iTunes... 13:59
14:02 ejs joined
jnthn is sure it won't stop masak writing to RT ;-) 14:04
colomon nothing can stop that.
masak :) 14:05
colomon wow, S02-builtin_data_types/num.t tests seem kind of dodgy
or at least, the comments are worse than the norm 14:06
14:06 Psyche^ joined
colomon ah, just a set of awkwardly labeled tests. 14:06
jnthn masak: OK, think I'm done...checking it survives the sanity tests, though really if I've screwed this up it really shouldn't even start up. 14:07
masak jnthn: trying. 14:08
jnthn masak: ok, just pushed. 14:09
masak: make spectest results (minus any failures you see in master, if any) would also be of interest, provided it builds. 14:10
masak understood. 14:11
jnthn (And yes, I did have to go and look up the C function pointer syntax. Like very damm time I use them. ;-))
masak in the meantime, you might want to update .gitignore to ignore src/binder/bind.bundle src/binder/bind.o
jnthn masak: where's that found?
oh, found it 14:12
masak nothing like a clean 'git status'.
jnthn hmm. may add a few other things too 14:13
masak: I'm curious, what in this .gitignore is keeping *.o files in src/pmc/ appearing in git status? 14:14
masak jnthn: nothing in that one, but *.o in src/pmc/ 14:15
er, src/pmc/.gitignore
jnthn ah 14:16
masak git++
build went fine.
colomon \\o/ 14:17
masak now for testing the cheese.
14:18 frew joined
jnthn mmm...cheese 14:18
masak proto seems to work fine. 14:19
colomon cheese? my rakudo doesn't have cheese.... :(
jnthn masak: Added them, and also a bunch of other things that make git status on Win32 rather cleaner.
masak jnthn++
jnthn colomon: You must live in a country not in sufficient proximity to Switzerland. Sorry.
colomon jnthn: :( 14:20
jnthn europe++ ;-)
jnthn is a - albeit rather long - train ride from Switzerland now. :-) 14:21
masak Druid runs fine and passes all tests. 14:22
jnthn \\o/
.oO( screw .wrap...let's merge! )
masak now we're only waiting to hear from November.
colomon has to admit he prefers British, French, Italian, and Boerenkaas... Even the best American cheese he's had is lacking
jnthn wonders id Druid has any measurable performance increase.
*if 14:23
masak jnthn: you, know I actually think so. want me to go back and actually measure later?
s/, know/ know, /
jnthn masak: I'd be curious. I know tools/benchmark.pl looks better. 14:24
masak: But they're microbenchmarks, not really apps.
masak it would be interesting.
jnthn masak: Of course, this does nothing to improve parsing speed, just runtime.
masak November is reporting something.
jnthn Heh, I figured the cheese would have some holes. :-/ 14:25
masak I don't recall seeing 'Too many positional parameters passed' last time around.
colomon I'm curious how the spectests' run time will be affected.
masak might be November that's doing something naughty, of course.
jnthn masak: That is *the* error message that has shown up in most cases where I've needed to fix spectests. 14:26
pugs_svn r28818 | colomon++ | [t/spec] Test Num.perl. Who'd have thought that 1.0.perl wouldn't work in Rakudo?
masak well, I might just have one more case for you, then.
jnthn masak: I'm quite open to it being a bug too, of course.
masak: One other thing I need to do is improve the errors. They're really crap right now. 14:27
It's a couple of hours work, so won't cause much delay.
masak I'll make sure to help with the RT part of that. :P
jnthn Oh, I plan to do it before the merge.
I don't want people's firt impresison of this to be "gah, it just got harder to debug" :-)
masak :) 14:28
sounds wise.
jnthn btw, on performance, there's still loads of possible optimizations to go yet.
colomon bummer, I was hoping to get the merge this morning. ;)
jnthn Any wins so far are just out of better overall architecture.
masak: Slovak homework calls. I'll be back in a little bit. 14:29
colomon masak: any hints on searching RT for issues? I find the interface so hideous I assume I must be doing something wrong.... 14:30
masak jnthn: I think November is the one who's wrong here. I'm looking at it and not seeing how it could ever have worked...
jnthn: so green light from the cheese! \\o/
colomon: I use the interface sometimes. it's hideous, but it works. kinda.
colomon: when I can't get it to work, I search my Gmail. 14:31
colomon Ha! If only I had all the bug reports in my Gmail...
carlin all my mwbot tests pass on resig :-)
masak carlin++ # cheese contributor 14:32
the strange rw bug I was in the middle of tracking down persists on resig2. :P
14:39 zloyrusskiy joined 14:40 Kodi joined
Kodi rakudo: repeat {say 'body';} while (say 'condition'; 0); 14:40
p6eval rakudo 24ebf3: OUTPUT«body␤condition␤»
Kodi repeat say 'body' while (say 'condition'; 0); 14:41
rakudo: repeat say 'body' while (say 'condition'; 0);
p6eval rakudo 24ebf3: OUTPUT«condition␤»
masak Kodi: that latter one probably doesn't mean what you think it does. 14:42
Kodi What does it mean? The spec doesn't seem to say anything about using repeat as a statement modifier.
masak Kodi: 'repeat' is taken as a function call, but it never gets called.
Kodi So it gets interperted as a function just because it's in an illegal position for the loop keyword? 14:43
masak more like because it's not followed by a block.
14:44 kst joined
Kodi Very well. It's surprising, but I suppose one doesn't need "repeat ... while" very much as a statement modifier anyway. Thanks. 14:44
14:44 icwiener joined
masak I'm not sure I see the difference between 'repeate A while B' and just 'A while B'. 14:47
is it that A is executed at least once in the former case?
s/repeate/repeat/
Kodi Right. That's what I'd think.
carlin Nice, a couple of bugs I've reported are gone in resig 14:51
14:53 payload1 joined
masak perl6: class A { has $.a; }; my $a = A.new(:$a); say $a.a.perl 14:57
p6eval pugs: OUTPUT«\\undef␤»
..rakudo 24ebf3: OUTPUT«undef␤»
..elf 28818: OUTPUT«Unknown rule: colonpair__varname␤It needs to be added to ast_handlers.␤ at ./elf_h line 2850␤»
15:01 Kodi left 15:11 am0c joined 15:12 nihiliad joined 15:15 desertm4x joined
masak right then. 15:15
rakudo: class A { has @!b; method c($x) { @!b.push($x) }; method d($i) { @!b[$i] } }; class E { has $!f = A.new; method push($x) { $!f.c($x); }; method postcircumfix:<[ ]>($i) { $!f.d($i) } }; my $m = E.new(); $m.push(5); $m[0] = 42;
p6eval rakudo 24ebf3: OUTPUT«Cannot assign to readonly variable.␤in Main (file <unknown>, line <unknown>)␤»
masak could someone explain to me what it is I cannot assign to, and why? 15:16
yes, this is possibly the most complicated bug I've found, ever.
shall I give a walkthrough?
fine, I'll give a walkthrough. 15:17
class A shouldn't be needed. it's there because of another rakudobug which prevents .[] from being used inside a postcircumfix:<[ ]> method.
15:17 Ptn| joined
masak so, thinking away class A, what's really there is class E pretending to be an object which does .push and .[] 15:18
much like an Array would.
so we create a new such object, push 5 to it, and then try to change the first element of the object to 42. 15:19
essentially, it should be equivalent to this:
rakudo: my @a; @a.push(5); @a[0] = 42; say @a.perl
p6eval rakudo 24ebf3: OUTPUT«[42]␤»
masak which doesn't blow up. 15:20
15:33 s1n left 15:34 jan_ joined
pmichaud I think I might be able to (quickly) fix the postcircumfix:[] bug. 15:35
15:36 ejs joined
masak the one making class A necessary? 15:41
that's all very well, but what about the above error? is it a rakudobug? or am I missing something about the readonlyness of things? 15:44
15:44 zloyrusskiy joined 15:52 jan_ joined
pmichaud I 15:53
I'm thinking it's the push bug
(Unless that one has been fixed)
jnthn back
pmichaud oh, maybe not
hmmm
masak I don't recognize the push bug in it. 15:54
I mean, the push bug never told me something was readonly.
jnthn masak: Thanks for the testing!
masak: And relieved by the outcome.
pmichaud yes, but were you ever pushing a readonly item?
masak jnthn: you're welcome, and good luck!
pmichaud method c($x) { @!b.push($x) }; 15:55
jnthn masak: Did you do a make spectest run, btw?
pmichaud $x is a readonly reference to a value, there
masak jnthn: no. I'll do that now.
pmichaud so what gets pushed onto @!b is the readonly reference
which means that attempting to modify that reference fails
masak pmichaud: that sounds reasonable.
so maybe it is the push bug. :/
pmichaud (all of this because .push() tends to put the actual object into an array instead of a copy of the object)
jnthn pmichaud: And doesn't descalarref it... 15:56
masak I'll see if it goes away when I eliminate push from the example.
pmichaud well, if we descalarref it, then we end up putting the actual object into the array, which then gets modified on the assignment
which is equally bad :)
that becomes the traditional push bug, then :-)
masak rakudo: class A { has @!b; method c($x) { @!b[+*] = $x }; method d($i) { @!b[$i] } }; class E { has $!f = A.new; method push($x) { $!f.c($x); }; method postcircumfix:<[ ]>($i) { $!f.d($i) } }; my $m = E.new(); $m.push(5); $m[0] = 42; say $m[0] 15:57
p6eval rakudo 24ebf3: OUTPUT«42␤»
masak pmichaud++ \\o/
pmichaud what .push really needs to do is to add the same value that would normally appear in an assignment
jnthn pmichaud: Well, it's not quite .clone we want surely, but .Sclar?
*.Scalar
pmichaud let me review assignment
one moment
jnthn kk
pmichaud: I have a feeling I made that bug go away once, IIRC by doing .Scalar on the thing we were meant to push.
masak jnthn: do I report spectest results to you running, or all in one bunch at the end? 15:58
pmichaud .Scalar doesn't sound quite right, though.
heh
masak s/running/concurrently/
jnthn pmichaud: No, and it caused other problems.
pmichaud: However, it looked to be like what assignment was doing to get the thingy to assign, so...
15:58 icwiener joined 15:59 kst joined
pmichaud the simple solution for push($x) would be to push a new Perl6Object onto the array, and then assign $x to it 15:59
jnthn masak: At the end is fine.
diakopter (aside) is puzzling over assignment/referencing/copying
jnthn pmichaud: Well, or create one, assing to it, and push it. :-)
But yes.
erm, assign
assing is a verb I've not seen used much.
pmichaud I'll do that and see what happens. Do we have a test or ticket for the push bug handy?
jnthn pmichaud: Only if handy means "somewhere in RT" ;-) 16:00
pmichaud diakopter: assignment/referencing/copying/interpolation is still fuzzily specced. And Rakudo has had to chase a moving spec over time, so there are a lot of fossils lying about.
jnthn pmichaud: I know there's an RT ticket 'cus I have visited this issue at least once before.
pmichaud I think I'll fix those two bugs and add them as Rakudo day stuff.
(been so busy with pge, haven't done much rakudo day) 16:01
s/pge/nqp-rx/
Have I mentioned lately how incredibly happy I am with nqp-rx at the moment? And more and more of it is being written in NQP itself... I've gotten to the place where I really don't like writing the PIR code :)
jnthn pmichaud: heh, it's the same with resig ;-)
diakopter pmichaud: thanks. I'll be watching closely for the resolutions (I mean, workarounds :)
pmichaud resolutions, I hope. As we start putting the new grammar in place, I expect/hope to be pushing TimToady++ for resolutions on parcel/capture etc. 16:02
jnthn pmichaud: Taht is, being busy with it. Not being crazily happy with it. ;-)
There's some way to go yet before I'm feeling that happy. ;-)
pmichaud I started writing regexes for handling quotes last night; previously this was all done in (pure) PIR, now it's much cleaner 16:03
I like the version I have better than STD.pm (But that might just be because my version is too simplified for Perl 6 use. We'll see.)
jnthn :-)
pmichaud aha 16:04
16:04 meppl joined
pmichaud RT #69548. Submitted by someone named "masak". Welcome, new bug contributor!! :-) :-) 16:04
jnthn pmichaud: When do you estimate we'll start getting to the point of starting to build the grammar on top of the new nqp?
masak pmichaud: thank you. I've always wanted to contribute in some small way.
carlin jnthn: gist.github.com/212728
pmichaud next week
masak after the release? 16:05
pmichaud shortly after the october release, as planned.
but I'm also going to wait for resig to land, if possible.
jnthn carlin: Did you test resig or resig2?
pmichaud anyway, it'll be shortly after later_of( resig_branch, release )
carlin resig2 16:06
jnthn carlin: oh, wait
Seems a bunch of these "fails" are unexpected passes.
carlin: t/spec/S02-lexical-conventions/unicode.rakudo is an odd one.
I don't see that failing...
pmichaud oh, hmmm 16:07
currently .push looks something like this
jnthn carlin: Can you show me the output of t/spec/S03-junctions/autothreading.rakudo
?
pmichaud method push( *@vals )
oh, never mind
I see what's happening.
jnthn carlin: As that one completely passes for me. 16:08
carlin jnthn: gist.github.com/212730 16:09
diakopter pmurias: hi
jnthn carlin: oh, no error?! 16:10
wtf.
carlin: Does it segmentation fault if you run it just as perl6 ... ?
pmichaud question.... if I have
my Int @a; @a.push(1,2,3,'4',5);
I get a type error when attempting to push the '4'
what should be the value of @a if the exception is caught? 16:11
i.e., should we typecheck everything first, then push, or typecheck each element individually as it is being pushed?
(currently we typecheck everything, then push) 16:12
carlin carlin@cerberus:~/Desktop/resig2$ ./perl6 t/spec/S03-junctions/autothreading.t
1..78
Segmentation fault
diakopter can .push handle lazy slurpy?
pmichaud might. that would argue for typecheck as elements go in instead of all-at-once
I'll keep the same semantics we have now. 16:13
jnthn carlin: Ouch.
carlin: Does t/spec/S02-lexical-conventions/unicode.rakudo fail for you at all in master? 16:15
diakopter is there a way to make slot/index assignment (and unshift/push) on an array as auto-coercing to Int, Str, whatever
I mean, force-coercing 16:16
pmichaud not yet
jnthn diakopter: There's been some discussion of introducing coercion types to Perl 6 before now.
diakopter: You can find it in irclogs.
diakopter: Nothing made spec yet though.
diakopter jnthn: maybe!
carlin jnthn: Nope, Result: PASS
diakopter (maybe I can find it; they're long)
pmichaud diakopter: look for things like Int(Any)
jnthn carlin: Heh. How does it fail, out of interest?
(again, run from command line) 16:17
(rather than harness)
dj_goku so I am wanting to help. I want to write perl6, I have found: perlgeek.de/en/article/5-to-6 , I am currently building parrot, and next will be rakudo. 16:19
16:20 rdice joined
carlin jnthn: Unexpected named parameters passed 16:21
after test 26
jnthn carlin: Ah, it's an "only if you have ICU" test, and I don't.
16:21 Ptn| left
diakopter dj_goku: hi 16:23
dj_goku diakopter: hola, como estas?
diakopter muy bueno. and you? 16:24
dj_goku diakopter: good. wondering where I should start.
diakopter note you said you wanted to write 'perl6' as opposed to 'Perl 6' :D So, to which perl6 would you like to contribute? ;) 16:25
(kidding, slightly, as usual)
jnthn carlin: So the description of the last failing test is "Unicode subs with no parameters"?
carlin: oh, I meant "evaluation" 16:26
jnthn is trying to work out what it could be..
carlin jnthn: last test is: ok 26 - Unicode subs with one parameter (parsed as prefix ops) 16:27
jnthn carlin: aha
So it's the named params tests that fail. Gotcha.
diakopter dj_goku: good ways to learn the language: 1) read the spec (with the spectests inlined) at perlcabal.org/syn 2) write more tests for areas that aren't covered as well 3) hack on an existing implementation 4) start your own implementation
dj_goku diakopter: hrm, didn't know there was a different other than a space :), but I read a couple posts about why we should be using Perl 6 now to help it move along.
pmichaud better than hacking on implementations might be to write applications 16:28
jnthn dj_goku: Other ways: write Perl 6 modules, or apps, or join one of the projects doing so (e.g. Web.pm effort)
pmichaud or start contributing to existing perl 6 module projects
dj_goku pmichaud: writing applications!
jnthn carlin: I've a guess what may be wrong there. 16:29
carlin: It's probably not awfully hard to fix.
carlin: The segfault, trickier, since it doesn't segv here. I'll see if it segfaults for masak too... 16:30
masak segfaults
jnthn masak: I was talking about the test. :-P
masak which one? I wasn't paying attention. :/
jnthn carlin: out of interest - platform?
carlin: and bitness?
masak: S03-junctions/autothreading.rakudo 16:31
carlin jnthn: Linux cerberus 2.6.28-15-generic #52-Ubuntu SMP Wed Sep 9 10:48:52 UTC 2009 x86_64 GNU/Linux
masak that one ran fine in the harness over here.
dj_goku diakopter: alright am looking now at.
jnthn carlin: ah, 64-bit, yes?
dj_goku jnthn: that is what I am thinking I am interested in.
jnthn masak: Are you 64 or 32?
carlin jnthn: yep, amd64
masak jnthn: I can never remember. :/ 16:32
it's an Intel Core Duo.
jnthn Probably 32-bit then.
16:32 zloyrusskiy joined
masak s/Duo/2 Duo/. 16:32
jnthn Which means it maybe is "just" a 64-bit platform issue. 16:33
I have access to one of those too...I'll give it a spin.
carlin: If you're able to obtain a backtrace, that'd be interesting to see.
pmichaud d'oh! It becomes obvious what to do once you look at the coe. 16:34
*code
$P0 = new ['Perl6Scalar']; setprop $P0, 'type', type; $P0.'!STORE'($P1)
push self, $P0
!STORE handles the typechecking already. 16:35
spectesting new push and unshift now.
dj_goku diakopter: perlcabal.org/syn 2 doesn't work, perlcabal.org/syn works.
jnthn I'll be back in a bit - my fridge and stomach are both lacking in content... 16:38
diakopter dj_goku: oh; 2) was part of the next item in the list 16:40
dj_goku diakopter: hehe :)
carlin jnthn: gist.github.com/212741 # backtrace 16:42
diakopter use Tweet_sigils_only; 16:45
16:55 mberends joined
mberends senses a diakopter about 16:56
diakopter buds another self 16:57
mberends diakopter[0] | diakopter[1] : is the coast clear for me to add some comments to sprixel.pl and Act.js? 16:58
diakopter those two files, yes :)
mberends oki
diakopter hopefully they're much more perspicuous than formerly. 16:59
Act.js, at least.
dj_goku hrm make spectest for parrot died.
mberends there's some pretty crafty .js code in there that deserves explaining 17:00
diakopter basically, the .exec virtual method adds another layer of abstraction around each activation; by default it dispatches to the opcode 'types' hash 17:02
mberends btw, it doesn't actually *run* any code yet, does it? I tried...
diakopter but the opcodes themselves are free to construct activations with overridden .exec methods
diakopter checks in something that 'runs' :) 17:03
mberends :)
jnthn carlin: Aww, there. :-( 17:05
Гровно.
:-/
mberends
.oO( hmm, perspicuous, now there's a nice word... )
jnthn mberends: I wish my English was as good as yours. :-) 17:06
pmichaud (push/unshift) uh oh, we seem to run into a conflict with actions.pm using push and unshift. :-(
or at least unshift.
mberends :-) I bet you say that to all the Europeans ;) 17:07
jnthn :-P
pmichaud: That sounds kinda "huh what ouch" :-S
pmichaud: Is it 'cus they end up getting installed into RPA? 17:08
dj_goku t/spec/S06-signature/optional.rakudo - Failed test 12
17:08 zloyrusskiy joined
carlin S03-junctions/autothreading doesn't segfault on my 32bit laptop 17:09
17:09 __ash__ joined
jnthn I expect resig2 will merge into Rakudo master tomorrow. There's not that many failures left now. 17:09
diakopter dj_goku: what OS/architecture
jnthn carlin: It sounds like 64-bit only then.
dj_goku: I don't think you're the only one seeing that failure. 17:10
pmichaud jnthn: yes
dj_goku diakopter: irclog.perlgeek.de/parrot/2009-10-17 , osx snow leopard, 64-bit
jnthn: nope see ^^
masak jnthn: gist.github.com/212754
pmichaud it's also the case that PAST expects push/unshift to push the actual objects, not copies/ObjectRefs 17:11
jnthn masak: Those are consistent with what I get.
moritz_ re
masak sounds promising.
moritz_! \\o/
diakopter where does rakudo specify ~Int
or I suppose that's in nqp somewhere 17:12
pmichaud ... ~Int ?
pmurias diakopter: hi
jnthn diakopter: Probably provided by Parrot akshually.
moritz_ presumably as a get_str vtable method
jnthn hi moritz_ :-)
masak: Those failures are all ones I think I can triage tomorrow.
masak cool.
jnthn carlin: That 64-bit failure is especially irritating in that it's occuring in code that will immediately be thrown away as soon as the Parrot folks land their pcc_reapply branch. 17:13
17:13 kst joined
diakopter pmichaud: method .Str in Int.pm: ~self 17:13
pmichaud ah
that's one of those cases where I think we have the operators and methods backwards 17:14
jnthn carlin: Which is in the nearish future.
pmichaud but basically in Rakudo, prefix:<~> results in a call to Parrot's get_string vtable function
diakopter ok 17:15
poor dalek 17:17
17:17 dalek joined
mberends dalek++ # rising phoenix-like 17:18
moritz_ uhm
I just pushed a few commits to the book repo - maybe 'twas too much for poor ol' dalek
jnthn moritz_: I've done similar to dalek before. 17:19
moritz_: It seems it's freenode that can't handle it.
moritz_: Maybe dalek just needs to talk slower when he's a lot to say. :-)
moritz_ aye
diakopter Infinoid and I spent quite a while trying to persuade botnix to throttle the first 2 messages in a series as much as the rest of them.... but we never succeeded. 17:20
17:20 zloyrusskiy joined
moritz_ rakudo: say 1.0.perl 17:30
p6eval rakudo 24ebf3: OUTPUT«1␤»
moritz_ rakudo: say 1.01.perl
p6eval rakudo 24ebf3: OUTPUT«1.01␤» 17:31
17:32 simcop238 joined
diakopter rakudo: say &perl.perl.perl 17:32
p6eval rakudo 24ebf3: OUTPUT«"undef"␤»
moritz_ there's some cuteness attached to that ;-)
17:33 Ptn| joined 17:36 Confield left 17:37 xenoterracide joined, Psyche^ joined
pmichaud jnthn: when we redo the grammar work, I'm thinking we may also attempt to eliminate our type mapping cheats between rakudo types and parrot types 17:40
that may be possible now that there are fewer typename conflicts 17:41
moritz_ as long as you're not afraid to re-do too much...
jnthn pmichaud: If it's just an issue of naming, then yes, we may want to consider that. 17:44
masak isn't it Hash at both levels? 17:45
jnthn pmichaud: Though I think we should leave the larger lists / hashes refactor until later.
pmichaud there's two items of interest 17:46
(1) call the Rakudo classes by their real names -- i.e., 'Array' instead of 'Perl6Array' 17:47
(2) don't poke our methods into the Parrot guts
although I'm thinking the unshift issue I'm encountering must be something other than either of those two.
it's a bit challenging to track down. 17:48
masak I'm just leaving, but thanks. :)
op-ness doesn't stick on me...
TimToady actually, that was bot-ness 17:49
17:49 tak11 joined
masak ahahah. 17:49
jnthn masakbot!
:D
masak bots a bit
mberends masakbot++
jnthn pmichaud: They're both wrothwhile trying to achieve. I think that (1) we can surely do, and (2) we can surely try for. 17:51
pmichaud: At least we'll find out where we stand. 17:52
diakopter TimToady: help? how do I get STD to send the ast of the setting without reparsing it
17:52 payload joined
pmichaud afk for a bit -- lunch 17:53
jnthn pmichaud: The other question I had is, as we re-build this, are we going to just do lexicals as we'd like to see them too?
pmichaud I'm thinking likely, yes.
jnthn pmichaud: ok, catch me after lunch :-)
pmichaud I also want to fix readonly-ness
jnthn pmichaud: Again, probably worth doing amongst this.
TimToady diakopter: why not just Dump the YAML after the parse?
pmichaud if we're going to be redoing things "from the ground up", we might as well get as much cruft out of the way as we can 17:54
jnthn pmichaud: I'd also like us to think how to handle nested packages well too. Those are currently also epic mess.
TimToady I suppose we could add an option to dump the ast along with the .syml
diakopter hears some *jfdia* (... it all) in pmichaud's words
pmichaud I'm going to start with that plan in mind, and if after a week we find we're blocked or otherwise spinning our wheels, we can make a new plan
jnthn pmichaud: OK, let's try for it.
pmichaud well, nested packages should be easier also, since we have a much more reasonable lexicals implementation 17:55
jnthn pmichaud: I also suspect that I'm going to switch to working of my grant items inside the new grammar/actions.
pmichaud that can work
diakopter lol at 'epic mess'
jnthn pmichaud: Because it'll be silly to e.g. work out how to parse nested signatures in the current branch.
pmichaud agreed totally
jnthn Only to toss it.
OK. And my other task is multiple return values.
pmichaud we really need capture/parcel spec to do that, though. 17:56
masak ok, dinnertime. see ya!
jnthn Yes, I'm aware some spec effort will be needed there.
masak: nom happily
masak thanks :)
pmichaud lunchtime here -- bbiaw
diakopter TimToady: that would be great, since sprixel is wanting to actually execute the setting 17:57
moritz_ the nom-induced quietness will give me some time to backlog ;-)
diakopter TimToady: would I/you add that to ./setting ? 17:58
emitted to sprixelCORE.ast.yaml or something?
or just sprixelCORE.ast ? 17:59
actually, how about sprixelCORE.setting.ast.store 18:00
much faster to load
mberends diakopter: $forgiveness > $permission 18:02
18:03 zloyrusskiy joined
diakopter yeah but, $duplicate_or_race_condition_of_conflicting_work < $informal_approval_or_locking 18:06
18:06 Ptn| left
colomon moritz_: I submitted tests (but not a bug) for the 1.0.perl eq "1" thing this morning. 18:06
pugs_svn r28819 | mberends++ | [sprixel] hasty documentation commit before imminent setting compile change
diakopter :) 18:07
moritz_ colomon: yes, I've seen it
colomon: feel free to ticket it too
colomon moritz_: I always worry these things have been submitted before (especially a simple one like that) but I have very unsuccessful at searching RT, so I hesitate. 18:08
moritz_ colomon: don't. Duplicates will be weeded out over time 18:09
colomon rakudo: say eval(1.0.perl).WHAT; 18:15
p6eval rakudo 24ebf3: OUTPUT«Int()␤»
colomon rakudo: say 1.0.perl
p6eval rakudo 24ebf3: OUTPUT«1␤»
colomon Done. 18:17
moritz_ colomon++
diakopter TimToady: STD doesn't put the .syml file in the same dir as the .pm (as in the ones under lib/); should it?
(and should it do the same with .ast[.store]) 18:18
jnthn colomon: I expect I'll be giving the RT queue a good reviewing sometime in the next week or so, also. 18:20
18:20 desertm4x_ joined
jnthn colomon: To close a bunch of tickets related to stuff fixed in resig. 18:20
I usually find and clear up some dupes as I do such things. :-)
18:22 __ash__ joined
colomon jnthn: I'll keep that in mind. :) 18:23
18:25 shinobi-cl joined 18:26 tak11 joined
pugs_svn r28820 | colomon++ | [t/spec] Tag the todo tests with their issue number (RT 69869). 18:26
shinobi-cl rakudo: class AAA; has $.valA; has $.valB; submethod BUILD { say $.valA, $.valB; }; my AAA $test .= new (valA => '2C', valB=>'X'); 18:27
p6eval rakudo 24ebf3: OUTPUT«Use of uninitialized value␤Use of uninitialized value␤␤»
shinobi-cl rakudo: class AAA; has $.valA is rw; has $.valB; submethod BUILD { say $.valA, $.valB; }; my AAA $test .= new (valA => '2C', valB=>'X'); 18:29
p6eval rakudo 24ebf3: OUTPUT«Use of uninitialized value␤Use of uninitialized value␤␤»
18:31 eternaleye joined 18:34 Psyche^ joined 18:35 szabgab joined 18:38 am0c joined 18:42 kst joined
pugs_svn r28821 | pmichaud++ | [t/spec]: Test descriptions must not contain '#'. 18:42
pmichaud The current implementation of map (src/setting/Any-list.pm:32) relies on the push bug. 18:45
If anyone wants to look at that and/or fix it.
18:45 markmont joined
moritz_ what's "the push bug"? 18:45
pmichaud currently Array.push pushes the actual object into the array, instead of taking a copy/reference 18:46
thus
rakudo: my @a; my $i = 3; push @a, $i; $i = 4; push @a, $i; say @a.perl;
p6eval rakudo 24ebf3: OUTPUT«[4, 4]␤»
moritz_ oh
to me that's the take() bug ;-)
there's an easy workaround
do { my $x = $_ }
pmichaud they're related, but separate
yes, but the problem is that map() relies on push's current behavior, not the expected behavior 18:47
moritz_ oh
18:47 lumi joined
pmichaud perhaps the workaround for now is Q:PIR 18:49
to avoid the .push method altogether
18:54 markmont left 18:56 payload1 joined 19:00 dj_goku joined
diakopter suffers from Syn fatigue and must refrain from becoming further puzzled 19:06
19:07 szabgab joined
slavik pmichaud: <?{blah == glah}> 19:07
pmichaud nyi
slavik commits suicide
moritz_ don't 19:10
just wait a little longer
it's going to be there quite soon[tm]
Woodi listen what moritz_ say man 19:11
slavik moritz_: around christmas? 19:13
moritz_ slavik: depends on which christmas you mean 19:14
slavik the one for year 2009
moritz_ slavik: but quite a bit before the "Perl 6 is released" christmas
not quite sure
slavik I just want assertions and I think I am good for now
and maybe an easy way to migrate perl5 modules to rakudo 19:15
muixirt do grammars work in rakudo? 19:19
moritz_ yes
(to the extend that anything in rakudo works)
muixirt moritz_: how does it work? I'm only getting invoke() not implemented in class 'Capture' errors 19:20
pmichaud does rakudo have grammar support? yes. Do they work? mostly. Does it support everything list in the synopses about grammars? Not yet.
*listed
moritz_ muixirt: that probably means that you mis-typed some names
"now does it work?" - "fine, if you build it step by step, and test it along the way" 19:21
pmichaud muixirt: could you nopaste your code?
moritz_ I found that for grammars the same truths hold as for any other code: when you're new to it, you should test after every two lines you write 19:22
and only as get more experience it becomes efficient to write more at once
muixirt pmichaud: my code is too ridiculous
pmichaud ah. Rakudo sometimes has difficulty with ridiculous code, yes. :-) :-)
we're still working on the "use Ridiculous;" feature. 19:23
I suspect Damian is in charge of that module.
mberends muixirt: the diagnostics about grammar errors are not helpful enough, so you have to start with something small that works, and gradually expand it, reversing you last change whenever it fails.
moritz_ oh, and don't call a token 'text' ;-) 19:24
or 'from', 'to', 'orig' or so
pmichaud actually, I think 'text' should be gone by now.
maybe not.
but yes, from/to/orig have difficulties.
mberends 'text' wfm afair
moritz_ rakudo: say ('b' ~~ /./).text
p6eval rakudo 24ebf3: OUTPUT«Method 'text' not found for invocant of class 'Match'␤in Main (file src/gen_setting.pm, line 206)␤»
moritz_ mberends: it might work again, yes 19:25
pmichaud and most of those issues are fixed in nqp-rx
moritz_ but it used to fail horribly
back when I wrote my first XML grammar
pmichaud I think the only regex names thus far that cause issues are 'pos' and 'MATCH'
slavik rakudo: say ('b' ~~ /./).WHAT 19:26
p6eval rakudo 24ebf3: OUTPUT«Match()␤»
slavik is there a way to get all attributes/methods/macros for an object?
moritz_ $obj.^methods
and $obj.^attributes
slavik rakudo: say ('b' ~~ /./).^methods
p6eval rakudo 24ebf3: OUTPUT«postcircumfix:{ }postcircumfix:[
..]perlofcapschunksacoshacosecwordscosechcotanatan2srandreverseisapolarucfirstcombtanatancosacosfmtfirsttranschoprindextanhvaluessubstelemschompindexkeyschracotanhpairskvcapitalizepickevalfileatanhcosecexpp5choplcjoincharssinhcanacotanlcfirstrootsredu…
moritz_ macros are NYI, and not tied to an object anyway 19:27
slavik rakudo: say join " - ", ('b' ~~ /./).^methods
p6eval rakudo 24ebf3: OUTPUT«chunks - - - postcircumfix:{ } - 5 - perl - - of - caps - flip - 1 - does - split - 1 - acosh - acosec - words - cosech - cotan - atan2 - srand - reverse - isa - 1 - ucfirst - comb - tan - atan - cos - acos - fmt - first - trans - chop - 1 - tanh - values - 2 - 1 - 1 - 1 -
..keys …
moritz_ the numbers are multi methods that fail to stringify properly
slavik :(
pmichaud I wonder if Parrot would let me patch that.
slavik rakudo: say join " - ", ('b' ~~ /./).^attributes
p6eval rakudo 24ebf3: OUTPUT«␤»
slavik hmm, there isn't any
moritz_ you don't access attributes from the outside anyway 19:28
slavik rakudo: say keys %{ ('b' ~~ /./) }
p6eval rakudo 24ebf3: OUTPUT«get_number() not implemented in class 'Sub'␤in Main (file src/gen_setting.pm, line 206)␤»
slavik interesting
moritz_ the issue here is that Match is a parrot class for now, and thus objects to be proper introspection from Perl 6
slavik moritz_: what about auto accessors and auto setters and such
moritz_ those are methods
jnthn ...did Rakudo just go and parse that as a call to keys with no args, followed by the % operator, followed by a block? :-)
moritz_ slavik: would you submit a bug report for that get_number() not implemented? 19:29
jnthn std: say keys %{ ('b' ~~ /./) }
moritz_ seems like, yes
p6eval std 28821: OUTPUT«[31m===[0mSORRY![31m===[0m␤Obsolete use of %{ ('b' ~~ /./) }; in Perl 6 please use %( ('b' ~~ /./) ) instead at /tmp/BjX9f3ezqw line 1:␤------> [32msay keys %{ ('b' ~~ /./) }[33m⏏[31m<EOL>[0m␤FAILED 00:01 107m␤»
slavik but how can you tell whether they are attributes or "complex" methods
jnthn std++
slavik moritz_: sure, if I knew why it's broken and such
moritz_ slavik: it's %( ... ) in Perl 6
slavik I see
things have changed
moritz_ it's not an appropriate error message
slavik someone should update the periodic table of perl6 operators 19:30
rakudo: say keys %( ('b' ~~ /./) )
p6eval rakudo 24ebf3: OUTPUT«␤»
moritz_ slavik: you can't tell if a method is autogenerated or not - that's part of the encapsulation of classes
muixirt the example grammar Integer doesn't work (and a ; is missing)
slavik moritz_: I prefer perl5 classes for this reason ;)
moritz_ the caller simply doesn't have to care how easy or not-easy $thing.method is
slavik what about having constants in a class? 19:31
moritz_ that works.
they just aren't exportable yet, I think
slavik but they would look like methods, right?
pmichaud package symbols, I think.
slavik I actually haven't figured out the whole writing classes in Perl6 yet :( 19:32
pmichaud allison says I can fix MultiSub in Parrot. \\o/
jnthn \\o/
pmichaud: Without a deprecation cycle? ;-)
pmichaud yes
"it's a 'bug'"
jnthn lol
pmichaud allison++
moritz_ slavik: we're working on a book chapter to explain it better
jnthn 'bug' = word we use when we don't want to wiat a deprecation cycle <grin> 19:33
pmichaud it arguably is a bu
*bug
slavik moritz_: sweet ... is there anything current that will work?
pmichaud actually, I think that MultiSub ought to be inheriting from Sub instead of from RPA
19:33 markam joined
jnthn Oh, I'm not disagreeing with the call, just teasing. :-) 19:33
moritz_ slavik: I'm afraid there's not much to see yet
jnthn pmichaud: MultiSub should has an RPA.
pmichaud that too
jnthn Not be an... 19:34
pmichaud but MultiSub inherits a lot of Sub-like characteristics
er, it ought to inherit a lot of sub-like characteristics
oh well.
fixing
jnthn I'm not sure it should really inherit from either.
pmichaud I could see that too.
jnthn I could agree they should both inherit from some abstract Invokable that knows the commonalities.
moritz_ pmichaud: btw removing the push-bug from map causes only one test failure in the complete spectests 19:35
jnthn But of course, with a name that doesn't suck. ;-)
pmichaud moritz_: I have a fix for map.
my spectest is about to finish.
just waiting for trig tests to complete
slavik is there an easy way of porting perl5 code to perl6?\\
moritz_ slavik: I know none 19:36
19:37 kst joined 19:38 tann1 joined
pmichaud .push bug fixed, pushed as 827734a 19:38
moritz_ pmichaud++ 19:39
dalek kudo: 827734a | pmichaud++ | src/ (3 files):
Fix bug with .push not creating copies of pushed values. Fixes RT #69548.
19:41
19:44 eMaX joined
pmichaud unshift still has the bug -- fixing it causes the build to fail for some reason, so I'll have to track it down later 19:46
jnthn pmichaud: That sounds horribly familiar. 19:49
moritz_ what about take?
pmichaud I need a spec clarification on take before that can be fixed.
jnthn Probably the same one we need for return...
...or related.
pmichaud related, yes 19:50
the take bug come down to:
my $a = 1; my @b = gather { for 1..5 { $a++; take $a } };
if take returns a capture, then all five takes end up referring to the same $a 19:51
jnthn *nod*
moritz_ only if it also takes its arguments as a capture
pmichaud ? 19:52
moritz_ if it just has (Object *@) signature... then not
because then the slurpy array will only see Ints, and an Int is immutable
pmichaud that's the part that needs clarification -- whether take grabs its arguments as a capture 19:53
moritz_ ok
pmichaud but if you want map() to be written in terms of gather take, and for the arguments to map() to be changable by map, that implies that take grabs a capture
*gather+take 19:54
same for most other functions that expect to be lazy and to mutate elements
take has to return the actual element, not an immutable copy
or a reference
moritz_ the more I think about it, the less I like the idea of map modifying the original list 19:55
otoh 'for' really needs that somehow, and 'map' and 'for' should behave identical
pmichaud right.
perhaps we need two forms of take 19:56
moritz_ wfm
jnthn take-me-immutable
take-me-and-mutate-me
pmichaud take-me-to-your-leader 19:57
take-me-out-to-the-ballgame
moritz_ hums a Tom Lehrer tune
pmichaud which one?
jnthn pmichaud: btw, did you unfudge a spectest after fixing the push bug? ;-)
moritz_ pmichaud: Alma
lisppaste3 muixirt pasted "grammar question" at paste.lisp.org/display/88849
pmichaud ah, I like that one. 19:58
muixirt stripped my code down
what is wrong with that?
moritz_ would be surprised if require() worked
muixirt: try use mygrammar; instead
and but the @*INC.push into a BEGIN { } block 19:59
muixirt moritz_: doesn't work either
pmichaud does it work if they're in the same file?
start with that.
muixirt pmichaud: yes
pmichaud okay, so the problem isn't with grammars, it's with 'use' 20:00
pugs_svn r28822 | mberends++ | [sprixel] documented Act.js, nitpicking welcome ;)
20:00 szabgab joined
moritz_ muixirt: it does work here locally 20:00
with use instead of require
BEGIN { @*INC.push('.') }; 20:01
use mygrammar;
and the rest as you have it
prints cmd1
muixirt moritz_: yes! 20:02
umm, at first i did use 'mygrammar';
well 20:03
thanks
moritz_ you're welcome
muixirt next question
pmurias perl6: my @foo = 1,2,3;map {$^a++} @foo;
p6eval elf 28822: OUTPUT«Parse error in: /tmp/XSRWUsiwio␤panic at line 1 column 16 (pos 16): Can't understand next input--giving up␤WHERE: my @foo = 1,2,3;map {$^a++} @foo;␤WHERE: /\\<-- HERE␤ STD_red/prelude.rb:99:in `panic'␤ STD_red/std.rb:76:in `scan_unitstopper'␤ STD_red/std.rb:224:in
..…
..pugs: OUTPUT«*** ␤ Unexpected "@foo"␤ expecting ",", ":" or operator␤ at /tmp/oGVYMUaADw line 1, column 29␤»
..rakudo 827734: OUTPUT«Confused at line 2, near "@foo;"␤in Main (file <unknown>, line <unknown>)␤»
pmurias rakudo: my @foo = 1,2,3;map {$^a++} @foo;say @foo;
p6eval rakudo 827734: OUTPUT«Confused at line 2, near "@foo;say @"␤in Main (file <unknown>, line <unknown>)␤» 20:04
moritz_ pmurias: comma after }
pmurias rakudo: my @foo = 1,2,3;map {$^a++},@foo;say @foo;
p6eval rakudo 827734: OUTPUT«Cannot assign to readonly variable.␤in method Any::map (file <unknown>, line <unknown>)␤called from sub map (file src/gen_setting.pm, line 338)␤called from Main (file /tmp/h7snWW7L7F, line 0)␤»
moritz_ oh wow, <unknown> taking over
pmurias moritz_: map doesn't change it's arguments by default 20:05
20:05 dj_goku joined
moritz_ pmurias: well, it depends on the signature of the block 20:06
pmurias: if that binds its arguments as 'is rw', then yes, it does change the array
pmurias if you explicitly declare something it's your fault if things get insane
moritz_ well 20:07
muixirt the example grammar Integer doesn't work perlcabal.org/syn/S05.html#Grammars
moritz_ a block as the default signature of -> $_ is rw = OUTER::<$_> or so
pmurias rakudo: my @foo = 1,2,3;map {$_++},@foo;say @foo;
p6eval rakudo 827734: OUTPUT«123␤»
moritz_ muixirt: the implicit reduction at the end of the TOP method isn't implemented in Rakudo yet 20:08
muixirt: you need an explicit {*} outside the alternation
pmurias rakudo: my @foo = 1,2,3;map -> ($foo is rw) {$foo++},@foo;say @foo;
p6eval rakudo 827734: OUTPUT«Confused at line 2, near "-> ($foo i"␤in Main (file <unknown>, line <unknown>)␤»
moritz_ no parens around the sig, I think
pmurias rakudo: my @foo = 1,2,3;map -> $foo is rw {$foo++},@foo;say @foo; 20:09
p6eval rakudo 827734: OUTPUT«123␤»
pmichaud rakudo: my @foo = 1,2,3; for @foo -> $x is rw { $x++ }; say @foo;
p6eval rakudo 827734: OUTPUT«234␤»
moritz_ rakudo: my @foo = 1,2,3;map -> $foo is rw { $foo = $foo + 2 }; say @foo
p6eval rakudo 827734: OUTPUT«123␤»
moritz_ now that's all very weird and inconsistent
pmichaud Rakudo doesn't implement 'for' in terms of 'map' yet.
(or vice-versa) 20:10
rakudo: my $x = 5; (-> $y is rw { $y++ })($x); say $x;
p6eval rakudo 827734: OUTPUT«6␤» 20:11
moritz_ can't find the default signature for a block in the spec
pmichaud default signature is <-> $_ is OUTER::$_ { ... }
jnthn erm, is?
pmichaud =
sorry
jnthn phew
moritz_ well
jnthn :-)
moritz_ then we have a problem
because List.map: { } won't work
pmichaud sure it will 20:12
moritz_ because a List is immutable
so binding something with an 'is rw' signature fails
jnthn oh, ouch
pmichaud I didn't think is rw fails the bind
moritz_ it does, if the thing being bound is read-only
jnthn I was under the impression it does. 20:13
moritz_ sub a($x is rw) { ... }; a(4) # boom
pmichaud you're correct, fails to bind
jnthn To the point that I actually have a TODO comment in the new binder saying "check for rw after the rw refactor is done"
moritz_ so
List.map could cheat
and create an rw variable
jnthn Wrose, it actually participates in the MMD candidate sort...
moritz_ and bind that
jnthn *worse
moritz_ in the candidate sort? not just as a constraint? 20:14
jnthn (not actually so bad, but...)
moritz_: It acts separate to other constraints, last I checked.
moritz_ then I wrote crud in the MDD chapter
or maybe a bit crud, at least
jnthn moritz_: let me check S12 again.
pmichaud at one time bare blocks could be 0-ary 20:15
if $_ wasn't explicitly used in the block
(*or implicitly used)
Rakudo currently gives every bare block a $_ param, but we might end up having to be smarter about that.
although it's difficult to detect every use of $_
20:16 NorwayGeek joined
pmichaud and it still doesn't help the case where we have <a b c>.map( { ... } ) 20:16
because that block presumably uses $_ somehow, so expects to have the automatic $_
moritz_ aye 20:17
jnthn moritz_: oh now, S12's last revision seems to have no mention of that.
moritz_: Now it's just going to enforce a bindability check
moritz_: Like any other constraint.
moritz_: So, you're right, and my life just got easier. \\o/
moritz_ \\o/
and mine too 20:18
20:18 yahooooo joined 20:22 szabgab joined
pmichaud no mention of what.... is rw binding? 20:24
it's in S06
S06: "To allow modification, use the C<is rw> trait. This requires a mutable
object or container as an argument (or some kind of type object that
can be converted to a mutable object, such as might be returned
by an array or hash that knows how to autovivify new elements).
Otherwise the signature fails to bind, and this candidate routine
cannot be considered for servicing this particular call. (Other multi
...
jnthn pmichaud: No, no mention of it affecting multi-dispatch in a more elaborate way than a bindability check. 20:27
pmichaud okay.
jnthn pmichaud: At one point, I'm pretty sure S12 had something saying that "is rw" played into the candidate sort.
pmichaud it might have.
jnthn But it seems gone now, probably in the last cleanup of that section.
20:32 NorwayGeek_ joined 20:34 rfordinal3643 joined 20:35 NorwayGeek joined
pugs_svn r28823 | diakopter++ | [sprixel] nitpick some comments/spacing 20:35
diakopter erm
20:36 mtnviewmark joined
diakopter I apparently don't know how to use svn resolve 20:36
pugs_svn r28824 | diakopter++ | [sprixel] nitpick some comments/spacing
20:36 NorwayGeek joined
mberends svn ups :) 20:36
diakopter do it again 20:37
b/c I messed up the first time
mberends 28224 only so far
20:38 kst joined
diakopter 28823,28824 20:39
mberends sees it now, thanks
diakopter mberends: I'm going to commit my version of sprixel.pl that just sends the setting through STD twice 20:40
mberends oki
moritz_ I'm currently thinking about the new "getting started" page for perl6.org (see perlgeek.de/blog-en/perl-6/an-entry....writeback for a discussion), and want to explain the relation between Perl 6, Rakudo, Parrot and the Rest of the world. Do you think moritz.faui2k3.org/tmp/p6-overview.png helps? or does anybody have a better idea for such a picture? 20:48
Su-Shee depends at who you really aim with a new entry page. 20:50
moritz_ newcomers.
20:51 __ash__ joined
Su-Shee but not newbies to perl? 20:51
moritz_ all newcomers.
20:51 szabgab joined
Su-Shee with a little more detail :) 20:52
moritz_ well
there's going to be some text, too 20:53
__ash__ moritz_: i have a question about perl 6 syntax, you did something in your svg-plot that i haven't seen in the spec, github.com/moritz/svg-plot/blob/31b...Pie.pm#L44 so you can do given's without a when inside? Is that effectively a with context block? (the block is executed with respect to the given parameter
moritz_ __ash__: given $thing { BLOCK } just sets $_ lexically for the block to $thing 20:54
20:54 jaldhar joined
moritz_ so it's short for do { my $_ = $thing; BLOCK } 20:54
20:55 tak11 joined
__ash__ moritz_: in the spec it only ever talked about given as a c style switch, so i didn't know you could use a given like that, thats cool 20:55
jnthn __ash__: The other side of the coin is that if you already have $_ set some other way, you can also do when's without given. :-)
__ash__ so in a for loop for instance? since that sets $_, you can just throw 'when's in there? 20:56
jnthn for @food { when 'curry' { say "yaaaay!!" }; when 'fish' { say "DO NOT WANT" }; }
Yup. :-)
__ash__ thats cool
moritz_ perlcabal.org/syn/S04.html#Switch_statements says "The given block is just one way to set the current topic, but a switch statement can be any block that sets $_, including a for loop"
__ash__ cool 20:57
moritz_ Perl 6 really keeps syntax elements reusable ;-) 20:58
__ash__ how many keywords are there in perl6 at this point? 20:59
pugs_svn r28825 | diakopter++ | [ToJS.pm] enable multiple calls to emit_js :)
moritz_ __ash__: I don't know - you might want to check the vim syntax hilighting file for an overview ;-) 21:00
__ash__ just curious, seems like every time i start doing something new in perl6 i find a new feature i didn't know about before
moritz_ funnily that happens to many people in Perl 5 land too
I also learned something new about perl 5 last week 21:01
(just forgot what it was)
pugs_svn r28826 | diakopter++ | [sprixel] add optional setting-ast argument to Act.interpret 21:02
__ash__ i haven't tried learning perl5 much yet, i know a few things i have picked up, but i am considering perl 6 a new beast, which might not be the wisest thing
Su-Shee moritz_: than it must have been immensely important :)
moritz_ Su-Shee: aye ;-)
__ash__: well, it's a valid point of view, but the Perl 6 specs were mostly written by Perl 5 gurus - and that shows
__ash__ in a class in perl 5, when you see $_[0][0], what does that mean? thats one thing in perl 5 i have not yet figured out 21:03
moritz_ also most documentation assumes some familarity with Perl 5, which kiinda is a pity
@_ is the array of arguments passed to a sub
lambdabot Maybe you meant: . ? @ v
pugs_svn r28827 | diakopter++ | [sprixel] send the setting file[s] through the STD parser twice, once as the setting for the input :) and again to get the AST of the setting so it can be executed
moritz_ and $_[0] is the first one
Su-Shee __ash__: familarity with p5 helps a lot. perl 6 is very perlish.
moritz_ so it's the invocant
__ash__ but with 21:04
moritz_ and $_[0][0] accesses the first element of the invocant, and assumes that it's an array
pugs_svn r28828 | diakopter++ | [sprixel] more opcode instruction files, changes to setting/Int.pm, proof-of-concept sub declaration/argument eval/sub invocation 21:05
__ash__ it was in a cmp of a package/class object, so are the instance variables of an object in perl 5 in an array?
moritz_ an object in Perl 5 is just a blessed reference 21:06
it can be reference to a hash (most common), and array, a subroutine, a number, a string... whatever you can think of
s/and/an/
mberends svn ups every 30 seconds ;)
21:07 tak__ joined
__ash__ there is another thing i haven't really grapsed 100%, blessing objects, is that just giving an object access to some data? 21:07
moritz_ no, it just means "from hereon ye shall be an object"
it's actually quite similar in Perl 6, but hidden behind a nice abstraction layer 21:08
or many thereof
__ash__ and one last question, whats a $$ in perl5? a reference?
moritz_ that really depends on context 21:09
just $$ is a special variable (PID)
$$thing dereferences $thing as a scalar
$$thing{foo} as a hash
__ash__ well, i mean when its used as a sigil, like my $next = $$h;
moritz_ then it's dereferencing, yes 21:10
perldoc perlreftut # that's where I learned that stuff
__ash__ does that still work in perl6?
moritz_ no 21:11
forcing scalar context works with $(...)
21:11 Su-Shee left
moritz_ but in general you don't need to dereference explicitly 21:11
my $a = [1, 2, 3]; say $a[2] # just works in Perl 6
so references is an area where Perl 6 is drastically more readable than Perl 5 21:12
21:16 szabgab joined
diakopter mberends: yay 21:17
perl sprixel.pl -e 'say 1,2,3'
1
2
3
mberends oh yeah!
moritz_ that's wrong, though
diakopter oh?
jnthn rakudo: say 1,2,3
p6eval rakudo 827734: OUTPUT«123␤»
moritz_ ther shouldn't be a newline after each item
diakopter o yeah
:)
forgot
jnthn :-)
moritz_ (but probably an easy fix9 21:18
s/9/)/
mberends nevermind the nits, it's 100% better than &^&%$^% not found...
moritz_ you can tell from my typos that I don't use US layout right now
;-)
diakopter sub say is export { jseval 'say(this.invoker.invoker.arg_array.join(""))' }
better? :) 21:19
moritz_ woah
mberends better. period.
say can be defined as print with just a single "\\n" tacked on to the end 21:20
pugs_svn r28829 | diakopter++ | [new sprixel] make say work with multiple arguments. make say "is export" so STD doesn't complain the 2nd time [or is it the 1st time] through 21:21
diakopter yes, I know, sub say is export shouldn't be defined in Int.pm 21:22
:)
moritz_ well, it returns an Int ;-) 21:23
or was it a bool?
rakudo: say (say).WHAT
p6eval rakudo 827734: OUTPUT«say requires an argument at line 2, near ").WHAT"␤in Main (file src/gen_setting.pm, line 2545)␤»
moritz_ rakudo: say (say '').WHAT
p6eval rakudo 827734: OUTPUT«␤Bool()␤»
diakopter ok. the new sprixel doesn't yet know about Bools.
21:23 laughingboy joined
moritz_ so Int.pm is fine ;-) 21:24
pugs_svn r28830 | moritz++ | [perl6.org] updates to NOTES
diakopter but at least it's using a setting in a more-or-less proper way
well, more. 21:25
properer way.
pugs_svn r28831 | moritz++ | [perl6.org] image for the upcoming "getting started" page
moritz_ dukeleto told me he'd approve of a Perl 6 newbie IRC channel 21:26
(iirc)
mberends diakopter: something missing here after pulling: Can't locate sprixelCORE.pad in @INC.... at Cursor.pm line 241.
moritz_ is anybody against it?
21:26 laughingboy left
moritz_ or should we call it #perl6users? 21:26
diakopter oh hrm 21:27
21:27 Confield joined
mberends moritz_: I would prefer to meet the newbies right here until at least April 21:27
jnthn moritz_: #perl6 is the logical channel name for newbies. 21:28
moritz_ mberends: so far I had been against splitting the channels, but recently a few people have argued otherwise
jnthn moritz_: If the devs are finding it too noisy at some point, they can always fork off to another channel. 21:29
moritz_ because we throw a lot of scary terms and abbreviations around
diakopter I agree with jnthn, maybe a #perl6impl channel...?
moritz_ this is more about the users, not about the devs
mberends moritz_: sure, you can debate it either way
moritz_ mberends: aye. Which is why I want to hear opinions either way
jnthn moritz_: Yes, but /join #perl6 is the obvious channel name to guess, and the obvious one the post in places, and the one that's already known.
moritz_ from the lurkers too. Lurkers, I'm talking to you! 21:30
jnthn moritz_: It's easier for the rather smaller target audience of the implementers/testers/etc to move to another place.
dalek ok: 2873520 | jonathan++ | src/classes-and-objects.pod:
Start writing the classes and objects chapter, based on the already committed example.
rgrau IMO #perl6 is the place where most newbies and users would go following their intuition 21:31
diakopter joins #perl6impl
mberends the downside of split channels is the risk of newbies missing the warm welcome they can currently expect. Some developers may not bother "staffing" the newbie channel.
diakopter mberends: true... 21:32
moritz_ well, I certainly would
21:33 eternaleye joined
diakopter some noobs leave a channel if they enter and it's quiet for a long time, on the other hand, some noobs never voice their question/request if they enter a channel and it's vm talk or botwars for hours on end 21:33
mberends some statements never get a response 21:38
moritz_ well, I'll leave the discussion open a for a while 21:39
there are people in inappropriate time zones [;-)] that might want to contribute something
diakopter mberends: I'll hang out in #perl6impl if you want to join there... 21:42
mberends ENEARMAXCHANNELS
21:43 __ash__ joined
moritz_ would prefer #perl6dev as a name 21:43
diakopter but but, users are devs
21:45 colomon_ joined
__ash__ ruby has a ruby, ruby-lang (syntax stuff), and ruby-core (basically the core development stuff) 21:46
diakopter perhaps we need a perl6-cores then :) 21:47
__ash__ not that that makes sense, but still
21:49 eternaleye joined
__ash__ if you do run('perl6', :bg) can you redirect the IO of the new processes to a file handler of the parent process? 21:53
21:55 kst joined
moritz_ TimToady: would you consider removing the specialness from array and hash attribute delegation? so that 'has @!values handles <push>' would DWIM 21:55
jnthn fwiw, that'd get my vote too 21:56
moritz_ IMHO if something needs something more complicated than a simple delegation, 'handles' is not appropriate
jnthn More than once I've run into this and been like "oh yeah, hash and array are special there...damm...my idea won't work"
dalek ok: 97f1702 | moritz++ | src/classes-and-objects.pod:
[OO] this sentence no verb ;-)
22:05
pugs_svn r28832 | diakopter++ | [sprixel] add sprixelCORE.setting 22:08
22:15 s1n joined
dukeleto moritz_: has there been any consensus for a name for a perl 6 newbie channel? 22:17
dalek ok: 639cb7a | jonathan++ | src/multi-dispatch.pod:
Some minor grammar tweaks and other little bits in the MMD chapter.
moritz_ dukeleto: no
jnthn dukeleto: I'd not say there's been consensus for such a channel yet. ;-)
moritz_ dukeleto: it currently looks like it will be #perl6, and either the devs will move into their own channel, or they won't
22:18 justatheory joined
s1n i'd suggest this should be the newb channel and perl6-dev should be used for developer discussions 22:18
this is the most obvious name for a newbie to join
jnthn s1n: yes, my feelings too
s1n: I'm not sure we need to do da split yet, but I think that's be the best way to do it. 22:19
s1n it can be very intimidating if a newb were to join only to see discussions about very intricate details of rakudo/std
jnthn: i'm just suggesting the obvious name for a newcomer, not if/when a split should happen 22:20
mberends I enjoy lurking on those discussions, they're fascinating 22:21
moritz_ they make you humble ;-)
mberends indeed
jnthn s1n: aha, in so far as that then, I think we agree. :-) 22:22
s1n jnthn: interesting, someone agrees with my opinion :/ 22:23
pmichaud: don't forget, setup a wiki on dallas.p6m.org (and let me know what we need to do to take over dallas.pm) 22:28
dalek ok: c100c05 | moritz++ | src/regex-and-grammar.pod:
[RX] more about grammars, goal matching
22:34
ok: dc98ead | moritz++ | src/multi-dispatch.pod:
[MMD] use method form of map consistently
22:53 KatrinaTheLamia joined 22:56 crythias joined 23:17 SmokeMachine joined 23:19 tak11 joined 23:40 jrtayloriv joined 23:50 jrtayloriv left
dalek p-rx: 6d0e83e | pmichaud++ | src/Regex/P6Regex/Actions.pm:
Combined negated charclass should be zero-width.
23:51
p-rx: 7b40261 | pmichaud++ | (4 files):
Add initial version of NQP grammar and actions.
p-rx: ca59b99 | pmichaud++ | build/Makefile.in:
Add nqp and nqp.pbc to "make clean".
p-rx: 348a761 | pmichaud++ | src/NQP/ (2 files):
Add \\x[...] and \\o[...] quoted forms.
jnthn reads 23:54
ah, *very* initial :-)
ooh, but uses protoregexen \\o/ 23:55
pugs_svn r28833 | diakopter++ | [evalbot] re-add (the new) sprixel to p6eval 23:56
23:56 tak11 joined