6.2.3 is airborne! | pugscode.org <Overview Journal Logs> | pugs.kwiki.org
Set by autrijus on 12 May 2005.
eric256__ is there an array index var for 'for' loops? 00:02
kelan like getting the element and index at once? 00:03
for @arr.kv -> $i, $ele { ... } 00:04
Darren_Duncan no
.kv is for hashes
on the other hand ...
kelan i'm pretty sure i've seen .kv used on the p6l with arrays too, for this purpose 00:05
Darren_Duncan maybe something like .iv could be used, index+value
eric256__ that would be interesting...
Darren_Duncan while an index is functionally like a key, they are different 00:06
kelan how?
arrays are keyed by integers
Darren_Duncan but are those named 'keys'? 00:07
if we're going to do that, then arrays might as well have .keys and .values and .pairs too, to go with the .kv 00:08
kelan well why not?
Darren_Duncan put it to p6l and see what they say
if that's done, then simply saying "for @foo ->" is short-hand for "for @foo.values ->" 00:09
but then we should have a valid "for %bar ->" that shortens to something useful 00:10
I'll see to making a quick p6l posting now ... 00:12
kelan rods s29 draft has kv for arrays 00:14
www.rodadams.net/Perl/S29.html#perl6::arrays 00:15
Darren_Duncan looking
kelan also, here is a fairly recent message from p6l which references: www.mail-archive.com/perl6-language...18843.html 00:18
and see rod's reply to that message as well
Darren_Duncan okay, it appears that I don't need to write to p6l after all
tomyan how can you tell what the titles for synopses 14..28 will be? 00:19
kelan chapter titles from the camel, maybe?
i've never read the camel, so i'm not sure where larry gets the titles 00:20
tomyan alas my camel has died
Darren_Duncan I have to leave comp for awhile ... anyway, it looks like the hash/array function parity thing is resolved officially
eric256__ and it is implemented in Pugs already 00:21
Juerd Goddamn pain keeps me awake 00:22
tomyan does anyone know if there is another synopsis due on introspection, or is the bit at the end of the objects one it? 00:23
mainly interested if there is an interface to change a class (add remove methods etc.)
svnbot6 r3273, eric256++ | Making more use of class inheritance! planning for a grand future ;)
kelan i believe there will be, but i don't know any of the details, or even if the details have been made known 00:25
Juerd gonna try again
afk
kelan larry has said that there will be very good introspection capabilities 00:26
mugwump kelan: using .kv for array indices is problematic with ordered hashes 00:48
svnbot6 r3274, chromatic++ | Improve test coverage of Test::Builder::Test::Fail.
r3274, chromatic++ | Improve wording of new() test description in T::B::T::Pass test.
kelan why?
mugwump well, which does it return? the index or the key? 00:49
kelan hmm 00:50
i guess i can see how it might cause confusion, but it seems farfetched 00:51
new perl programmers probably won't be using ordered hashes, so they won't see the cross-over concept from using .kv with arrays 00:52
is there currently a way to get the index of a value from an ordered hash?
mugwump is a for() loop too absurd? :) 00:58
for (my $i=0; $i<@foo; $i++) { } ?
kelan some people, including myself i admit, think its not particularly perlish 01:00
arcady that's not valid perl6 anyway
for 0.. (@foo - 1) -> $i { ... }
mugwump thanks arcady 01:01
arcady there's probably a nicer way to write that
mugwump that's pretty nice actually. now my rhetorical question doesn't even have an obvious answer, I like it
What about, .iv, .ikv, and .kv ? 01:16
svnbot6 r3275, chromatic++ | Finish testing T::B::T::Skip. 02:13
r3275, chromatic++ | Add TODO test for *WALK[:super].
r3275, chromatic++ | Declare invocant in Test::Builder::Test::WithReason::status.
r3275, chromatic++ | Fix description typo in T::B::T::Pass test.
r3276, chromatic++ | Finish tests for Test::Builder::Test::TODO.
r3276, chromatic++ | Mark Test::Builder::Test::WithReason::status() tests as TODO.
stevan mugwump: ping 02:29
mugwump pong
stevan howdy :) 02:30
I been soaking in the meta-meta classes
reading a lot about them
mugwump sure... I've got a large change to meta_meta_classes.pod about to commit
stevan nice
I was just going to ask you too look over them :)
mugwump fundamentally could be summarised as: Classes aren't Objects, MetaClasses aren't Classes and MetaMetaClasses aren't MetaClasses ;) 02:31
However, they all *look* like Objects
stevan I was using the term "object" for lack of a better one
mugwump I understand
stevan the nomenclature does get a little twisty at times I am sure i messed something up 02:32
stevan eagerly awaits the commital
mugwump where "about to commit" is 5-10 mins away 02:33
stevan ok
well in the meantime I was going to ditch the non-OO modules
in favor of re-writing them from sractch
you okay with that? 02:34
mugwump may they rest in peace in revision control 02:35
stevan :)
mugwump: ok, its gone 02:39
svnbot6 r3277, Stevan++ | Test::Builder - making a Test::Builder::Plan attribute private
r3278, Stevan++ | Perl::MetaModel - properties and methods are not sets, they should be hashes
r3279, Stevan++ | Perl::MetaModel - removing all the old code in favor of starting fresh with OO
stevan I am going afk for a bit, but will check back later
mugwump ok 02:43
Darren_Duncan another missing Pugs feature that I've found is 'is constant' 03:16
eg, "my Str $foo is constant = 'abc';"
mugwump hmm, that was a long 5-10 minutes 03:29
svnbot6 r3280, mugwump++ | Decouple the MetaModel
stevan mugwump: ping 03:46
mugwump hi 03:48
stevan reading the changes
I actually think that the first like 100 lines should be in a document of their own
I want to incorporate the corrections in nomenclature
and consistency
but part of my whole idea was to introduce it as simply as possible 03:49
I think the points and ideas you are making the that section
are good
but a base model of metaclasses needs to be understood
by the reader first 03:50
I know for me, getting my head around the "what is a class, wait its a what?" stuff
was what i needed to get
mugwump ok. I guess I should have moved most of that prose down into the section where you describe creating it with code
ie, after that line =for EDITING :) 03:51
stevan hmm
yeah that would work too
ok I will edit this a bit
I like what you wrote BTW
mugwump thanks. I enjoyed writing it ;)
stevan this stuff is fun :)
sick, and twisted
but fun
I basically just want to be sure people who read this "get" it early on 03:52
then we can dump the heavier stuff on them :)
also ,.. you changed the diagram
which is fine,
but do you still see it as one set with many nested subsets
or do you disagree with that? 03:53
mugwump yes, because a Class is not an Object, it's a MetaObject. They both .does("Object"), but not .isa("Object")
stevan ok 03:54
the book that I was reading portrayed it as nested sets
but they made an assumption
that there was a primative object (which was just the data dictionary)
however you are correct this does not work with roles as well 03:55
mugwump I think that's bottom-up, we're doing it top-down.
stevan yes
did you read the other doc? 03:56
build your own object model?
I sketched that out this afternoon
comments, criticisms are much appreciated 03:57
mugwump The application of metaclasses in that document is a new idea to me. 03:58
stevan ok
this is all coming from this book :) 03:59
they use the ThreadSafe idea as an example many times
actually do you have an reading recomendations for this stuff?
mugwump There's a nice object section in TaPL 04:00
stevan ok
I have been meaning to order that one
mugwump however, mostly I am just coming from experience with T2 and the brainstorming sessions I had with autrijus in April 04:02
ie, I haven't read much formal literature on the subject 04:03
so seeing that create_your_own_object_model.pod was very interesting to me
stevan well does it make sense?
(in some twisted way)
much of the focus of this metaclass book is on using metaclasses to help build class libraries 04:04
one of the guys built large class libs for IBM
mugwump The document is a good mission statement. In time no doubt it will be filled with tested code 04:06
cognominal hi, what Haskell call a class is encompassed in Perl6 role? do I got that right? 04:28
mugwump yes. Or a smalltalk "Trait" 04:30
svnbot6 r3281, chromatic++ | Write test footer at end of Test::Builder object's life.
cognominal they both define generic signatures for a set of members that can be used in a haskell-type, or perl6-class
Darren_Duncan I noticed a code style choice in Test.pm that looked wrong ...
generally, containers with all uppercase names are constants
however, they are being assigned to at run-time inside methods 04:31
these 'global variables' should be lowercased
I can do that, unless there are objections
mugwump examples? 04:32
mugwump looks
Darren_Duncan my $NUM_OF_TESTS_RUN
that's not a constant, but its style makes it look like one
all of the Test.pm globals are uppercased 04:33
mugwump maybe that's because when that was written there was no such thing as scope 04:34
go ahead and make the change, I say
Darren_Duncan regardless, the values are being changed inside methods
will do
updated Test.pm is committed 04:50
mugwump does it work? :) 04:51
svnbot6 r3282, Darren_Duncan++ | updated ext/Test/lib/Test.pm - folded all global variable names into lowercase; they were uppercase and bad style, looking like constants; only ALWAYS_CALLER was unchanged, since it was used as a constant
Darren_Duncan I ran its own test suite, and that gave the same results as the old version
the change was fairly simple anyway
I also made sure there weren't already lowercased versions of the same vars
note that its #1 test gave 1/77 failed, but so did the old version 04:52
will run whole Pugs suite now just to be sure 04:54
I noticed a problem; what do you think would cause this ... 05:01
when doing 'make': make[1]: *** No rule to make target `lib/Test', needed by `pm_to_blib'. Stop.
next line is: make: *** [subdirs] Error 2
this doesn't seem to be related to my change, and occurs whether the old or new module is in place 05:02
mugwump shrugs and wanders off home 05:12
Darren_Duncan I'm also off for the day 05:14
06:14 chady_ is now known as chady
svnbot6 r3283, putter++ | Updated x86_64 section of README. 06:19
putter fyi, on amd64, with a current pugs and a day-or-few old cvs snapshot of ghc, both the gc crashes and rules failures are gone. :) kudos to the ghc folks. 06:22
'night
x86_ heya guys 06:42
revdiablo boo
x86_ hrmmm
it's just a perl5 module for the time being? 06:43
revdiablo no
it's a haskell program
x86_ there is a stand-alone perl6 interpreter?
revdiablo yes, you compile it to a native binary
x86_ i went to download and it took me to a CPAN site for Perl6::Pugs
which i would assume to be a module? 06:44
revdiablo $ file $(which pugs)
/usr/bin/pugs: ELF 32-bit LSB executable
x86_ hmm
revdiablo not a module, just a distribution on CPAN
integral it's a normal CPAN distribution, but so is perl5
x86_ so i can install it from cpan then?
revdiablo I used dh_make_perl at one point, and it worked. nowadays I build it from svn every couple of days, haven't tried the CPAN distribution lately. 06:45
x86_ perl -MCPAN -eshell i mean ;)
w00t? they use subversion?
revdiablo svn.openfoundry.org/pugs/
x86_ nice 06:46
it needs ghc i guess
apt-get is sweet on OS X :P
Setting up ghc (6.2-2) ...
revdiablo afaik it needs a newer ghc than 6.2 06:47
I'm using ghc-cvs in debian
integral you have to use the dmg from www.haskell.org/ghc
x86_ cool 06:48
err 06:49
it's not a dmg, just a pkg
it'll work all the same ;P
btw, this says it's for panther, but i'll be upgrading to tiger soon, you think it'll break things? 06:50
ingy seen autrijus
jabbot ingy: autrijus was seen 13 hours 8 minutes 8 seconds ago
integral x86_: afaik the only thing you have to do on tiger is gcc_select 3.3 07:21
svnbot6 r3284, autrijus++ | * tidy up the sample perl 6 code a bit.
x86_ hmm ok 07:23
man, pugs takes a minute to build eh? 07:24
integral yep :-) Although I think I managed 10 minutes once 07:26
x86_ whoa 07:29
on a PPC?
integral yeah. I don't have much RAM, it's only about 3m40 of CPU time
x86_ i got 1.25GB of ram 07:31
it's just an iMac though with a 1.5GHz proc
integral oh, I was unoptimized on a 1GHz 07:32
integral keeps forgetting about the optimizer
x86_ ah
revdiablo heh yeah, optimized builds take quite a bit longer
x86_ im doing optimized
w00t! 07:33
done :P
took about 15 minutes 07:34
optimized
revdiablo yay
pugs -e 'say "Hello, Perl 6"'
x86_ heh making install now
revdiablo ...
x86_ i did make and then i tried to issue a quick 'pugs' to see what it'd do... of course it was like 'pugs: command not found' and i'm like WTF!?!?$!
then i realized i forgot to make install ;) 07:35
im so tired and disoriented because im sick
integral ./pugs :-)
x86_ but i cant sleep
x86_ orgasms at the l33t ascii art upon just issuing the 'pugs' command with no arguments
revdiablo figlet++ 07:36
x86_ ack! how do i get out of the CLI?
integral hmm, we need a p6 version!
:q
revdiablo or EOF
it's ^D on loonix, dunno if it's the same in macland
x86_ wonders why 'exit' doesnt work, as that's a valid perl command
Alias_ with a sledgehammer 07:37
x86_ revdiablo: most of the time
# pugs -e 'print "hello world\n"';
hello world
reet
integral hmm, anyone remember the apt-get command to get ghc6 from experimental?
x86_ integral: with fink?
integral debian
revdiablo x86_: use 'say', so you don't have to put the newline
x86_: plus, say is shorter than print 07:38
x86_ i like format strings ;)
err
wtf ever they're called ;)
not exactly format strings i gues
guess
geez, im really messed up 07:39
wish i could sleep
check this out guys 07:43
# pugs -e 'say "yes" if "hi" ~~ /bye/ or say "no"'
no
yes
did i cornfuse it?
arcady perl -e 'print "yes\n" if "hi" =~ /bye/ or print "no\n"' 07:45
no
yes
in other words, you've confused yourself
say "yes if (("hi" ~~ /bye/) or (say "no")) 07:46
is how it's parsed
wolverian Juerd: ah, Larry seems to be saying that private methods really _are_ private. 08:45
Alias_ oh thank god 08:49
We didn't need a special notation to get fake private things
wolverian there'll be ways to get at the private parts of any object, trust me :) 08:50
Alias_ yes, but it should be fucking hard
wolverian just not as huffmanised.
Juerd wolverian: S12 very explicitly says something else. 09:21
wolverian: To access a "private" method you have to use "special" syntax: $object.:method 09:22
wolverian: Which makes .: an infix thing like ., and creates an expectation of $_-defaulting for prefix .:
wolverian Juerd: I assume S12 means that you use that when the object trusts you (the caller). 09:23
Juerd It says nor indicates that.
Why would you assume this?
wolverian from Larry's post. I agree that S12 is unclear.
(or rather, disagrees with Larry.)
Juerd I think I'm not going to mix in the whole private/public thing any more than I have. 09:25
I disagree so strongly that it's blurring my overview, and I'm almost sure someone will eventually come up with a real solution to end the twisted maze of inconsistency. 09:26
wolverian I don't have a strong opinion either way. I just disagree with the inconsistency between S12 and Larry. :)
Juerd I hate how Damian aligns ./ with .:
wolverian why? 09:27
Juerd I was very specific about ./ being prefix only, while .: is pre and infix, making it *defaulting* to something when prefix
And this defaulting is to self, while Damian himsef very clearly illustrated how that's unexpected
So either infix .: must go (which I think is good, because it's private), or it must be ./: to call on self.
Alias_ aaah... design by committee, you just gotta love it 09:28
Juerd Alias_: It usually works out. At this point, it doesn't.
Alias_ The day that we got $scalar is Hash, and three sigil on things, a small part of my died 09:29
s/my/me/
Juerd I'm not happy about twigils either.
Alias_ and latin-1 characters in the core 09:30
Juerd As long as they all have sane ASCII counterparts, they don't bother me.
Alias_ that's the point
if they have sane ASCII versions, what is the latin-1 version for? 09:31
Juerd For people who like them, and there are many of those.
Alias_ Then I say let them have a language mod
use operators::parallel;
or something
cut the dozen craziest operators off and call them use ops::more; 09:32
wolverian and what's the use in that? people would just learn to use ops::more; always.
Alias_ no they wouldn't... only for sufficiently crazy things/people 09:33
09:34 Alias_ is now known as Alias_mentor, Alias_mentor is now known as Alias_
scook0 Hey, does anyone know how &next in a C<loop> is supposed to work? 09:39
Is it supposed to perform the 'post' part of the loop?
Juerd Okay, one message. 09:45
wolverian :) 09:51
10:58 ChanServ sets mode: -o clkao
kungfuftr anyone know if there will be a simple way in Perl6 to gain which classes inherit from the current class? 10:58
broquaint There'll probably be a handy-dandy intropsective method like .kids() or something I would imagine. 11:02
kungfuftr yar, would be nice to have an easy way to do Module::Pluggable style things 11:04
broquaint Since we'll have a real OO implementation I shouldn't imagine it'd be too tricky. Some::Class.kids() or some such.
osfameron_ presumably that would only include classes that are currently use'd though? 11:05
broquaint To begin with, sure. I imagine we'll see the likes of Module::Scandeps too.
11:05 castaway_ is now known as castaway
Juerd Isn't inheritance a strictly unidirectional thing? 11:27
11:28 Aankh|Clone is now known as Aankhen`` 11:29 chady is now known as chady_
kungfuftr Juerd: yes, but sometimes you really need to know what children you have... for example, if i have a Person superclass, i might want to know what type of Person's there are, etc. 11:52
Juerd: currently i'd have to use something like Module::Pluggable for that 11:54
osfameron_ Also makes sense for some interactive fiction object models 11:57
svnbot6 r3285, iblech++ | Typo fixes and more PODification of docs/S29draft.pod. 12:05
Arathorn congrats on resolving the ./method() problem, folks
solution rocks :)
svnbot6 r3286, iblech++ | Added tests for capitalize(). 12:17
r3287, scook0++ | Tests for some strange loop behaviour 12:23
r3288, iblech++ | Implemented capitalize().
r3288, iblech++ | Note: Lambdafolks may want to review my code.
ingy :\ 12:27
wolverian capitalize?
integral hmm, couldn't capitalize be implemented in p6? 12:30
ihb is there an equivalent to perlfunc for P6 yet? 12:31
(i'm aware of that they're methods nowdays)
castaway S29 ? 12:32
scook0 sub capitalize($word) { ucfirst $word ~ uc $word[1...] } 12:33
sorry, no, that's wrong 12:35
svnbot6 r3289, iblech++ | Moved our AESses to docs/AES, so I can include those via svn:externals from 12:41
r3289, iblech++ | FreePAN Perl6-Bible.
r3290, iblech++ | Added L<S29> links to t/builtins/strings/*.t.
Arathorn S29 is MIA atm, no? 12:42
ihb so ~ is still the concat op? 13:03
svnbot6 r3291, scook0++ | Revised Haddocks for Monads.hs
scook0 as far as I know... 13:05
ihb that makes my lazy ~ so sad. :-/ i have to hit "Alt Gr + ~ + space + space" to get "~ ".
scook0 ouch 13:06
ihb i liked "." a lot better. then i needed just ". + space" to get ". "... 13:07
i guess i just have to create a ōæ½xA7 operator that's an alias for ~ :-) 13:08
scook0 which kb layout do you use?
ihb standard swedish.
nothingmuch seen ingy 13:24
jabbot nothingmuch: ingy was seen 56 minutes 55 seconds ago
ingy hola 13:25
Limbic_Region como esta ustede? 13:27
los sientos pero aprendo espanol en la esquala y hace muchos anos 13:28
I think I said that right
considering I only remember the present tense and not a whole lot of vocabulary
wolverian besides, it's spelled 'capitalise' :) 13:32
x86_ arcady: i figured that out :) 13:52
svnbot6 r3292, iblech++ | Found an extremely weird parsing bug involving ">". 14:07
r3292, iblech++ | Note that it doesn't seem to be a simple predence thing -- look at the comments
r3292, iblech++ | of new t/pugsbugs/parsing_gt.t.
r3293, iblech++ | * svnbot6.p6 now supports an additional command, "?check", which triggers 14:12
r3293, iblech++ | immediate checking for new revisions.
r3293, iblech++ | * Small cosmetical fix to mklivecd.pl.
stevan seen mugwump 14:25
jabbot stevan: mugwump was seen 9 hours 34 minutes 55 seconds ago
svnbot6 r3294, Stevan++ | Perl::MetaModel - some editing of mugwumps additions to meta_meta_classes.pod; created README; moved some of mugwumps perl6 specific stuff to perl6_meta_model.pod; other misc. reworkings 14:26
r3295, autrijus++ | * t/pugsbugs/parsing_gt.t fixed. 15:11
r3295, autrijus++ | * `foo() <3> -1` is now parsed as `foo() < 3 > -1`, instead of `foo()<3> - 1`.
r3296, autrijus++ | * `use ClassName; ClassName.new` is now parsed correctly.
r3296, autrijus++ | * hence, changing `::Tree.new` to `Tree.new` in Tree's tests.
x86_ pugs -e 'foreach ( 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 ) { say rand(rand(100000000)); }' 15:18
svnbot6 r3297, autrijus++ | * refactor varbatimParens into Lexer.hs
r3298, iblech++ | Thanks to autrijus++ fixing this weird parsefail, I was able to add tests
r3298, iblech++ | testing rand($n).
x86_ anyone see a problem with this?
iblech x86_: Yes, there's no foreach in Perl 6 anymore. s/foreach/for/ and it works fine :) 15:19
(And you might want to say 1..10 instead of 1,2,...)
x86_ yeah i was just playing around 15:20
putter not ("a" ~~ /b/) is bool::true, but without parens, not "a" ~~ /b/ is a match object... bug? 15:21
iblech Seems so. not() is very low precedence. Pugs seems to parse this as (not "a") ~~ /b/, which equals "" ~~ /b/, resulting in a matchOk = False match object (as not "a" is bool::false, which stringifies to "") 15:24
putter tnx. is there an easy way to check how an expression parses? 15:25
iblech There's ". expression" in the interactive shell 15:26
x86_ pugs -e 'for ( 1..9000 ) { say "$_" . rand(rand(10000000)); }'
i think i found a bug here...
maybe its just me 15:27
putter ah, right. tnx.
x86_ but does that expression look ok?
kolibrie x86_: s/\./~/
Arathorn string concatenation is ~ nowadays. 15:29
the stitch operator :)
autrijus iblech: parsefail fixed :) 15:30
jhorwitz hey autrijus :) 15:32
autrijus how goes? 15:34
jhorwitz it goes well. actually, banging my head against the wall trying to get "module Foo" to output PIR outside of main. 15:35
stevan autrijus: I am changing the Test::Builder tests to not use ::Test::Builder as well
thanks for fixing that one :)
autrijus yeah, it was kind of important psychologically :) 15:37
but I can't get use_ok() to work...
for some reason similar to eval_ok()
I'm sure you know of the problem also
stevan autrijus: isa_ok() does some weird things as well
autrijus worse yet, I don't know ehough perl6 to think of a good fix
so maybe ask on p6l
stevan I will try to isolate the issue first
I have been having too much fun playing with objects to be bothered by it :) 15:38
autrijus then go ahead playing :)
I've been enjoying you and mugwump's docs
stevan :)
autrijus they almost look like specs I can implement :)
autrijus seriously think they should be in S12 somewhere sometime 15:39
stevan maybe
x86_ holy crap
autrijus aw, latin1
x86_ time pugs -e 'for ( 1..9000 ) { say "$_" ~ rand(rand(10000000)); }'
stevan I think the last doc (which I just created from some of mugwumps comments) is going to be the one to include in s12
x86_ 1m8s real
time perl -e 'for ( 1..9000 ) { print "$_" . rand(rand(10000000)) . "\n"; }'
real 0m5.297s
autrijus x86_: that is really to be expected :) 15:40
x86_ yeah, i know :)
autrijus explains again that the interpreter is optimized for feature; the compiler is for speed
x86_ i knew there would be a speed difference, but seeing such a dramatic difference is somewhat... shocking ;)
compiler?
oh right, compile into parrot bytecode, right? 15:41
autrijus yeah. or to native haskell (but that's even more immature)
x86_ is new to this whole parrot / pugs / perl6 deal
how do i compile something into parrot bytecode?
autrijus I hope it's sane enough that you can pick up quickly :) 15:42
svnbot6 r3299, autrijus++ | * utf8, please
autrijus x86_: try this:
./pugs -BParrot examples/mandel.p6
putter shall I add the failing ok(not "a" ~~ rx:perl5/b/) to t/builtins/not.t? 15:43
x86_ pugs: Cannot compile: App (Var "&substr") [Pos (MkPos "examples/mandel.p6" 58 21 58 23) (Var "$b"),Pos (MkPos "examples/mandel.p6" 58 25 58 27) (Var "$P"),Pos (MkPos "examples/mandel.p6" 58 29 58 30) (Val (VInt 1))] [] 15:44
i'm on MacOS X 10.2 (panther) on a PowerPC cpu if that helps
err
integral gets the same
x86_ 10.3 even ;)
integral: on your mac?
integral mac and debian gnu/linux 15:45
x86_ ah
im too lazy to go through the install process of ghc, parrot, and pugs all over again on my x86-based development box ;) 15:46
integral it's not going to be a system dependent thing, it'll be coming from Pugs.Compile.Parrot line 303
x86_ gotcha
so its a pugs --> parrot bytecode issue then, not an actual parrot issue? 15:47
autrijus x86_: a sec
fixed, committing
x86_ ack
so i have to re-build pugs? 15:48
integral it won't rebuild the whole thing
shouldn't be much either for that module
x86_ so it's a good thing i kept my build tree then? :P
integral just runs straight out of his trees 15:49
autrijus x86_: yes :)
so, svn up, make, ./pugs -BParrot examples/mandel.p6 again 15:50
try it? the compileation time is likely to be quite short
integral you only need to panic build-wise when AST.Internals, Parser, Lexer or Prim gets modified 8-)
autrijus which isn't that often nowadays, thanks to some mad refactoring :)
(actually only AST.Internals is real pain)
x86_: so, run -BParrot mandel once, and run mandel again without -BParrot 15:51
notice the, uhm, subtle difference in speed
integral I tried cutting it down even more, but I'm thinking that it's impossible since all the data types left in it (modulo 2 enumerations) are cyclic :-( 15:52
autrijus integral: right, that's what I figured too
svnbot6 r3300, autrijus++ | * bring parrot codegen up to speed with invs tweak.
autrijus integral: there are ways around it...
putter autrijus: I have ok(not "a" ~~ rx:perl5/b/) ready to go into pugsbugs. Any objection?
autrijus integral: existential types for one, or (gasp) Data.Dynamic 15:53
hm?
oh, not needs to be loost?
loose
integral hmm, the first is one idea I was having. I haven't been scared by the second yet 8-)
putter yes. I could add it to looseOperators, but I didnt want to mindless muck about. 15:54
ordering in the Prim.hs list doesn't seem to affect it.
integral hmmhmm, interesting. The -BParrot mandel.p6 is slower than mandel.p5 for me 15:58
svnbot6 r3301, Stevan++ | Test::Builder - make all the Test::Builder tests run without the ::ClassName issue 15:59
autrijus putter: the ordering doesn't matter 16:01
integral: right because the codgen was rewritten
integral: all the literals are boxed now (PMC)
they were unboxed (int etc)
putter k
integral ah 16:02
putter err, is there a one-line summary of how precedence is encoded in pugs? 16:04
in the .hs source that is... 16:05
PerlJam putter: magic.
:-)
putter ;)
integral there's a howto fior adding ops on the wiki
putter tnx!
jhorwitz autrijus: a fail clause in Compile/Parrot.hs is having some type errors. how to fix? 16:08
autrijus: pugs: cannot cast from VError "fnord" (NonTerm (MkPos "-e" 1 1 1 1)) to [Char]
autrijus jhorwitz: fail "fnord"
doesn't that work? 16:09
jhorwitz autrijus: nope
autrijus putter: in Parser.hs there's is this big table.
jhorwitz: oh. then use an error clause.
jhorwitz will try that
putter autrijus: ok. thanks. 16:12
autrijus putter: I think the problem is that "not" is unary and parsed as an unary
so by default it tighter 16:13
I think you really want to add it to looseOp
oh, "not" is billed as listop!
wtf? 16:14
hm, it really _is_ listop. 16:15
_metaperl autrijus what was that thing that made your pc look just like mac os x?
autrijus _metaperl: flyakite
_metaperl ok thanks
Arathorn uses pearpc for that ;) 16:16
autrijus hm. perl5's not() essentially throws everything but the last arg away
and negate the last arg
I'm not sure perl6's not() keep that behaviour.
putter: so, please fix Prim.hs so not becomes a LIST op 16:18
theorbtwo It does? Sounds rather crazy -- I'd certianly prefer that it not keep it.
autrijus putter: and fix the code so it assumes some kind of behaviour.
theorbtwo: that's larry's way of having a low prec unary op
theorbtwo: not 2,1,0; # needs to mean not(0)
theorbtwo Why does it need to? 16:19
autrijus theorbtwo: because that's what unary ops do.
someunary(2,1,0); # always mean someunary(0)
comma in scalar cxt
putter ok. working...
theorbtwo In p5, yeah. 16:20
...with the parens there.
-2,1,0 means (-2), 1, 0.
perl -MO=Deparse,-p -e 'print not 0, 1, 2' # print((!1)); 16:21
# Huh?
autrijus $ perl -MO=Deparse,-p -e 'print not 3,3,3' 16:23
print((!1));
theorbtwo: !1 is this constant folded thing
theorbtwo smacks his forehead.
OK, I'm an idiot.
But why should not be low-precidence and not high-precidence? 16:24
autrijus because we have ! for high prec
and not is there because and or and not (also xor) are supposed to be very low prec -- that is, same or lower than listops 16:25
autrijus notices that not-easily-parsitude of the last sentence
theorbtwo OK, works for me. 16:26
I guess.
Not really, but at least it's a reason.
Limbic_Region moving sucks 16:36
theorbtwo Yup, Limbic. 16:37
What bit of suckyness have you just found?
Limbic_Region oh - lots and lots
masak perlbot nopaste
perlbot Paste your code here and #<channel> will be able to view it: sial.org/pbot/<channel>
Limbic_Region most recent problem has been establishing connectivity to the outside world
no phone (VoIP), no internet (cable), no cable (digital) 16:38
oh - glad to see autrijus has gotten long winded on the journal summaries again - enjoyed catching up this morning 16:39
autrijus it's been like that for 3 days :)
masak i have a question 16:40
pasteling "masak" at 130.238.83.176 pasted "Deep recursion 'hello world' example" (8 lines, 214B) at sial.org/pbot/10169
theorbtwo Sounds like a wonderful vicious loop, limbic. Have a cell, or have you been completely cut off?
Limbic_Region abhors cell phones and wouldn't dream of owning one
masak is there a way to make $! not collect the whole stack trace in the above script?
Limbic_Region in fact the only reason I have a phone at all is for emergencies and Jean
masak Limbic_Region++ 16:41
autrijus masak: why would you not want that?
masak autrijus: mostly just for fun
i thought it would be nice to die with 'hello world'
but it might also come in handy for deep tail calls 16:42
svnbot6 r3302, iblech++ | * Added and updated submethods tests after p6l review.
r3302, iblech++ | * Updated t/oo/roles/conflicts.t to new "./" method call syntax.
autrijus die with \n ?
masak autrijus: i tried that, didn't help
autrijus masak: well, time to start hacking on the "die" Prim
masak :)
Limbic_Region the "di" Prim directive?
err - missing both es there
but you get the idea
masak will there be a test involved somehow? in that case i could help 16:43
autrijus masak: sure 16:44
masak still is a bit haskell-shy
autrijus eval 'die "foo\n"'
and test if $! contains only foo\n
masak right -- which .t file?
builtins/die.t? 16:46
Limbic_Region masak - worry less about getting it in the right place and more on getting it in 16:48
collaborative effort will result in it getting moved to where it belongs
and probably augmented too
masak true 16:49
writing tests is weird business 16:50
you want to write a piece of code that fails
so that you can go fix it
there -- committed 16:51
Limbic_Region well - there is always t/pugsbugs
that once fixed get moved to appropriate place
and stay there to ensure more hacking doesn't re-break them
masak Limbic_Region: so only passing tests should go in all the other .t files?
Limbic_Region no - I didn't say that 16:52
die works for the most part
besides - I have only written a half-dozen tests or so myself - just commit
it will get moved if it is in the wrong place 16:53
trust in the anarchy
masak :) yes, but is there a rule of thumb for where to put stuff?
svnbot6 r3303, masak++ | Recursive die test
masak really likes the addition of "++" on commits
autrijus too 16:54
egoboo++
clkao++
masak karma is such a laid-back metric, a sort of un-currency 16:55
jabbot masak: is such a laid-back metric, a sort of un-currency has neutral karma
masak that was an unintended funism
autrijus jabbot++
masak i thought that someone else had the exact same idea i had, but it was just a bot :)
Arathorn i dunno - some people can get very worked up about karma 16:56
c.f. /.
masak should i be offended when a bot calls me a laid-back metric? :P
slashdot doesn't have a common goal like the pugs team 16:57
Arathorn true
masak a person hoarding karma here would just make a fool of emself
Arathorn still, some people can't handle the the distinction between their ephemeral karma getting a boost and a rabidly competitive fight to the finish line
masak true 16:58
Arathorn i guess that's what you have to rely on, then :)
masak i hope i'm right :)
Arathorn (the idea of the hordes of slashdot trying to implement a programming language spec is highly amusing, either which way :D)
masak *lol* 16:59
the signal to noise ratio would simply be too low for constructive work to take place 17:00
slashdot is in itself a work avoidance tool
or so i've heard :) 17:01
Arathorn i wouldn't know anything about that 17:02
Arathorn looks shifty
that said, following perl6/pugs development is an infinitely better work avoidance tool :)
masak without a doubt 17:03
x86_ ugh, Parser and Lexer are both compiling again when i did that svn up;make 17:06
indeed 17:07
pugs++
holy shit Parser takes way too long to compile 17:08
svnbot6 r3304, iblech++ | * Added tests for $?SELF, $?CLASS, and $?ROLE (t/oo/magical_vars.t).
r3304, iblech++ | * Very minor cosmetical fixes to proxy.t, conflicts.t, construction.t, and
r3304, iblech++ | destruction.t.
r3305, iblech++ | Added the usual svn properties to Stevan++'s and mugwump++'s
r3305, iblech++ | ext/Perl-MetaModel/docs/*.
autrijus smiles at iblech's use of person++ in logs 17:09
x86_ Pugs.Eval takes a while too it seems 17:10
Arathorn hopes that commiters get autopromoted to bignums of some kind, otherwise there may be some nasty overflow/wraparound bugs on the horizon..
autrijus x86_: for daily development, "make unoptimised" and "make ghci" are your frinds 17:11
stevan x86_: or you can just take long coffee breaks in between compiles :) 17:12
or even do $work, which is what I do :)
autrijus it's strangely how my @jobs are becoming relaxful breaks. 17:14
;)
stevan :D
autrijus their specs are nicer, and the @client not as crazy
stevan but they are not nearly as much fun 17:15
autrijus nope. and I don't have a huge helpful team :)
stevan autrijus: you should just hire all of us to do your $work
and leave you to hack pugs :)
masak a huge team would be useful to have at $work
autrijus stevan: that will be minimizing the fun ;) 17:16
"premature pessimisation"
stevan :)
x86_ ack! 17:18
$work!
x86_ dies
mandel with -BParrot: 17:19
real 0m3.136s
i'm still waiting for the timing without -BParrot ;)
what's -B do? compile it to bytecode before running it? 17:20
iblech_ compile using the Parrot bytecode, then run it
there're also the Pugs and Haskell backends 17:21
17:21 iblech_ is now known as iblech
iblech And there's -CBackend, which compiles the source, but does not run it. 17:21
autrijus putter: &not fixed, so in case you're still working on it, sorry :) 17:51
svnbot6 r3306, jhorwitz++ | * fix type error when reporting compilation failure
autrijus 01:55 <@leo> autrijus: I've read a lot of STM papers recently 17:59
svnbot6 r3307, autrijus++ | * &not is a listOp now. putter++
autrijus 01:55 <@leo> I think it should work for parrot too
autrijus loves cross-fertilising ideas
jhorwitz STM++
putter autrijus: np. just got it working :). so good exercise, and even better, now I get to see how you did it! :) :) 18:07
x86_ real 2m33.920s
putter wishes there was an easy way to get code reviews of haskell snippets.
x86_ 2m34s (no -BParrot) vs. 0m3s (with -BParrot) 18:08
holy crapola
lol
jhorwitz hm. autrijus: instance Compile Exp doesn't seem to be catching "module Foo" in Parrot Compiler anymore
i uncommented my Syn "module" code to work on it again 18:09
autrijus jhorwitz: k. note also classes etc should be handled in the compile glob place 18:10
jhorwitz ah, okay. that's a good thing, then. :)
theorbtwo Glob place?
jhorwitz autrijus: it seems to be landing here: instance Compile (Var, [(TVar Bool, TVar VRef)]) -- is that right? 18:12
svnbot6 r3308, iblech++ | Ported Net::IRC to real OO.
r3308, iblech++ | The only major thing which doesn't work yet in Pugs is support for submethod
r3308, iblech++ | BUILD. When that is implemented, the real OO Net::IRC should start to work. :)
autrijus jhorwitz: yeah. if the Var is (':':class)
jhorwitz giddyup 18:13
autrijus you can then generate a parrot class right there
global vars too should go there
jhorwitz for now i just want to spit out a .namespace op, but i see where you're going
autrijus a .namespace is probably good enough for now 18:14
the public attributes can be queried using
&ClassName::*
which queries methods too
more info will be available when the roles/class metametamodel lands 18:15
jhorwitz wow, this is further along than i thought
x86_ you guys want to see something hilarious?
have to email it though, because im not sure how to save it properly
its a small video clip
putter autrijus: if I could impose, would this have been a valid solution?:
op1 "not" = \v -> case v of 18:16
(VList vs) -> op1 "!" $ last vs
_ -> op1 "!" $ v
autrijus putter: yes, that would be completely valid, since I started there :)
then I noticed that it would make
not @foo;
become
not @foo[-1]
which is very wrong.
so I wrote p6l asking what &not's signature should be.
:)
wolverian wow. Net::IRC.pm (OO version) has a lot of 'has $foo' repetition
putter ah. ok. fun and games. thanks for the puzzle and the feedback. 18:17
autrijus putter: thanks for playing
wolverian does 'has ($.foo, @.bar) is rw;' DWIM?
autrijus wolverian: it should. feel free to hack it in
it's in ruleMemberDeclaration
you can look at VarDeclaration's code for supporting multiples
wolverian hrm. my dev computer is currently offline 18:18
jhorwitz autrijus: we have namespaces. making sure i didn't break anything before commiting... 18:32
18:32 Arathorn is now known as Aragone
putter am I correct in fuzzily remembering that rules tests should be skipped, rather than failing, when running make test on builds which lack rules support? eg, where !("a" ~~ /a/) is true. 19:09
Corion r3308 - datenzoo.de/pugs/win2k.html - an unexpected map() success, subscript parsing also works now, 19:14
svnbot6 r3309, jhorwitz++ | * module|package|class emits Parrot .namespace ops
r3309, jhorwitz++ | * fix sub invocation
Corion Weird. Changing a test from ok(eval(...)) to eval_ok( ...) also changes it from True to False ... (t/syntax/subscript/parse_bugs.t) 19:17
Hmmm. And the test also doesn't catch "%hash <foo>" as a syntax error in eval() - I guess that's actually a bug in eval() 19:19
iblech Corion: That's because the code supplied to eval_ok() is called in Test::eval_ok's lexical pad, not in the one of the test, so the code can't find its variables
svnbot6 r3310, jhorwitz++ | * remove _Pugs:: prefix from Parrot namespace (will revisit this later)
Corion iblech: Ah, d'oh
so I'll have to live with ok(eval( then
svnbot6 r3311, corion++ | Promote succeeding test 19:25
stevan Corion: I found that a combination of lives_ok, and is work best 19:27
assuming it does not parsefail
iblech Hm... readdir("."|".") does not produce a result junction. 19:34
svnbot6 r3312, corion++ | map() now partially works with multiple statements in the block, except that it only works on the first value and reuses that for the whole list
iblech Ah, I see. any(".", ".") is of course any("."). 19:36
svnbot6 r3313, iblech++ | <Pos1> and <End> are now working in the live cd. 19:40
19:44 x86_ is now known as x86
putter On r3307, this !("a" ~~ /a$/) explodes (backtrace) and sometimes segfaults. 19:45
Limbic_Region wonders how one tests for "it explodes but only sometimes" 19:47
iblech putter: It doesn't here (Linux, GHC 6.4). 19:49
(With external Parrot) 19:50
Limbic_Region seen juerd 19:51
jabbot Limbic_Region: I havn't seen juerd , Limbic_Region
Limbic_Region seen Juerd
jabbot Limbic_Region: Juerd was seen 8 hours 24 minutes 2 seconds ago
Limbic_Region didn't know handles were case sensitive
$Larry sorta ruled on not 4,3,2,1,0; 19:52
putter iblech: thanks. mine was internal, on x86_64 linux. I'll try external, and make the test eval_ok.
wolverian hmm. the &.foo discussion on p6l is interesting. 19:55
Corion Heh - a comment in autrijus' journal: "Most Haskell texts seem to be aimed at the novice/beginning programmer. (e.g they spend chapters describing recursion, and devote only two sentences to using arrays). " -- maybe that is because arrays are not really important in Haskell? :) 19:56
integral you can't write a decent matrix library without arrays...
Corion integral: Well, you can always use lists instead :) 19:57
Limbic_Region refrains from making Matrix jokes 19:58
Corion Nobody can tell you what the Matrix jokes are ...
integral that ruins the complexity of many algorithms though. Plus then you end up using a different structure of lists for different ones, which is annoying.
mmm, real world perl6: svn.openfoundry.org/pugs/examples/irclog2html.p6 19:59
Corion integral: "annoying" does not prevent me from doing stuff if I really want to ;-)
integral err, wrong window
PerlJam integral: where are you evangelizing perl6 ?
integral tried to write a list based LU factorising routine 20:00
PerlJam: #perl! :-)
it was not pretty. Although that was probably perl5's fault =)
pasteling "putter" at 66.30.119.55 pasted "a backtrace" (70 lines, 4.1K) at sial.org/pbot/10173 20:02
putter I get something like this with both internal and external parrot. Looks like a haskell-side problem? 20:04
iblech putter: Ah! When I tried your snippet, I ran it using "pugs -we '...'". You ran it in interactive Pugs, where "!" has a special meaning (see :h) 20:06
putter sigh. my thanks iblech. 20:07
nothingmuch what kind of arrow graphicaly conveys transformation? 20:23
Corion Where is fail() implemented? My grep fu is weak today
To me, it's an arrow with a curled unpointy side
or the mathematical finite map arrow, "|->" 20:24
iblech Corion: If you refer to Test::fail, it's in ext/Test/lib/Test.pm. If you refer to Perl 6's core fail(), it isn't yet implemented, IIRC
nothingmuch nothingmuch.woobling.org/sumo_to_ninjas.png
from that image is it clear that you would like to make ninjas out of the sumo, but the transformation is blocked?
Corion iblech: No, the Haskell fail(), that is used to implement die() ...
iblech Corion: Oh. No idea.
Corion I want to look at making die("\n") work ;)
nothingmuch: Hmmm. I wouldn't put any "stop" sign there, but an "entry forbidden for cars" sign (-) 20:25
(red-circle-with-horizontal-white-bar) 20:26
nothingmuch yeah, i'm using that one too =P
elsewhere
for a more 'do not enter'ish metaphor
maybe a big red X
Corion nothingmuch: Yeah, a big red X is always good.
I remember the PNG acceptance suite using red checkmarks and green X. I never found out what meant "correct" and what meant "incorrect" :) 20:27
nothingmuch hehe 20:32
Corion: reload 20:41
Corion nothingmuch: Yep, much better IMO
Maybe make the cross over the arrow, so it doesn't cross out the ninjas, but that's only minor 20:42
nothingmuch i tried playing around with that 20:43
Corion Likely you have to move the ninjas and the sumo wrestler further apart for that
nothingmuch i didn't manage to make it look pretty that way
Corion nothingmuch: It's Good Enough that way IMO - much less confusing than the STOP sign 20:45
(but I'm tired already and should go to bed ;) )
&
nothingmuch crap
somebody else reload
autrijus journal up. enjoy :) 20:51
nite &
svnbot6 r3314, chromatic++ | Declare invocants for status() methods in Test::Builder::Test. 21:18
r3314, chromatic++ | Fix a typo in a test description.
r3315, putter++ | Replaced not with !() in t/rules/Disabled/from_perl6_rules. 21:24
r3316, putter++ | Added "are rules available?" test-skipping guards to t/rules/Disabled/from_perl6_rules.
r3317, Stevan++ | Perl::MetaModel - commit before refactoring this 21:45
r3318, putter++ | Cleaning up from_perl6_rules/word.t.
r3319, putter++ | Un-Disabled from_perl6_rules/word.t.
mugwump dammit, we need a good editor for Perl 6 code 22:11
svnbot6 r3320, autrijus++ | * make ControlEnv prettification less verbose
mugwump or, rather, I want cperl-mode for Perl 6 ! :)
stevan hey mugwump :) 22:14
clkao cperl6-mode then
putter I have very simple tests (eg, ok( $str ~~ m/^abc/, 'SOS abc' );) which work w parrot embedded, but hang with external parrot (on FC3, amd64). Is there some way to check whether external parrot is being used, so the tests can be skipped?
stevan mugwump: I edited the docs again, moving your more perl6 specific stuff to perl6_meta_model.pod
and kept the nomenclature stuff in meta-meta_classes.pod
putter mugwump: Re cperl6-mode, do you have some particular file you would like a modified cperl-mode to handle nicely? 22:15
stevan I also just refactored Perl::Meta::MetaClass
and I have been reading about Smalltalk's metaclass model, which is pretty cool
but alas, what is morning for you, is dinner time for me
mugwump well, I just opened stevan's ext/Perl-MetaModel/lib/Perl/Meta/MetaClass.pm and cperl-mode doesn't like it at all...
stevan so I will be back in maybe 3 hours or so 22:16
svnbot6 r3321, Stevan++ | Perl::MetaModel - refactored names to be more perl-ish; subclasses are now read-only, all adding and removing is now down through private methods and controled by the superclass() method; added an allSuperclasses() method;
mugwump What happened to MetaProperty et al, stevan ?
stevan mugwump: removed it
we can add it later
it was all the Hack::Instances junk anyway 22:17
its is still in the depths of the VCS
mugwump sure
putter mugwump: k. I'll take a look at it. (need a break from assorted rules breakage).
stevan mugwump: you are welcome to re-hack it in Pugs-OO if you like. I was planning on working that later tonight 22:18
dinner &
mugwump bon appetit
putter: the optional ? marker in subroutine signatures is what breaks that file 22:20
putter mugwump: ok, I'll use that for a target fruit. 22:30
Juerd Just a little note: if you want quickref to work, please write for it. I'm not able to do it all myself, although I'd love to. 22:38
mugwump hi broquaint_, where in the world are you now? back in the UK I presume? 23:06
broquaint_ You presume correctly, mugwump.
mugwump do go on! :) 23:08
broquaint_ I'm looking for employment and all that sort of thing. Terribly exciting stuff. 23:09
mugwump that's been a while hasn't it? Or have you been picking up brief contracts? 23:10
Alias is still looking for someone in Sydney 23:12
a bit of a hard commute from the UK I know
Odin-LAP Half-way around the globe? You mean you wouldn't do that twice a day? 23:14
mugwump yeah. getting into a low earth orbit for the 90 minute trip isn't the problem, it's just the customs mallarky 23:15
Odin-LAP Ignore customs, and bring a mercenary company with you. Since you can afford the ride, that shouldn't be any trouble... 23:16
broquaint_ I've only been looking for a month or so, is that a long time these days? 23:22
23:22 broquaint_ is now known as broquaint
mugwump yeah, but by the time you've done that you may as well have chartered the flight 23:22
oh, I thought you left NZ long ago broquaint
no I guess a month is getting standard
broquaint I did, but I was in Thailand for a few months :)
_metaperl broquaint where are you now? 23:23
mugwump oh, yeah ... how is the short little bastard anyway?
broquaint London, UK, _metaperl.
Which one, mugwump?
_metaperl were you born and raised in the UK? do you like Football?
mugwump Count Erik J Napolean
_metaperl i've never talked with you broquaint, though I've seen you on perlmonks often
broquaint Born, no, raised, sorta. Football, yes, but I know little of it. 23:24
_metaperl what does the name "broquaint" mean anyway?
broquaint Erik is going mad across Thailand and the UK variously. His life is more fucked up these days than usual.
No idea, _metaperl, just made it up one day for a unique nick. Seems to have worked so far. 23:25
Odin-LAP Quaint.
broquaint Bro. 23:26
mugwump Au.
_metaperl broquaint, are you a CPAN author?
broquaint I am, _metaperl.
_metaperl author ID? 23:27
broquaint BROQ :)
I should have a new module up in a few days time too.
clkao how does overload work in perl6? such as stringifying objects 23:28
_metaperl time to add Module::MagicUse to my list of lazy loaders: www.metaperl.com/article-pod/Catalo...aders.html
mugwump clkao: eg, method prefix:<~>($self:) { } 23:29
however, I don't think it's implemented yet
clkao can you implement that tonight? then i can write URI.pm6 23:30
mugwump I am only an egg
clkao mugwump: which synopsis covers that
clkao overload mugwump to be autrijus
mugwump S06#Operator Overloading 23:31
clkao mugwump++
_metaperl lol 23:32
Darren_Duncan I'm working on the Locale-KeyedText test suite now - should be committed in 2 hours or so
_metaperl we do our i8n via database... 23:33
clkao are we able to identify a particular test with an id? does each test have a unique description now? 23:35
if so we can do some interesting stuff. say i submit a test because i want it to implement certain module. i can subscribe that test result. when it tells me it works i can go back writing what i intended to 23:36
mugwump sort of like lazy implementation 23:38
perhaps pass :todo<feature> a continuation 23:39
that encapsulates your development progress for easy resumption of your activity 23:40
$clkao.develop($code)
maybe poll use.perl.org/~autrijus/journal/ in the mean time ;) 23:42
clkao is there p6bibles with test result annotated ? 23:43
mugwump I think you need to use one of the scripts in util/ 23:44
like run-smoke.pl
nothingmuch clkao: i have a small shell script 23:47
clkao ya, i know runsmoke 23:48
pasteling Someone at 212.143.91.217 pasted "p6bible + test annotation + svn up loop" (39 lines, 905B) at sial.org/pbot/10177 23:49
nothingmuch s/Someone/nothingmuch/
putter mugwump: sorry, a cperl-mode patch isn't going to happen tonight. note that perl-mode doesn't have the ? problem. 23:54
mugwump so perl-mode is better for perl 6?
I'm used to the highlighting characteristics of cperl-mode now! :)
putter rightthing long term is perhaps to have a fast p6 syntactic/semantic analyzer which can, among other things, spit out 23:57
mugwump AST 23:58
along with which part of the source corresponds to each piece of the AST 23:59
putter sexps, so an emacs mode can do not only the usual kludged highlighting, but also semantics.