Skip to main content

Rémi Forax

Rémi Forax is Maitre de Conférence at University of Marne-la-Vallée since 2003 where he obtained his PhD on multi-method in Java. He has been using Java for many years and enjoys himself hacking the JDK.


forax's blog

Sweet Home Alabama

Posted by forax on March 3, 2011 at 5:51 AM PST

As part of my sabbatical, in April, I will be in Alabama at UAB as invited professor.
A breaking change for me. No kid, no wife for a whole month.
In one way, I will have time to do some research I had to delay due to lack of time. But in another way,
I worry to have too much free time :)

JSR 292 Goodness: Fast code coverage tool in less than 10k

Posted by forax on February 12, 2011 at 5:51 AM PST

JSR 292 introduces a new bytecode instruction invokedynamic but also several new kind of constant pool constants. Which means that most of the tools that parse bytecodes like ASM, BCEL, findbugs or EMMA will need to be updated to be java 7 compatible.


Posted by forax on February 8, 2011 at 2:52 AM PST

Free Java at FOSDEM 2011 is over. This year was a 'grand cru',
mixing old friends and new faces, too bad that Ian and Dalibor was not there, we miss you.

JSR 292 Goodness: named parameters

Posted by forax on January 21, 2011 at 10:32 AM PST

Today, I want to show you a way to implement method invocation with named parameters using JSR 292.
But before using JSR 292 API, we need a way to reflect the parameter names of any existing methods.
The problem is that java.lang.reflect doesn't provide any way to get those parameter names,

"java.dyn" is dead, long live to ... (What?)

Posted by forax on January 8, 2011 at 7:13 AM PST

When the JSR 292 was started, it was clear that the users of this new API was dynamic(ally typed) languages so the package was naturally named java.dyn

Calling invokedynamic in Java

Posted by forax on January 7, 2011 at 1:00 PM PST


JSR 292 goodness: Lambda to SAM type conversion using invokedynamic

Posted by forax on January 4, 2011 at 5:25 PM PST

Happy new year !

JSR 292 Goodness: lazy Singleton Pattern

Posted by forax on November 5, 2010 at 3:51 AM PDT

The idea of the lazy Singleton Pattern is to initialize a static field only when needed and not during the initialization of the class. The code for that pattern is this one:

JSR 292 Goodness: How to get the current class in Java ?

Posted by forax on October 26, 2010 at 6:14 AM PDT

This a question that is often asked by my students:
How to get the current class in Java  ?

In the code below, instead of A.class, I want to something like "get the current class".
One of my student even invent a new syntax for that purpose this.class.
But guess what, the compiler doesn't like invented syntaxes.

Take that Google

Posted by forax on October 11, 2010 at 3:03 PM PDT

In a single move, IBM to join OpenJDK, Oracle kicks the Google's butt twice.

I can't restrain myself to read the press release like this: