Support For Dynamic Languages
The Java Virtual Machine provides some support for dynamically typed languages. Most of the existing JVM instruction set is statically typed - in the sense that method calls have their signatures type-checked at compile time, without a mechanism to defer this decision to run time, or to choose the method dispatch by an alternative approach.
JSR 292 (Supporting Dynamically Typed Languages on the Java™ Platform) added a new invokedynamic
instruction at the JVM level, to allow method invocation relying on dynamic type checking (instead of the existing statically type-checked invokevirtual
instruction). The Da Vinci Machine is a prototype virtual machine implementation that hosts JVM extensions aimed at supporting dynamic languages. All JVMs supporting J2SE 7 also include the invokedynamic
opcode.
Read more about this topic: Java Bytecode
Famous quotes containing the words support, dynamic and/or languages:
“If only I had a wife! I used to think, who could stay home and keep the children happy, why I could support six of them. A cinch.”
—Brenda Ueland (18911985)
“Knowledge about life is one thing; effective occupation of a place in life, with its dynamic currents passing through your being, is another.”
—William James (18421910)
“No doubt, to a man of sense, travel offers advantages. As many languages as he has, as many friends, as many arts and trades, so many times is he a man. A foreign country is a point of comparison, wherefrom to judge his own.”
—Ralph Waldo Emerson (18031882)