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]
