Path: utzoo!utgpu!news-server.csri.toronto.edu!rpi!uwm.edu!spool.mu.edu!munnari.oz.au!bruce!goanna!ok From: ok@goanna.cs.rmit.oz.au (Richard A. O'Keefe) Newsgroups: comp.lang.misc Subject: Re: Dynamic typing (part 3) Message-ID: <5013@goanna.cs.rmit.oz.au> Date: 20 Mar 91 07:11:35 GMT References: <1991Mar15.153342.10670@rice.edu> Organization: Comp Sci, RMIT, Melbourne, Australia Lines: 31 In article <1991Mar15.153342.10670@rice.edu>, wright@datura.rice.edu (Andrew Wright) writes: > I would like to see a concise summary of the claimed advantages of > dynamic typing. The claimed advantages of static typing are numerous > and often argued (verification, efficiency, documentation, ...) but > the advantages of dynamic typing are less often discussed. Read "Object-Oriented Programming, an evolutionary approach" by Brad J. Cox, Addison-Wesley, ISBN 0-201-10393-1. If I can summarise his argument adequately in two sentences (and I really don't think I can do justice to it): - The fewer irrelevant constraints a software component includes in its interface, the easier it is to re-use that component or to continue to use it in an evolving application. - Latent typing is an effective way of removing some irrelevant constraints from an interface. This argument also supports Ada-style generics and ML-style polymorpism. Cox also discusses Ada generics. The static/dynamic typing issue is just one instance of the general early-binding/late-binding issue. The argument for dynamic typing can be put in a nutshell: "don't put anything in writing if you're going to regret it later". -- Seen from an MVS perspective, UNIX and MS-DOS are hard to tell apart.