Autrijus: Actually, I think Pugs and Parrot will meet in the middle. Where Pugs AST meets Parrot AST and the compiler is written in Perl 6 that can then be run on Parrot. chromatic: I thought Pugs would get rewritten in C for Parrot? Autrijus: No, in Perl 6. chromatic: Can GHC retarget a different AST then? Autrijus: It can, but that's not the easier plan. chromatic: It's easy for me. I don't plan to do it. Autrijus: The easier plan is simply for Pugs to have a Compile.hs that emits Parrot AST. Which, I'm happy to discover yesterday, is painless to write. (Ingy and I did a KwidAST->HtmlAST compiler in an hour, together with parser and AST.) #### chromatic: Are you compiling it to native code now? I remember that being a suggestion a few days ago. Autrijus: Pugs itself is compiled to native code; it is still evaluating Perl 6 AST, though. chromatic: It's like Perl 5 in that sense then. Autrijus: Yes, it's exactly like Perl 5. Have you read PA01? chromatic: I have. Autrijus: Cool. So yeah, it's like Perl 5 now. The difference is B::* is trivial to write in Pugs chromatic: Except maintainable. Autrijus: And yeah, there's the maintainable bit. Pugs is <4k lines of code. I think porting Pugs to Perl 6 will take about the same number of lines, too.