[ The Types Forum, http://lists.seas.upenn.edu/mailman/listinfo/types-list ]
Sean McDirmid writes: > Pragmatically, the programmer is still able to talk about "ducks" in > Python even if the check to see if a value can be used as a duck occurs > dynamically. Explaining to the programmer that Python only has one type > would be very unfriendly and confusing when clearly one can talk about > ducks that quack in the language without much problems. I think this is an excellent point. There can be other ways of enforcing type abstractions in a programming language than by static typing rules. For that reason, "untyped programming language" is a misnomer. (Perhaps it was imported thoughtlessly from mathematics, where something like the Zermelo-Fraenkel set theory is genuinely untyped.) I always refer to such languages as "dynamically typed" languages rather than "untyped" languages. Please see this discussion on Stack Exchange which is closely related: http://cs.stackexchange.com/questions/2301/categorisation-of-type-systems-strong-weak-dynamic-static/ Cheers, Uday
