On Fri, Aug 19, 2005 at 07:37:41PM +0200, Nicolas Cannasse wrote:
> I released a few days ago the Neko intermediate language at
> http://nekovm.org . In the FAQ I'm comparing Neko to LLVM / C-- and Parrot.
> According to a mail sent to me by Leopold Toetsch I got some points wrong
> when trying to generalize theses three frameworks in the same category,
> which of course is true since Parrot is more "high-level" than the two
> others and still I guess more "low-level" than Neko.

I'm not sure how you mean by Neko being of higher level than Parrot;
for all I can see they offer pretty similiar abstractions, with Parrot
additionally providing an object model (including RTTI for user-defined
types), namespaces, and first-class continuations.

> I would like to know if some people would be interested in studying a way to
> run Perl6 programs on Neko, or which would be the problems in trying to do
> so, since Neko - as Parrot - is intended to provide a common runtime for
> several languages.

Cool. I'd like to direct further perl6-on-neko mails to perl6-compiler
(Cc'ed), if that is okay with you.

The most crucial thing I see from Parrot is the built-in support of full
continuations; most other things Perl 6 needs can be faked one way or
another, but a CPS-transformed runtime on another VM is more difficult
to reason about than a VM that is built around CPS.

Also, while to me PIR is much more primitive and considerably harder to
work with than the Neko language (which at least has nested expressions),
at least the builtin types and functions are enumerated (with
documentations), which makes a code generator much easier to write.

It would be great if some kind of documentation can be generated
automatically, akin to how Parrot generates .pod files from ops/*.op,
about the semantics of various builtin (neko/vm/builtins.c) and library
(neko/lib/) primitives.  Without that information it is not feasible
for us to source-dive constantly to target the runtime.

> I guess that some LambdaCamels here will be interested to know that the Neko
> compiler is written in OCaml and than I'm planing to add the NekoML language
> that would bring a ML type system language running on the Neko runtime, the
> goal being to be able to rewrite the Neko compiler in NekoML.

That would be great.  It would be even better if F-sub can be translated
to NekoML in a type-directd fashion somehow, since that will safe a lot
of time here.  AbsIL-to-NekoML would be useful, too.

Thanks,
/Autrijus/

Attachment: pgpc4pUjWyEll.pgp
Description: PGP signature

Reply via email to