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:

    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 (1882–1941)

    The nearer a conception comes towards finality, the nearer does the dynamic relation, out of which this concept has arisen, draw to a close. To know is to lose.
    —D.H. (David Herbert)

    It is time for dead languages to be quiet.
    Natalie Clifford Barney (1876–1972)