Newsgroups: comp.software-eng,comp.lang.functional,comp.lang.lisp,msu.cps.misc
Path: cantaloupe.srv.cs.cmu.edu!rochester!cornellcs!travelers.mail.cornell.edu!willow-farm.cit.cornell.edu!news.graphics.cornell.edu!hookup!solaris.cc.vt.edu!news.mathworks.com!tank.news.pipex.net!pipex!uknet!newsfeed.ed.ac.uk!edcogsci!jeff
From: jeff@cogsci.ed.ac.uk (Jeff Dalton)
Subject: Re: Why typing?
Message-ID: <DFH5rz.47s@cogsci.ed.ac.uk>
Organization: Centre for Cognitive Science, Edinburgh, UK
References: <43pl5a$fok@msunews.cl.msu.edu> <43rc73$ala@info.epfl.ch>  <43t0gq$b5f@ornews.intel.com> <43uip5$is1@newshost.lanl.gov>
Date: Mon, 25 Sep 1995 18:52:46 GMT
Lines: 32
Xref: glinda.oz.cs.cmu.edu comp.software-eng:37325 comp.lang.functional:6465 comp.lang.lisp:19210

"Joseph H. Fasel" <jhf@lanl.gov> writes:

>I'm sure you're aware that this is a perennial subject of contention.
>There are those of us who maintain that "dynamic type" is an oxymoron.
>The main problem with such a notion is that there is little, if any,
>distinction between a type and a general predicate.  I suppose you might
>say that types are _total_ predicates, and this distinction might be
>marginally useful for a language like Lisp, but I think it begins to
>fall down for nonstrict languages.

>This is not a value judgement, mind you.  There are weird and wonderful
>things you can do in Lisp or in the untyped lambda calculus, but I would
>say that describing Lisp as "dynamically typed", rather than "untyped",
>doesn't really say much.

I disagree.

1. You're doing too much violence to established usage.  There's
more than one established notion ot types and of typing.  This
needn't have much "cost" because and there's terminology for
identifying which notion(s) you're talking about.  "Dynamic
typing", for example.

2. Saying "dynamically typed" rather than "untyped" says something
worth saying.  There have been Lisps that were pretty much what I'd
call "untyped".  For instance, you could take the car and cdr of
symbols and numbers.  (I know this can be seen as not being about
types, but that's not the only worthwhile way to see it.)  I think
calling Lisp "untyped" makes pretty much the same mistake as saying
"in Lisp, everything is a list".

-- jd
