Hey everyone,

This suggestion is quite blue sky, but I thought that one potential
future solution for providing multiple language support would be by
implementing a "nsparrot". (warning, many quotations from various sites
ahead, with links)

Parrot is (from http://www.parrotcode.org):

"Parrot is the new interpreter being designed from scratch to support
the upcoming Perl6 language. It is being designed as a standalone
virtual machine that can be used to execute bytecode compiled dynamic
languages such as Perl6, but also Perl5. Ideally, Parrot can be used to
support other dynamic, bytecode-compiled languages such as Python, Ruby
and Tcl."
 - http://www.parrotcode.org/faq/#what_is_parrot

The interesting thing about using Parrot is that there are many real
efforts to get various langauges to "speak" Parrot. This is by
compiling one bytecode to Parrot. In particular, there are already
proof-of-concept projects that have implemented Java, Python and Scheme.

"It depends on what you mean by real. :^)
    *  Leon Brocard has released a proof-of-concept Java bytecode to
Parrot bytecode compiler.
    *  Gregor Purdy is working on a little language called Jako that
targets Parrot bytecode directly. (Available with the Parrot
distribution.)
    * Dan Sugalski and Jeff Goff have started work on compiling Scheme
down to Parrot bytecode. (Available with the Parrot distribution.)"
   -
http://www.parrotcode.org/faq/
#when_can_i_expect_to_use_parrot_with_a_real_programming_language

In addition (and this is where things get interesting), there is talk
about a C#->Parrot implementation:

" Here's an interesting bit of information. The portable.net/dotgnu
brain, Rhys Wheatherly, has started making inquiries on the perl6
mailing list about the possibility of exporting parrot bytecode from
gnu's C# compiler. I would like to see Rhys' project differentiated
from mono, and I think Rhys would like to see the project achieve some
independence from Microsoft's IPR (the real reason).

http://dotgnu.org/pipermail/developers/2002-October/008380.html

They also talk about Python->Parrot bytecode being relatively painless,
and I know that Simon Cozens is looking into Ruby support. I'm really
looking forward to Parrot."
 - John Sequeira's blog
(http://radio.weblogs.com/0103492/2002/11/07.html)

Unfortunately, parrot is not done, yet. The lead developer apparently
has an 18 month timeline for beta (this is open source, after all):

"Parrot is in the early phases of its implementation. The primary way
to use Parrot is to write Parrot assembly code, described in PDD6.

You  can also create dynamic content within Apache using Ask Bjorn
Hansen's  mod_parrot module. You are strongly advised that
mod_parrot is a toy,  and should not be used with any production code."
 - http://www.parrotcode.org/faq/#can_i_use_parrot_today

Anyway, I hope this helps. Perhaps a potentially new way for thinking
about the problem?

Talli

Musea Technologies        http://www.museatech.net
[EMAIL PROTECTED]        66 Leonard St
tel: 212 941 0351             Apt 8B
cel: 646 594 1059            New York, NY 10013
AOL IM: tallisomekh         MSN IM: [EMAIL PROTECTED]

Reply via email to