Changing functional and non-functional software implementation at runtime is useful and even sometimes critical both in development and production environments. JooFlux is a JVM agent that allows both the dynamic replacement of method implementations and the application of aspect advices. It works by doing bytecode transformation to take advantage of the new invokedynamic instruction added in Java SE 7 to help implementing dynamic languages for the JVM. JooFlux can be managed using a JMX agent so as to operate dynamic modifications at runtime, without resorting to a dedicated domain-specific language. We compared JooFlux with existing AOP platforms and dynamic languages. Results demonstrate that JooFlux performances are close to the Java on...
There is a growing class of applications implemented in object-oriented languages that are large and...
International audienceDynamic flexibility is a major challenge in modern system design to react to c...
Dynamic binary translation looks to map one computer architecture to another. Java is unusual in tha...
Changing functional and non-functional software implementation at runtime is useful and even sometim...
Changing functional and non-functional software implementation at runtime is useful and even sometim...
International audienceThis paper introduces Golo, a simple dynamic programming language for the Java...
With the evolution of the software development process, claimed by the new demands of the market, so...
Java 7 introduced programmable dynamic linking in the form of the invokedynamic framework. Static an...
AbstractTransformations of object-oriented methods are a prevalent object-oriented programming techn...
textBecause software systems are imperfect, developers are forced to fix bugs and add new features....
Dynamic code evolution is a technique to update a program while it is running. In an object-oriented...
Dynamic software updating (DSU) is a technique to upgrade a running software system on the fly witho...
Java Specification Request (JSR) 292, which was realized with Java 7, defines a new java bytecode ca...
As Java 8 introduced functional interfaces and lambda expressions to the Java programming language, ...
Recently released non-volatile main memory (NVMM), as fast and durable memory, dramatically increase...
There is a growing class of applications implemented in object-oriented languages that are large and...
International audienceDynamic flexibility is a major challenge in modern system design to react to c...
Dynamic binary translation looks to map one computer architecture to another. Java is unusual in tha...
Changing functional and non-functional software implementation at runtime is useful and even sometim...
Changing functional and non-functional software implementation at runtime is useful and even sometim...
International audienceThis paper introduces Golo, a simple dynamic programming language for the Java...
With the evolution of the software development process, claimed by the new demands of the market, so...
Java 7 introduced programmable dynamic linking in the form of the invokedynamic framework. Static an...
AbstractTransformations of object-oriented methods are a prevalent object-oriented programming techn...
textBecause software systems are imperfect, developers are forced to fix bugs and add new features....
Dynamic code evolution is a technique to update a program while it is running. In an object-oriented...
Dynamic software updating (DSU) is a technique to upgrade a running software system on the fly witho...
Java Specification Request (JSR) 292, which was realized with Java 7, defines a new java bytecode ca...
As Java 8 introduced functional interfaces and lambda expressions to the Java programming language, ...
Recently released non-volatile main memory (NVMM), as fast and durable memory, dramatically increase...
There is a growing class of applications implemented in object-oriented languages that are large and...
International audienceDynamic flexibility is a major challenge in modern system design to react to c...
Dynamic binary translation looks to map one computer architecture to another. Java is unusual in tha...