fs@caesar.cs.tulane.edu (Frank Silbermann) (05/22/91)
<MARK.91May21104405@adler.philosophie.uni-stuttgart.de> mark@adler.philosophie.uni-stuttgart.de Mark Johnson: > It seems to me in most work on programming languages > the notions of sorts and types are systematically confused > - often one hears the terms used as synonyms. > > The notion of "sort" is a _semantic_ one; > the universe of entities is conceptualized > as divided into distinct sorts. > > The notion of "type" is a _syntactic_ one > expressions of a language are classified into distinct types. > > Clearly, type distinctions in a language are most useful > if they correspond to something semantic. > In practice often types and sorts are "coupled", > i.e. expressions of a certain type are required > to denote entities of a certain sort, > but there is no logical necessity for this to be the case. Declarative programming paradigms (e.g. functional programming), are characterized by a very close correspondence between syntactic and semantic constructs. At least when proposing a new type system for functional programming, it would seem proper to explain the semantic meaning of "type" before core-dumping a set of mechanical rules. If the "types" _are_ meant to denote sorts, then these sorts (domains?) ought to be understood and explained. Frank Silbermann fs@cs.tulane.edu Tulane University New Orleans, Louisiana USA