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:
“There is much to support the view that it is clothes that wear us, and not we, them; we may make them take the mould of arm or breast, but they mould our hearts, our brains, our tongues to their liking.”
—Virginia Woolf (18821941)
“Imagination is always the fabric of social life and the dynamic of history. The influence of real needs and compulsions, of real interests and materials, is indirect because the crowd is never conscious of it.”
—Simone Weil (19091943)
“Science and technology multiply around us. To an increasing extent they dictate the languages in which we speak and think. Either we use those languages, or we remain mute.”
—J.G. (James Graham)