From: skaller <skaller@users.sourceforge.net>
To: Andreas Rossberg <rossberg@ps.uni-sb.de>
Cc: caml-list <caml-list@inria.fr>
Subject: Re: [Caml-list] Why must types be always defined at the top level?
Date: 24 Jun 2004 00:45:31 +1000 [thread overview]
Message-ID: <1088001930.1941.31.camel@pelican.wigram> (raw)
In-Reply-To: <40D97122.8000909@ps.uni-sb.de>
On Wed, 2004-06-23 at 22:01, Andreas Rossberg wrote:
> I believe the presence of syntactic names for all generative types is
> essential for the theoretical underpinnings of OCaml's type and module
> system.
This may be so, but I still don't quite understand it.
In Felix generatives types all have fresh integers
assigned to them that act as fresh names: there's no
separate compilation though. Does that have something
to do with it?
> > Topic ---------------------Language X ------------ Language Y
> > Intermodule fun calls Yes No
> > Intermodule type recursion Yes No
> > Nest everything (excl funcs) Yes No
> > Nest funcs No Yes
> > Full sep compil Yes No
> > Platform indep code No Yes
>
> How did you arrive at that table?
With a sense of humour.. :)
> AFAICS, the right column contains too
> many No entries (intermodule function calls, full sep compilation),
Oh? Ocaml does not support forward calls of named functions
across compilation unit boundaries. C/C++ do. Ocaml does not
support arbitrary order of compilation. C/C++ do. I agree
it is not really right to call the C/C++ header file mechanism
true separate compilation though (since interfaces are recompiled
multiple times), but the fact is using the 'advertised' mechanism
you just don't have to worry about compilation order in C/C++.
You can 'chunk' your source as you see fit. In Ocaml you cant.
[Yet!]
> while the left contains too many Yes entries (nest everything, or rather
> compositionality is definitely not given for C/C++,
You are probably right. The table indicates this: working in
C++ it is extremely annoying not having functions and their
scopes as first class .. such a relief to work with Ocaml.
But then suddenly things that 'just work' in C++ that you
take as a 'given' turn out *not* to work in Ocaml.
Please note the table was not intended to be taken
seriously on a technical front. I have no doubt whatsoever
which language I prefer to work with :))
--
John Skaller, mailto:skaller@users.sf.net
voice: 061-2-9660-0850,
snail: PO BOX 401 Glebe NSW 2037 Australia
Checkout the Felix programming language http://felix.sf.net
-------------------
To unsubscribe, mail caml-list-request@inria.fr Archives: http://caml.inria.fr
Bug reports: http://caml.inria.fr/bin/caml-bugs FAQ: http://caml.inria.fr/FAQ/
Beginner's list: http://groups.yahoo.com/group/ocaml_beginners
next prev parent reply other threads:[~2004-06-23 14:45 UTC|newest]
Thread overview: 37+ messages / expand[flat|nested] mbox.gz Atom feed top
2004-06-22 22:41 Richard Jones
2004-06-22 22:53 ` Markus Mottl
2004-06-22 23:32 ` skaller
2004-06-23 12:01 ` Andreas Rossberg
2004-06-23 14:45 ` skaller [this message]
2004-06-23 16:28 ` Andreas Rossberg
2004-06-23 20:21 ` skaller
2004-06-23 20:52 ` skaller
2004-06-24 14:27 ` John Hughes
2004-06-24 16:47 ` Andreas Rossberg
2004-06-24 17:30 ` Markus Mottl
2004-06-24 17:45 ` Xavier Leroy
2004-06-24 19:46 ` John Hughes
2004-06-24 19:56 ` David Brown
2004-06-24 19:57 ` William D. Neumann
2004-06-24 20:13 ` Olivier Andrieu
2004-06-24 23:26 ` Brian Hurt
2004-06-25 10:20 ` skaller
2004-06-25 11:07 ` Basile Starynkevitch [local]
2004-06-25 12:30 ` skaller
2004-06-25 14:38 ` [Caml-list] Thread and kernel 2.6 pb still there in CVS Christophe Raffalli
2004-06-25 16:08 ` [Caml-list] " Marco Maggesi
2004-06-25 16:32 ` Markus Mottl
2004-06-28 15:08 ` [Caml-list] " Xavier Leroy
2004-06-28 18:50 ` Benjamin Geer
2004-06-29 2:26 ` Christophe Raffalli
[not found] ` <7AFB5F64-C944-11D8-975C-00039310CAE8@inria.fr>
[not found] ` <40E11621.3050709@univ-savoie.fr>
2004-07-05 15:14 ` Christophe Raffalli
2004-07-05 16:34 ` Xavier Leroy
2004-07-06 9:33 ` Alex Baretta
2004-07-08 13:51 ` Christophe Raffalli
2004-07-08 15:03 ` Xavier Leroy
2004-07-09 23:21 ` Donald Wakefield
2004-07-10 10:56 ` Damien Doligez
2004-06-24 23:23 ` [Caml-list] Why must types be always defined at the top level? Brian Hurt
[not found] ` <Pine.LNX.4.44.0406241813370.4202-100000@localhost.localdom ain>
2004-06-26 23:08 ` Dave Berry
2004-06-25 1:59 ` Yaron Minsky
2004-06-24 23:08 ` Brian Hurt
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=1088001930.1941.31.camel@pelican.wigram \
--to=skaller@users.sourceforge.net \
--cc=caml-list@inria.fr \
--cc=rossberg@ps.uni-sb.de \
/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