Mailing list for all users of the OCaml language and system.
 help / color / mirror / Atom feed
From: "Rafael 'Dido' Sevilla" <sevillar@team.ph.inter.net>
To: Michael Hicks <mhicks@cs.cornell.edu>
Subject: Re: [Caml-list] Rewriting UNIX in Caml and getting rid of the C disease
Date: Thu, 22 Nov 2001 11:10:50 +0800	[thread overview]
Message-ID: <20011122111049.A702@team.ph.inter.net> (raw)
In-Reply-To: <706871B20764CD449DB0E8E3D81C4D4301FA2278@opus.cs.cornell.edu>; from mhicks@cs.cornell.edu on Wed, Nov 21, 2001 at 04:25:12PM -0500


On Wed, Nov 21, 2001 at 04:25:12PM -0500, Michael Hicks wrote:
> Cornell and AT&T Research called Cyclone.  It incorporates successful
> high-level language features to ensure safety, but unlike most
> high-level languages, gives the programmer control over data
> representation and, to a large extent, memory management (e.g. a GC is
> not required).  Furthermore, Cyclone is very close to C, thus

Oh, a GC is not required?  Last time I checked the website it used the
Boehm-Demers-Weiser conservative garbage collector.  So the only time a
GC is not required is when your program does little or NO heap
allocation whatsoever...  The FAQ says:

Q: Can I call free?
A: No, individual memory objects may not be freed. In future versions,
we may support freeing objects for which you can prove that there are no
other pointers to the object. Until then, you must rely on a garbage
collector to reclaim heap objects or use regions (similar to ``arenas''
or ``zones'') for managing collections of objects.

Thus Cyclone doesn't (yet anyway), give the programmer that much control
over memory management.  But hey, the compiler is still at Version 0.2
so it's got a long way to go...

> So that I'm not too off-topic, I should say that OCaml has been a strong
> influence on Cyclone---many of the OCaml libraries and tools were ported

This was one of the first things I noted about it, as these days I'm
just beginning to learn Caml myself and ran into Cyclone just a few days
ago (thanks to aleph1)...

Looks very cool.  Might be a better language to write a next-generation
OS in once it matures some more, but yes, for applications that don't
require intimate contact with the machine (almost all applications fit
into this category), Caml may work better.

-- 
Rafael R. Sevilla <sevillar@team.ph.inter.net>   +63(2)   8177746 ext. 8311
Programmer, Inter.Net Philippines                +63(917) 4458925
http://dido.engr.internet.org.ph/                OpenPGP Key ID: 0x5CDA17D8
            Heute die Welt und Morgen das Sonnensystem!
-------------------
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:[~2001-11-22  3:12 UTC|newest]

Thread overview: 10+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2001-11-21 21:25 Michael Hicks
2001-11-22  3:10 ` Rafael 'Dido' Sevilla [this message]
  -- strict thread matches above, loose matches on Subject: below --
2001-11-12 21:52 Arturo Borquez
2001-11-11  5:17 Berke Durak
2001-11-11  6:11 ` Eric Newhuis
2001-11-11  8:22   ` Tom
2001-11-11 12:47 ` Sven
2001-11-11 13:32 ` Julian Assange
2001-11-12  8:32 ` Jeff Henrikson
2001-11-12 13:39 ` Mark Seaborn

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=20011122111049.A702@team.ph.inter.net \
    --to=sevillar@team.ph.inter.net \
    --cc=mhicks@cs.cornell.edu \
    /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