Статья Л. Карделли и П. Вегнера, опубликованная в Computing
Surveys, Vol. 17, n. 4, Dec 1985. Посвящена системам типизации,
абстракции данных и полиморфизму.
Содержание.
From Untyped to Typed Universes.
Organizing Untyped Universes.
Static and Strong Typing.
Kinds of Polymorphism.
The Evolution of Types in Programming Languages.
Type Expression Sublanguages.
Preview of Fun.
The l-Calculus.
The Untyped l-Calculus.
The Typed l-Calculus.
Basic Types, Structured Types and Recursion.
Types are Sets of Values.
Universal Quantification.
Universal Quantification and Generic Functions.
Parametric Types.
Existential Quantification.
Existential Quantification and Information Hiding.
Packages and Abstract Data Types.
Combining Universal and Existential Quantification.
Quantification and Modules.
Modules are First-Class Values.
Bounded Quantification.
Type Inclusion, Subranges, and Inheritance.
Bounded Universal Quantification and Subtyping.
Comparison with Other Subtyping Mechanisms.
Bounded Existential Quantification and Partial Abstraction.
Type Checking and Type Inference.
Hierarchical Classification of Type Systems.
Conclusions.
Acknowledgements.
References.
Appendix: Type Inference Rules.
Содержание.
From Untyped to Typed Universes.
Organizing Untyped Universes.
Static and Strong Typing.
Kinds of Polymorphism.
The Evolution of Types in Programming Languages.
Type Expression Sublanguages.
Preview of Fun.
The l-Calculus.
The Untyped l-Calculus.
The Typed l-Calculus.
Basic Types, Structured Types and Recursion.
Types are Sets of Values.
Universal Quantification.
Universal Quantification and Generic Functions.
Parametric Types.
Existential Quantification.
Existential Quantification and Information Hiding.
Packages and Abstract Data Types.
Combining Universal and Existential Quantification.
Quantification and Modules.
Modules are First-Class Values.
Bounded Quantification.
Type Inclusion, Subranges, and Inheritance.
Bounded Universal Quantification and Subtyping.
Comparison with Other Subtyping Mechanisms.
Bounded Existential Quantification and Partial Abstraction.
Type Checking and Type Inference.
Hierarchical Classification of Type Systems.
Conclusions.
Acknowledgements.
References.
Appendix: Type Inference Rules.