Quite sure, in a dynamically typed language there is only a single static type inhabited by all values. If the compiler is reasoning about classes of values at runtime then it does indeed have nothing to do with static typing.
In the run time image for a dynamic language, there may be a "cell" or "value" representation which holds anything. That doesn't mean this is the "type" of that language.
It may certainly be a static type in another language; that
language which is used to implement an interpreter or virtual machine for the dynamic language. E.g. a Lisp interpreter in C has some "value" typedef which can hold a number, string, symbol, ...
That type is a C type, though, not a Lisp type.
A language can't be confused with the one it compiles into, or which is used to write an interpreter for it.
Utimately, everything is interpreted by a processor, through some machine language representation which uses typeless words.
kazinator|11 years ago
It may certainly be a static type in another language; that language which is used to implement an interpreter or virtual machine for the dynamic language. E.g. a Lisp interpreter in C has some "value" typedef which can hold a number, string, symbol, ...
That type is a C type, though, not a Lisp type.
A language can't be confused with the one it compiles into, or which is used to write an interpreter for it.
Utimately, everything is interpreted by a processor, through some machine language representation which uses typeless words.
freyrs3|11 years ago