Re: Proposal for study: Add a categorical Initial type to ocaml

From: John Prevost (prevost@maya.com)
Date: Mon Oct 11 1999 - 21:30:03 MET DST


To: chet@watson.ibm.com
Subject: Re: Proposal for study: Add a categorical Initial type to ocaml
From: John Prevost <prevost@maya.com>
Date: 11 Oct 1999 15:30:03 -0400
In-Reply-To: chet@watson.ibm.com's message of "Sun, 10 Oct 1999 18:38:44 -0400"

chet@watson.ibm.com writes:

> Of course, it is problematic that "None" and "Some None" are
> indistinguishable. But is it a reason to not have such a facility (as
> a storage-cost-free "option" type constructor)?
>
> I'd like to believe that the answer is "no" -- that the efficiency
> values of such a type-constructor outweigh the semantic difficulties.
>
> Of course, there's only one way to prove that -- by implementing both
> and trying it out on large programs.

One might presume that the definition that "'a nullOption === 'a
nullOption nullOption" isn't too hard to understand (although it might
muck up the inference engine.) (Some (Some x)) would be the same as
(Some x) in this model, just as None would be the same as Some None.
Probably not suitable for a replacement of the option type, but a
useful additional type?

John.



This archive was generated by hypermail 2b29 : Sun Jan 02 2000 - 11:58:27 MET