Relay-Version: version B 2.10 5/3/83; site utzoo.UUCP Posting-Version: version B 2.10 5/3/83; site cbosgd.UUCP Path: utzoo!linus!decvax!harpo!eagle!mhuxl!houxm!ihnp4!cbosgd!mark From: mark@cbosgd.UUCP Newsgroups: net.lang Subject: Re: Anti-CLU... Anti-Strong-Typing... Message-ID: <666@cbosgd.UUCP> Date: Thu, 1-Dec-83 14:13:24 EST Article-I.D.: cbosgd.666 Posted: Thu Dec 1 14:13:24 1983 Date-Received: Sun, 4-Dec-83 02:28:47 EST References: <411@dartvax.UUCP>, <816@vax2.fluke.UUCP> Organization: AT&T Bell Laboratories, Columbus Lines: 19 > The problem with so-called "strongly typed" languages like Pascal is > that the typing is all wrong. They try to type identifiers. There are > situations where this is reasonable, but, in most cases, type > information should be attached to the value, not the identifier. > Languages like Smalltalk and Snobol4, therefore, have true strong > typing. Languages like Pascal have an apology for type checking (when > are we going to stop perpetuating the myth that they have strong > typing?). Languages like Ada are an abomination, and are best forgotten... You apparently have a different notion of "strong typing" than I do. Normally, strong typing tries to catch your errors and point them out to you, by compile time checks. What Snobol4 does is quite different: it checks types at runtime and tries to figure out something reasonable to do given the types. While this is certainly more likely to lead to reasonable results than the C/Fortran/Assembly approach of passing the wrong type and getting garbage, it tends to let errors remain in the code undetected, with lots of superflous conversions going on at runtime. PL/1 and APL are like this too.