By sdevijver
via groovy.dzone.com
Published: Feb 18 2008 / 10:18
Dynamically typed, non-dynamic languages vs dynamically typed, dynamic languages vs statically typed, dynamic languages vs statically typed, non-dynamic languages!



Comments
reido56 replied ago:
If I understand what this says, "dynamic language" means the language has dynamic dispatch.
sdevijver replied ago:
That's right.
reido56 replied ago:
Oops, "dynamic dispatch" can also refer to the capability for an object to be stored in a variable typed as one of the object's superclasses or interfaces, yet still dispatch methods called on the variable to the object's actual class (which inherits or implements the variable type). I should have remembered that distinction from C++ (virtual vs. non-virtual methods)....
I'll amend it to say that a "dynamic language" has "configurable message-passing", and hope that might make sense....
antych replied ago:
http://en.wikipedia.org/wiki/Dynamic_programming_language
reido56 replied ago:
And yet that definition doesn't include "meta-object protocol", which is what the article uses as a distinguishing characteristic.
sdevijver replied ago:
I don't provide an over-arching definition for a dynamic programming language. I do say Groovy, Ruby and Python have a MOP. That does not mean a MOP is distinctive for all dynamic languages. Typical, maybe.
Voters For This Link (10)
Voters Against This Link (4)