Path: utzoo!utgpu!news-server.csri.toronto.edu!rpi!zaphod.mps.ohio-state.edu!sol.ctr.columbia.edu!emory!gatech!bloom-beacon!eru!hagbard!sunic!mcsun!ukc!edcastle!cs.ed.ac.uk!cs.edinburgh.ac.uk!nick From: nick@cs.edinburgh.ac.uk (Nick Rothwell) Newsgroups: comp.lang.misc Subject: RE: Dynamic typing (part 31,497) Message-ID: <9026@skye.cs.ed.ac.uk> Date: 17 Apr 91 14:00:24 GMT References: <1957@optima.cs.arizona.edu> Sender: nnews@cs.ed.ac.uk Reply-To: nick@lfcs.ed.ac.uk Organization: Tasha Yar Appreciation Soc... oh, sh*t Lines: 28 In article <1957@optima.cs.arizona.edu>, gudeman@cs.arizona.edu (David Gudeman) writes: > In article <8872@skye.cs.ed.ac.uk> Nick Rothwell writes: > ] > ]No runtime *type* errors. Runtime errors are restricted to a small set of > ]exception conditions defined by the language. > > The only runtime error you have eliminated with static type checking > is a "message not understood" or "domain error". The elimination of > this single type of error hardly seems to justify the limitations on > expressiveness It does if that error accounts for a huge proportion of errors. > How > much are you willing to give up in expressiveness to find the most > trivial and obvious programming error a few minutes earlier? If it were always a case of a few minutes (and if the runtime system were as informative as the compiler when errors occured), then it wouldn't be worth it. But, runtime type errors are indeterminate since not every execution path is guaranteed to be followed within a fixed period of testing time. -- Nick Rothwell, Laboratory for Foundations of Computer Science, Edinburgh. nick@lfcs.ed.ac.uk !mcsun!ukc!lfcs!nick ~~ ~~ ~~ ~~ ~~ ~~ ~~ ~~ ~~ ~~ ~~ ~~ ~~ ~~ ~~ ~~ ~~ ~~ ~~ ~~ ~~ ~~ ~~ ~~ ~~ "Playing strip poker with an exhibitionist somehow defeats the object...."