Path: utzoo!utgpu!news-server.csri.toronto.edu!cs.utexas.edu!sdd.hp.com!wuarchive!rex!uflorida!gatech!bloom-beacon!eru!hagbard!sunic!mcsun!inesc!unl!unl!px From: px@fct.unl.pt (Joaquim Baptista [pxQuim]) Newsgroups: comp.lang.misc Subject: Re: blip [Re: Dynamic typing -- To Have and Have Not ...] Message-ID: Date: 3 Apr 91 01:29:20 GMT References: <3523:Mar1803:21:0591@kramden.acf.nyu.edu> <22032@yunexus.YorkU.CA> <14160@life.ai.mit.edu> <1991Mar25.201620.5839@cua.cary.ibm.com> <879@puck.mrcu> Sender: news@fct.unl.pt (USENET News System) Followup-To: comp.lang.misc Organization: Universidade Nova de Lisboa -- Lisbon, Portugal Lines: 67 In-Reply-To: pallas@eng.sun.com's message of 2 Apr 91 17:33:41 GMT REPOST WITH CORRECTION: In a strongly typed language such as Eiffel, the programmer must declare the type of all its variables, arguments, and such. If the programmer later changes its mind, these type declarations must be updated everywhere, which is a tedious and error-prone process. ---vv--- Having no declared types just means that this sort of error does not happen, while the other kinds of error probably remain at the same level. REPLY TO JOSEPH PALLAS: In article pallas@eng.sun.com (Joseph Pallas) writes: In I wrote: >Having no types ... Nope, try again. How about, "Having no declared types ..." Thank you. That was what I wanted to say. >just means that this sort of error does not happen, Nope, try again. How about, "just means that this sort of error is not detected at compile time, but at run time," >while the other kinds of error probably remain at the same level. People who think that dynamically typed languages result in typeless programs need to reflect on what they are doing when they write their programs. If your program operates on some object, you can be certain that there is a type implied by that operation. My previous posting obviously was ill written if people can interpret it to mean something that I do not think at all. Programmers ALWAYS think in types, even when the language is typeless (in the sense of having a single universal "type", as Lisp or Prolog). An entirely different matter is wether the programmer should be required to declare the types of everything. I state that doing this is error-prone, specially when the programmer changes some type. Type declarations detect type errors, but these errors tend to be "book keeping errors", instead of errors in the logic of the algorithm or some other "higher" errors. About compile time versus run tim