On Wed, Nov 13, 2002 at 11:08:08AM +0200, Markus Laire wrote:
> On 12 Nov 2002 at 16:40, Marius Nita wrote:
> 
> > Hello,
> > 
> > I have a question about the Parrot FAQ. I hope it's not too
> > off-topic for this list. The FAQ mentions that "it would be nice to
> > write the Perl to Bytecode compiler in Perl" and that there is no
> > bootstrap problem. 
> > 
> > Does this mean that the perl6 compiler is written in perl5 and it
> > will be rewritten in perl6 when a large enough subset of perl6 is
> > implemented? I figure Perl5 will be obsolete at some point in the
> > future... 
> 
> perl6, or parrot, or something else which runs on parrot.
> With parrot you have a lot of possibilities on which languages to use 
> (once it's complete).

Thanks, this makes sense. There would still be 'a bootstrapping problem' since
the compiler would have to be rewritten in perl6. As I understand things,
Parrot is a bytecode compiler/interpreter, but a 'language compiler' has to be
written in some other language which already compiles to parrot assembly. (or
has a compiler in general -- like C) So if the perl6 compiler is
written in Cola/Jako/C/etc, it would have to be rewritten in perl6 once perl6
can be compiled with this (Cola/Jako/C/etc) compiler. Or a small subset of
perl6 can be implemented in perl5, and then it can be incremetally
implemented, at each stage using only the current available subset of perl6.
(which is classic bootstrapping)

I don't know how big of an issues this rewriting part is. I was just wondering
why the FAQ saw it as a non-issue, which led me to wonder whether rewriting is
necessary to begin with. I think it is.

Thanks,
marius

> > I noticed that the current incomplete perl6 implementation is written
> > in perl5 using Parse::RecDescent, but I figured it's just a test
> > implementation until the "real" compiler is written in C... 
> 
> perl5 won't be used anywhere when all is ready.
> 
> There will be small 'miniparrot' (currently in development), which 
> can be build with just C compiler [was anything else required?].
> 
> Miniparrot can then be used to build everything else, including full 
> parrot, perl6, other parrot-supported languaged, etc..
> 
> This 2nd step might be e.g. Bytecode-compiled perl6-program which is 
> simple enough to work with miniparrot.
> 
> (Here might be some mistakes, but this is as I understand this, based 
> on active lurking here)
> -- 
> Markus Laire 'malaire' <[EMAIL PROTECTED]>
> 

Reply via email to