caml-list - the Caml user's mailing list
 help / color / mirror / Atom feed
From: Stefano Zacchiroli <zack@bononia.it>
To: caml-list@inria.fr
Subject: Re: [Caml-list] undocumented external ... = "%identity"
Date: Sat, 1 Nov 2003 09:22:16 +0100	[thread overview]
Message-ID: <20031101082216.GB26261@fistandantilus.takhisis.org> (raw)
In-Reply-To: <20031031074747.GA29233@force.stwing.upenn.edu>

On Fri, Oct 31, 2003 at 02:47:48AM -0500, William Lovas wrote:
> Obj.magic's "behavior" *is* subject to change, since it depends upon
> the underlying representation of values.  The Obj module's
> documentation is, in a very real sense, the entire implementation of
> the O'Caml compiler and runtime.

The fact that Obj.magic _implementation_ depends on the entire
implementation of the OCaml compiler and runtime, doesn't imply that its
_interface_ does as well.

If I'm using Obj.magic I'm supposed to know what I'm doing (the examples
reported in the post you mentioned are significative here) and that I'm
sure that the type magic I'm doing are correct. In such a case the
correctness of those magics will change only when the assumption on
which their correction rely changes, for example a change in the type
system.

Such major changes are usually backward compatibile, if not I suppose
the Obj.magic forward porting problem will be the minor problem
programmer will have with a new ocaml release ...

If I look at the post you mentioned, I see that it's from January 1999,
and Obj.magic usage seems to be exactly the same as today.

> Such "okay" uses are sufficiently bizarre, though, that it makes sense to
> leave the Obj module undocumented -- anyone who needs it will already
> understand how it works.

Poor point, I still don't think such a feature should be mentioned just
on this mailing list and in the lablgtk code. Why not adding it to the
documentation with a huge disclaimeir?

Cheers.

-- 
Stefano Zacchiroli  --  Master in Computer Science @ Uni. Bologna, Italy
zack@{cs.unibo.it,debian.org,bononia.it}  -  http://www.bononia.it/zack/
"  I know you believe you understood what you think I said, but I am not
sure you realize that what you heard is not what I meant!  " -- G.Romney

-------------------
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


  reply	other threads:[~2003-11-01  8:22 UTC|newest]

Thread overview: 7+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2003-10-29 10:42 Stefano Zacchiroli
2003-10-29 11:39 ` Jacques Garrigue
2003-10-30 19:55   ` Stefano Zacchiroli
2003-10-31  7:47     ` William Lovas
2003-11-01  8:22       ` Stefano Zacchiroli [this message]
2003-11-03 14:03         ` Damien Doligez
2003-11-03 14:20           ` Nicolas Cannasse

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=20031101082216.GB26261@fistandantilus.takhisis.org \
    --to=zack@bononia.it \
    --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).