Relay-Version: version B 2.10 5/3/83; site utzoo.UUCP Posting-Version: $Revision: 1.6.2.16 $; site ada-uts.UUCP Path: utzoo!watmath!clyde!burl!ulysses!allegra!mit-eddie!think!ada-uts!richw From: richw@ada-uts.UUCP Newsgroups: net.lang Subject: Re: Type-System Questions Message-ID: <15100009@ada-uts.UUCP> Date: Thu, 31-Oct-85 11:06:00 EST Article-I.D.: ada-uts.15100009 Posted: Thu Oct 31 11:06:00 1985 Date-Received: Sun, 3-Nov-85 09:45:32 EST References: <15100005@ada-uts.UUCP> Lines: 43 Nf-ID: #R:ada-uts:15100005:ada-uts:15100009:000:1585 Nf-From: ada-uts!richw Oct 31 11:06:00 1985 First of all, thanks for all the replies; I've got quite a bit of reading to do... >>> 2) Includes BOTH compile-time types and run-time, "manifest" types? I apologize for not being more specific about "manifest" types (see below for a reference to the text from which I grabbed the term). I realize now that unions (of C) or variants (of Pascal) or oneofs/variants (of CLU) might be lumped in this category. These aren't quite what I was curious about because they are types which represent a union of a _finite_ set of other types. I was curious about data which stored the name (or something) of its type, and thus could be ANY one type of the "infinite" number of types available (assuming the language provided for user-defined types). Since the term, "manifest", apparently isn't as universal as I'd assumed: > Terminology problem here: "Manifest" types are types known to the > compiler. Types known only at runtime are called "latent" types. > Roughly the same meanings are associated with "static types" (known to the > compiler) and "dynamic types" (known at runtime; more to the point, > changeable at runtime). ...let me quote my source. I used the term "manifest" after seeing it in: "Structure and Interpretation of Computer Programs", by Abelson, Sussman, & Sussman Specifically, page 132 says: "A data object that has a type that can be recognized and tested is said to have _manifest_ type." The text then goes on to describe a scheme (no pun intended) for doing generic arithmetic using tagged data. Again, thanks for the replies. -- Rich Wagner