David Hopwood wrote: > Anton van Straaten wrote: > >>I'm suggesting that if a language classifies and tags values in a way >>that supports the programmer in static reasoning about the behavior of >>terms, that calling it "untyped" does not capture the entire picture, >>even if it's technically accurate in a restricted sense (i.e. in the >>sense that terms don't have static types that are known within the >>language). >> >>Let me come at this from another direction: what do you call the >>classifications into number, string, vector etc. that a language like >>Scheme does? And when someone writes a program which includes the >>following lines, how would you characterize the contents of the comment: >> >>; third : integer -> integer >>(define (third n) (quotient n 3)) > > I would call it an informal type annotation. But the very fact that > it has to be expressed as a comment, and is not checked,
What I meant to say here is "and is not used in any way by the language implementation," > means that > the *language* is not typed (even though Scheme is dynamically tagged, > and even though dynamic tagging provides *partial* support for a > programming style that uses this kind of informal annotation). -- David Hopwood <[EMAIL PROTECTED]> -- http://mail.python.org/mailman/listinfo/python-list