[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: bytecode unification for scripting languages
There seems to be a misunderstanding about languages and compilation ...
Q: What's a dynamic language?
A: A language that forces the run-time system to perform compiler-like
tasks. The most extreme example that I can think of is loading a program
fragment at run-time and integrating it into a running program. Other
tasks are run-time type (tag) checking. Or vector-ref checking. (Pascal
does more of it at compile time than Scheme.)
How is Java different in that regard from Scheme? You can load classes at
run-time, just like in Scheme. You do down-casts, just like in Scheme.
As much as I admire the past adventurism of LISP and related things, words
such as "dynamic" language don't mean much,. They often just reveal that
people forgot (or never learned) programming language history. Schemers are
better than that. Let's show it to the world.
-- Matthias