Path: utzoo!utgpu!news-server.csri.toronto.edu!rpi!usc!wuarchive!udel!ee.udel.edu From: new@ee.udel.edu (Darren New) Newsgroups: comp.lang.misc Subject: Re: Dynamic typing (part 3) Message-ID: <49907@nigel.ee.udel.edu> Date: 5 Apr 91 19:01:00 GMT References: <28742@dime.cs.umass.edu> <3APR91.20574161@uc780.umd.edu> <28875@dime.cs.umass.edu> Sender: usenet@ee.udel.edu Organization: University of Delaware Lines: 25 Nntp-Posting-Host: snow-white.ee.udel.edu In article <28875@dime.cs.umass.edu> yodaiken@chelm.cs.umass.edu (victor yodaiken) writes: >Your explanation is confusing me even more. >Maybe a precise definition of "dynamic typing" would be useful. Dynamic typing is when the type of a *variable* is unknown (and unspecified) at compile time. Any given value assigned to that variable will have a type, but the variable does not restrict what types of values may be assigned to it. Contrast these: int f(float f, int i) { blah blah blah } /* here, f must only get floats and i must only get ints. */ (defun f (f i) (blah blah )) Here, f may be a float, and integer, a bignum, a list, a closure, etc. Basically, expressions, variables, function names, and so on do not have types. Nothing that is purely syntactical has types. Only actual values have types. -- Darren -- --- Darren New --- Grad Student --- CIS --- Univ. of Delaware --- ----- Network Protocols, Graphics, Programming Languages, FDTs ----- +=+=+ My time is very valuable, but unfortunately only to me +=+=+ + When you drive screws with a hammer, screwdrivers are unrecognisable +