Newsgroups: comp.lang.lisp,comp.lang.scheme
Path: cantaloupe.srv.cs.cmu.edu!bb3.andrew.cmu.edu!newsfeed.pitt.edu!scramble.lm.com!news.math.psu.edu!chi-news.cic.net!cs.utexas.edu!howland.reston.ans.net!nntp.coast.net!zombie.ncsc.mil!news.mathworks.com!newsfeed.internetmci.com!sgigate.sgi.com!sdd.hp.com!col.hp.com!news.dtc.hp.com!hplntx!hplntx.hpl.hp.com!gjr
From: gjr@hplgr2.hpl.hp.com (Guillermo (Bill) J. Rozas)
Subject: Re: Closures? Continuations??
Sender: news@hpl.hp.com (HPLabs Usenet Login)
Message-ID: <GJR.96Mar4162348@hplgr2.hpl.hp.com>
In-Reply-To: sjenkins@iastate.edu's message of 4 Mar 1996 22:01:30 GMT
Date: Tue, 5 Mar 1996 00:23:48 GMT
Reply-To: gjr@hpl.hp.com
References: <vfr750DnrD0q.3E0@netcom.com> <4hfp7q$j02@news.iastate.edu>
Nntp-Posting-Host: hplgr2.hpl.hp.com
Organization: Hewlett-Packard Laboratories, Palo Alto, CA
Lines: 21
Xref: glinda.oz.cs.cmu.edu comp.lang.lisp:21008 comp.lang.scheme:15232

In article <4hfp7q$j02@news.iastate.edu> sjenkins@iastate.edu (Steven L Jenkins) writes:

|   >
|   >    o Opaque Types
|
|   I gave Gary a bit of a hard time about this terminology myself -- the
|   context it came up in deals with records: in Scheme, if you want records,
|   you have to build them on top of an existing type (for example, lists or
|   vectors).  This is ok, except when you want to check the type of the object.
|   If it has been built on top of vectors, then the record is *both* a vector
|   and a record, which is not good.  What this boils down to is that if Scheme
|   had a mechanism for creating new types (completely new types..), this
|   would not happen.

Actually, you are describing "disjoint types".  "Opaque types" are
even stronger.  No one but the creator of the type can poke at it.

The current discussion arose because of this distinction.  Some of us
are (very) happy with disjoint types, but do not like opaque types.

Others like opaque types very much.
