hoodwink.d enhanced


Autrijus Raising Perl6 as a Real Puppy Should #

by why in inspect

Okay, well, from my point of view, from where I’m at in my life, the most baffling, dazzling, and enchanting read is the journal of Autrijus Tang, wherein he helps us all see how incredibly straightforward and pleasant it can be to code a Perl6 interpreter in Haskell and to call that interpreter Pugs. One-hundret-n-fife days ago he just suddenly jumped into the ground and started burrowing through the leaves and meadows, digging through the unexplored landscape of the priestly folklore that is Perl6. His swivel-necked drill glows fiercely—it is Haskell. (Keep in mind this all takes place during the monadic revolution.)

Is he really evangelizing Haskell? Is he really tossing together Perl6 from leftover pancake mix and used pinstripe pants? Yet? A Perl6 Wizard RPG? A Perl6 Metaclass? YAML in Perl6? And who—if they—but now??

Great coats, kid, slow down and read the guy’s journal.

said on 17 May 2005 at 01:18

Perl6 frightens me. Do such things come from the minds of mere men, or living demons?

said on 17 May 2005 at 04:44

this right here is why the world still needs perl6 :)

said on 17 May 2005 at 07:31

Just goes to show that FP is pretty suited to writing production rule/grammar type thingamajigs.

Personally I’m an Erlang n’ Ruby fella.

said on 17 May 2005 at 07:56

So much talent, wasted. I’d love to have Autrijus join the Ruby community.

said on 17 May 2005 at 10:46

Ah, but those Perl6 metaclasses are real metaclasses, not at all the same thing as that for which the term has been repurposed in Ruby.

If Ruby had such metaclasses, self.class.class would be one.

said on 17 May 2005 at 11:36

self.class.class is a metaclass for me. What do you need from custom metaclasses in perl6/python that you can’t get with mixins in ruby?

said on 17 May 2005 at 12:13

It is, but Perl6 (apparently) makes an additional distinction. If Ruby worked that way, you would see e.g.:

 >> self.class.class
 => MetaClass

and probably:

 >> MetaClass.ancestors
 => [MetaClass, Class, Module, Object, Kernel]

How useful that distinction would actually be is an issue I’m not up to thinking about right now.

said on 17 May 2005 at 12:16

(I’m guessing you’re largely correct about mixins)

said on 17 May 2005 at 16:05

Daniel Berger: Hey, see, I just finished reading the Poignant guide. Be patient. :-)

Also, I’d be happy to salvage some of my wasted talent to work with the Cardinal project—I’d really like to see a champion for it.

We already have close collaboration between Pyrate(Python), Partcl(Tcl), Pugs(Perl6), Ponie(Perl5) and other languages, and I’m sure I can help out with getting Cardinal(Ruby) up to speed.

said on 17 May 2005 at 20:04

Hilarious. Tang.

said on 17 May 2005 at 20:05


said on 18 May 2005 at 01:13

Autrijus: Please do come help out with the Cardinal project, we could definately use all the help we can get.

said on 18 May 2005 at 05:57

cardinal dead anyway? IIRC nobody knew how to use racc and it all ended there.

said on 18 May 2005 at 15:45

well, isn’t, dead is a strong word.

I think it’s more a matter of finding time to work on it again. I’m currently embattled in a graduate-level school term so I won’t have any time again till mid-June… and even then it could be that I’ll get a job (miracles sometimes happen :) and thus still won’t have much time between a job and writing my thesis. I suppose I should have made my thesis project Cardinal, but for some reason these hardware types aren’t interested in Cardinal unless it could be implemented in an FPGA (and that would be waaaayyyy too much work for something that wouldn’t be useful to anybody ;-)

I’m sure we can figure out RACC .

Comments are closed for this entry.