Path: utzoo!utgpu!news-server.csri.toronto.edu!rpi!zaphod.mps.ohio-state.edu!uakari.primate.wisc.edu!aplcen!boingo.med.jhu.edu!haven!ni.umd.edu!uc780.umd.edu!cs450a03 From: cs450a03@uc780.umd.edu Newsgroups: comp.lang.misc Subject: RE: Dynamic typing (part 31,497) Message-ID: <18APR91.19472055@uc780.umd.edu> Date: 18 Apr 91 19:47:20 GMT References: <2024@optima.cs.arizona.edu> <3086@opal.cs.tu-berlin.de> <3100@opal.cs.tu-berlin.de> Sender: usenet@ni.umd.edu (USENET News System) Organization: The University of Maryland University College Lines: 29 Nntp-Posting-Host: uc780.umd.edu Wolfgang Grieskamp posts: > Cardelli & Wegner: "On Understanding Types, Data Abstractions, and > Polymorphims" > > "Programming languages in which the type of every expression can be > determined by static program analysis are said to be statically > typed. ... [The] weaker requirement [is] that all expressions are > guaranteed to be type consistent although the type itself maybe > statically unknown; this can be generally done by adding some > run-time type checking [1]. Languages in which all expressions are > type consistent are called strongly typed languages. If a language > is strongly typed, its compiler can guarantee that the programs it > accepts will execute without type errors [2]." At first, I thought that this was a definition which is exactly the opposite of the terminology we've been using in this newsgroup. But the second time around, I decided that these are requirements for statically typed languages. This definition does not cover dynamically typed languages, and most definitely does not say anything about languages which are strongly dynamically typed. Furthermore, within the context of the above definition, I might have to say that C is a strongly statically typed language (depends on what the definition of a "type error" is in that book). Raul Rockwell