caml-list - the Caml user's mailing list
 help / color / mirror / Atom feed
From: Philippe Wang <philippe.wang.lists@gmail.com>
To: Joel Reymont <joelr1@gmail.com>
Cc: caml-list@yquem.inria.fr
Subject: Re: [Caml-list] vm in ocaml
Date: Wed, 24 Feb 2010 22:36:07 +0100	[thread overview]
Message-ID: <4d1b2df21002241336w73c6d80ci561b245ec00ce4f8@mail.gmail.com> (raw)
In-Reply-To: <C17EADF8-29B1-4DDC-9B91-F300B78F26CA@gmail.com>

On Wed, Feb 3, 2010 at 4:47 PM, Joel Reymont <joelr1@gmail.com> wrote:
> I have a translator from a Pascal-like trading language written in OCaml and I need the output to run as a DLL embedded in a trading platform.
>
> I'm thinking of generating bytecode and have the user pass the path to the bytecode file to the DLL during initialization.
>
> I don't want to load source code into my runtime since I want to do a lot of error checking on it to make sure the runtime experience is smooth. I don't want to ship ocamlc, etc. since I want to have a single executable. I'm not sure if embedding OCaml (and thus a license!) is needed to generate OCaml bytecode in my scenario, so the bytecode I'm talking about is my bytecode.
>
> I understand that a bit of C will be required to wrap the OCaml runtime in a DLL. I would prefer to stay with OCaml for the whole project which prompts my question...

I understand that :
- you want to generate some bytecode (with your own bytecode specs)
from the Pascal-like language
- interprete this bytecode with a VM written in OCaml
but actually I don't quite understand your question :-/

> Has anyone used OCaml to write a virtual machine?

Some people (including some colleagues of mine (and me), actually)
have used OCaml to write an OCaml virtual machine.
(I've heard someone say (indirectly) that we were not the first).
It is an interesting exercise... for people who prefer writing in
OCaml rather than in C.
It's also interesting to run an OCaml VM in an OCaml VM ... in an
OCaml VM, the last one being in OCaml compiled with ocamlopt or in C
(or in Java [Cadmium] or in JavaScript [O'Browser], though we haven't
tried), and all the previous one being in OCaml compiled with ocamlc.

> How big is the OCaml runtime when bundled as a DLL or shared library?

Sorry I've no idea for this question.

-- 
Philippe Wang
   mail@philippewang.info


      reply	other threads:[~2010-02-24 21:36 UTC|newest]

Thread overview: 2+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2010-02-03 15:47 Joel Reymont
2010-02-24 21:36 ` Philippe Wang [this message]

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=4d1b2df21002241336w73c6d80ci561b245ec00ce4f8@mail.gmail.com \
    --to=philippe.wang.lists@gmail.com \
    --cc=caml-list@yquem.inria.fr \
    --cc=joelr1@gmail.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).