Java Bytecode - Support For Dynamic Languages

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:

    “I believe, as Maori people do, that children should have more adults in their lives than just their mothers and fathers. Children need more than one or two positive role models. It is in your children’s best interest that you help them cultivate a support system that extends beyond their immediate family.”
    —Stephanie Marston (20th century)

    “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 (1842–1910)

    “Wealth is so much the greatest good that Fortune has to bestow that in the Latin and English languages it has usurped her name.”
    —William Lamb Melbourne, 2nd Viscount (1779–1848)