caml-list - the Caml user's mailing list
 help / color / mirror / Atom feed
From: "Walter B. Rader" <wrader@OCF.Berkeley.EDU>
To: caml-list@inria.fr
Subject: [Caml-list] More OCaml+windowing system questions
Date: Tue, 15 Jan 2002 01:40:16 -0800 (PST)	[thread overview]
Message-ID: <Pine.SOL.4.44.0201150139340.7837-100000@apocalypse.OCF.Berkeley.EDU> (raw)


I am using OCaml and SDL (Software DirectMedia Layer, a
cross-platform graphics library) to create a windowing
system that runs on top of the user's existing OS+GUI (e.g.
Windows, MacOS, etc.) and provides similar services.  I
figure that writing it this way allows me to take advantage
of the services that the GUI and OS already offer, while at
the same time extending its capabilities.

The windowing system's capabilities (will) include
portability (offered to some degree by OCaml and to a larger
degree by SDL,) execution of byte-code compiled applications
that use the windowing system, network transparency, the
option to reconfigure at run-time UI behavior (e.g. for
"skins," users with assistive hardware such as screen-
readers, etc.) and so forth.

The project is still in its early stages and as such I don't
have a lot of technical details to add before launching into
my questions.  =)

I apologize if these are RT*M type questions - I am a bit
overwhelmed trying to learn OCaml and choosing THIS as my
first project =).  Feel free just to give me pointers to
information elsewhere on the web.


Question #1: Is OCaml a suitable language for this project?
Based on what others have done, it seems that I "should"
use a language like C or C++.  When enumerating the
advantages OCaml offers, I came up with the following:

o first-class functions (very handy)
o type safety
o automatic garbage collection
o terse source code
o programs that use the windowing system can be distributed
  in byte-code for enhanced portability

However, C and C++ are extremely portable, which is very
appealing to me.  Why would OCaml be more suited for this
project?


Question #2: How portable *is* OCaml?  I see that binaries
are available for Linux, MS Windows, and Macintosh.  Has
there been success in porting OCaml to other platforms?  If
not the native-code compiler, at least the byte-code compiler
and interpreter?


Question #3: As mentioned previously, I will support running
byte-code applications that use the windowing system.  I
would like to be able to load each in its own process space,
so that the OS scheduler can handle scheduling.

(The benefit being that I don't have to employ some kind of
cooperative multi-tasking system, which I would have to do
if the windowing system and all applications executed in it
ran in the same process.)

Is there a "good" (efficient, elegant, etc.) portable way to
handle communication between the windowing system process and
the application process(es)?


Thanks so much for your time!

Walter Rader


-------------------
Bug reports: http://caml.inria.fr/bin/caml-bugs  FAQ: http://caml.inria.fr/FAQ/
To unsubscribe, mail caml-list-request@inria.fr  Archives: http://caml.inria.fr


             reply	other threads:[~2002-01-15  9:40 UTC|newest]

Thread overview: 5+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2002-01-15  9:40 Walter B. Rader [this message]
2002-01-15 10:24 ` Xavier Leroy
2002-01-15 10:48 ` Andreas Rossberg
2002-01-15 15:32   ` Warp
2002-01-15 16:26     ` Wolfgang Lux

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=Pine.SOL.4.44.0201150139340.7837-100000@apocalypse.OCF.Berkeley.EDU \
    --to=wrader@ocf.berkeley.edu \
    --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;
as well as URLs for NNTP newsgroup(s).