Perl is used during the build for Parrot in the same way shell scripts are typically used for build processes in other large projects. Perl helps us generate platform-specific code and helps to automate the generation of highly repetitive code that would be too hard to write and maintain by hand.
There is an intention to eliminate Perl as a build dependency for Parrot. Once the Parrot binary has been built there is no need to have or use Perl. At that point, there is also no need to use C. Once Parrot is built, all programming for the platform can be done in PIR or a high-level language of your choice. PASM is not used and is not recommended to be used for any development. --Andrew Whitworth 2010/1/22 atex.way <[email protected]>: > > compiling & using parrot need three languages, c, pir(or pasm), perl. can > only use c and (pir or perl)?(certainly, pasm can exist) > > > 2010-01-22 > ________________________________ > atex.way > ________________________________ > 发件人: NotFound > 发送时间: 2010-01-22 01:48:47 > 收件人: Jonathan Leto > 抄送: parrot-dev; neko > 主题: Re: Neko VM and Parrot VM >> Parrot is written in C while Neko compiler is written... in Neko. The >> language is fully bootstrapped right now. Also, Neko is lightweight >> and the >> Virtual Machine is only 68 KB on Linux and 40 KB on Windows, while >> still offering a very good speed. >> >> =end FAQ snippet >> >> I must say that this seems like it is spreading a bit of >> misinformation about Parrot. I am sure it is mostly due to being >> outdated information, but I would love to clear up any >> misunderstanding. >> >> 1) "Targeting Parrot is quite complex, with different languages at >> different levels (low level PASM and medium level PIR)" >> >> All High Level Language (HLL) developers should be writing PIR [0] or >> NQP [1]. No human should ever write PASM [2] unless they are testing >> something specific about PASM in the Parrot test suite. > (...) >> 4) Parrot is written in C while Neko compiler is written... in Neko. >> >> This is also blatantly false. Neko *does* have a core written in C, >> just like Parrot. As much as Neko as possible is implemented in Neko, >> and the same goes for Parrot. Parrot is actually written in >> "C-with-sugar" and there is a build subsystem (written in Perl 5) >> which translates this "C-with-sugar" language into pure C. > Winxed stage 1 is written in Winxed and generates PIR without using > NQP or any other compiler tool. It has reached that state in two > months, so is not nice to say that targetting parrot is quite complex. > And, as you say, it doesn't need to use PASM at all. That exemplifies > that is perfectly possible to write bootstrapped compilers targeting > parrot, with or without PIR, with or without NQP. > -- > Salu2 > _______________________________________________ > http://lists.parrot.org/mailman/listinfo/parrot-dev > _______________________________________________ > http://lists.parrot.org/mailman/listinfo/parrot-dev > > _______________________________________________ http://lists.parrot.org/mailman/listinfo/parrot-dev
