Relay-Version: version B 2.10 5/3/83; site utzoo.UUCP Path: utzoo!mnetor!seismo!rutgers!sri-spam!mordor!lll-tis!ames!amdcad!sun!calma!delano From: delano@calma.UUCP (Pat Delano) Newsgroups: comp.lang.smalltalk Subject: Re: declarations vs smalltalk Message-ID: <687@calma.UUCP> Date: Wed, 1-Jul-87 00:37:09 EDT Article-I.D.: calma.687 Posted: Wed Jul 1 00:37:09 1987 Date-Received: Thu, 2-Jul-87 06:45:01 EDT References: <245100009@orstcs> Organization: GE/Calma Co., R&D Systems Engineering, Milpitas, CA Lines: 44 > > In short, there seems to be an implicit conflict between strong typing, or > typing of any sort, and polymorphism. Strengthing one limits the other. > Smalltalk has come down strongly on > the side of polymorphism, and even I (Smalltalk heretic than I am) have a > hard time imagining anything similar to Smalltalk that changes this. > > I am looking forward to hearing how I am all wrong, and how option number 5 > makes all problems go away. > > --tim budd (budd@oregon-state) I highly recommend an article I just finished: "On Understanding Types, Data Abstraction, and Polymorphism" by Cardelli and Wegner in ACM Computing Surveys, December 85. I'm not saying that you are wrong, but I think you may find the article very interesting. I thought it was excellent on first reading, and I plan to read it again. Here are a couple of quotes from the article: "Our objective is to understand the notion of type in programming languages, present a model of typed, polymorphic languages that reflects recent research in type theory, and examine the relevance of recent research to the design of practical programming languages. Object-oriented languages provide both a framework and a motivation for exploring the interaction among the concepts of type, data abstraction, and polymorphism, since they extend the notion of type to data abstraction and since type inheritance is an important form of polymorphism." Toward the end of the article: "Smalltalk and LISP Flavors have some idioms that cannot be reproduced because they are essentially impossible to type check statically. ... Generally, the freedom of type-free languages is hard to match, but we have shown in previous sections that polymorphism can go a long way toward achieving flexibility, and bounded quantification can extend that flexibility to inheritance situations." -- --- Patrick DeLano {sun,ucbvax}!calma!delano GE Calma Company 525 Sycamore Drive Milpitas, CA 95035 telephone 408 434-4429 ---