Monday Aug 17, 2009

Using MethodHandles to Reconcile Closures and Stored Messages

Every new proposal to the Java language and/or the Java Virtual Machine is automatically weighted and compared with the different proposals for closures for the Java Programming Language. The current JSR292 proposal is no exception since the versatile MethodHandle introduced in JSR292 can be used both to implement a closure as well as a stored message.

The implementation of closures and stored messages within a language can be evaluated according to the principles of duality, correspondence and invokability. By doing so we find that MethodHandles have to support co/contra variance and autoboxing as well as implicit downcast/unboxing from Object.

Also, one commonly discussed reason for adding closures to Java is wrong, but I will make up for this by adding a new reason for restricted closures.

[Read More]

Monday May 25, 2009

Pulling a Machine Code Rabbit Out of a Java Hat

How good can modern JVMs be at optimizing code that makes excessive use of auto boxing for method arguments? As it turns out, at least JRockit can be pretty darn good!

[Read More]

Monday May 11, 2009

The JSR292 endgame

The current JSR292 proposal has come a very long way and is indeed very close to its final design. A lot of problems and design choices have been resolved successfully over time by a world wide group led by John Rose. The current design looks good. However as a member of the JRockit team that will have to implement JSR292 in our JVM, I feel a small trepidation over the proposed transform API in the MethodHandles factory class. [Read More]
About

bocadmin_ww

Search

Categories
Archives
« April 2014
SunMonTueWedThuFriSat
  
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
   
       
Today