Path: utzoo!utgpu!jarvis.csri.toronto.edu!cs.utexas.edu!tut.cis.ohio-state.edu!att!cbnewsc!lgm From: lgm@cbnewsc.ATT.COM (lawrence.g.mayka) Newsgroups: comp.lang.misc Subject: Re: An Interesting View of "Strong" Vs. "Weak" Typing Message-ID: <12680@cbnewsc.ATT.COM> Date: 9 Jan 90 16:20:03 GMT References: <16678@megaron.cs.arizona.edu> Reply-To: lgm@cbnewsc.ATT.COM (lawrence.g.mayka,ihp,) Organization: AT&T Bell Laboratories Lines: 34 In article <16678@megaron.cs.arizona.edu> gudeman@cs.arizona.edu (David Gudeman) writes: >I think a better method to make this sort of distinction is to use the >traditional definition of "typed" vs. "untyped" languages that I The difficulty with these definitions is that they so easily mislead people. "Conventional wisdom" has decided - based on comparisons between strong and weak compile-time typing - that Types are Good and therefore, Strong Types are Better. This "conventional wisdom" is then often applied disparagingly to run-time typing. Run-time typing encourages a programming style radically different from that of "weak" compile-time typing and should not be placed in the same category. >systems. Define "tagged type systems" as systems where the >representation of the data uniquely identifies both the type of the >data and its value. Define "untagged type systems" as those systems >where representations are overloaded (i.e.: a single representation >stands for a different value in several different types), and the type >must be known before it is possible to determine exactly what value is >being represented. Any of these seem reasonable and roughly equivalent distinctions: compile-time typing vs run-time typing static typing vs. dynamic typing untagged typing vs. tagged typing identifier typing vs. object typing textual typing vs. behavioral typing Lawrence G. Mayka AT&T Bell Laboratories lgm@ihlpf.att.com Standard disclaimer.