This question arises from this question.
One saying is that if a language has the type string or float, etc, then it is typed. But what if it also fits Wikipedia's explanation of untyped:
http://en.wikipedia.org/wiki/Programming_language#Typed_versus_untyped_languages
an untyped language, such as most assembly languages, allows any operation to be performed on any data, which are generally considered to be sequences of bits of various lengths. High-level languages which are untyped include BCPL and some varieties of Forth.
so what if the language allows operations on any data, but just return "undefined" or "NaN", can we say it is untyped even though it has string and float, etc?
Are string, array, and object not considered to be "sequences of bits of various lengths"? Does the "sequences of bits of various lengths" actually means "sequences of bits of some pre-defined lengths on the system (such as 32 bit, 64 bit, etc)"?