Mailing list for all users of the OCaml language and system.
 help / color / mirror / Atom feed
From: Xavier Leroy <Xavier.Leroy@inria.fr>
To: Leszek.Holenderski@gmd.de (Leszek Holenderski)
Cc: caml-list@inria.fr
Subject: Re: Shared libraries from caml
Date: Mon, 21 Oct 1996 16:42:34 +0200 (MET DST)	[thread overview]
Message-ID: <199610211442.QAA12172@pauillac.inria.fr> (raw)
In-Reply-To: <v01520d05ae8be16f23ce@[129.26.10.139]> from "Leszek Holenderski" at Oct 17, 96 01:33:45 pm


> Is there any way to produce a sunos and/or solaris shared library from a
> caml module? Preferably in Caml Special Light, but Objective Caml will also
> do.
> In fact, I'm interested in a more specific problem. Could I use csl or
> ocaml to produce input for the Tcl "load" command? Has anybody tried it
> yet?

Dynamic linking of Objective Caml modules inside an Objective Caml program
is not completely impossible, but requires a lot of work. There are
global tables in the runtime that collect infos on all the Caml modules
linked in the application. These tables are currently fixed-size and
built at link-time. In the presence of dynamic linking, these would
need to be made extensible and updated correctly after dynamic linking.

Dynamic linking of O'Caml modules inside an arbitrary program (e.g. tcl)
is even harder. The whole Objective Caml runtime needs to be embarked
somehow. Also, if you don't have no control over the program that does
the dynamic linking, it's very hard to perform the correct
initializations, both of the module and of the runtime system itself.

It would be much easier to link Tcl into an O'Caml program that has
already all O'Caml modules statically linked. The callback Tcl -> O'Caml
is not too hard to do, see CamlTk4 for an example.

- Xavier Leroy





  reply	other threads:[~1996-10-22 14:29 UTC|newest]

Thread overview: 3+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
1996-10-17 11:33 Leszek Holenderski
1996-10-21 14:42 ` Xavier Leroy [this message]
1996-10-22 15:57 Leszek Holenderski

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=199610211442.QAA12172@pauillac.inria.fr \
    --to=xavier.leroy@inria.fr \
    --cc=Leszek.Holenderski@gmd.de \
    --cc=caml-list@inria.fr \
    /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