Skip to main content
View by: Most Recent | Topic | Community | Webloggers   
Monthly Archives:    

Blogs by topic Blogs and user forax

• Accessibility • Ajax • Blogging • Business • Community 
• Databases • Deployment • Distributed • Eclipse • Education 
• EJB • Extreme Programming • Games • GlassFish • Grid 
• GUI • IDE • Instant Messaging • J2EE • J2ME 
• J2SE • Jakarta • JavaFX • JavaOne • Jini 
• JSP • JSR • JXTA • LDAP • Linux 
• Mobility • NetBeans • Open Source • OpenSolaris • OSGi 
• P2P • Patterns • Performance • Porting • Programming 
• Research • RMI • RSS Feeds • Search • Security 
• Servlets • Struts • Swing • Testing • Tools 
• Virtual Machine • Web Applications • Web Design • Web Development Tools • Web Services and XML 


JSR

I'm very proud to announce that in order to be fully compatible with the new multi-core era, we (the lambda expert group) have decided to deprecate the class syntax in Java 8 and to remove it in Java 9. With the introduction of lambda, classes are not needed anymore and are now seen as stimagata from the past. so instead of writing a class User like this: public class User {  private final...
on Apr 1, 2013

J2SE

Sometimes I want a express that a static field is unlikely to change, so the VM should consider it has a constant, but it may changed. And because we all live in a threaded world, if the static field is changed I want that all threads that want to read the field value to notice that the value has changed like a volatile field. Take by example the default Locale that you can obtain using...
on Dec 17, 2011

Performance

I've just compiled the hotspot (server 64bits) using the hotspot-comp workspace of hotspot express   http://hg.openjdk.java.net/hsx/hotspot-comp/hotspot/ Here are the result (average of 8 best run on 10) when running PHP.reboot (my own toy language) on fibonacci function, (-server is the server VM of jdk7, -hsx is server VM of upcoming jdk7 update) Java:java -server bigfibo  ...
on Sep 4, 2011
During the JVM Summit, I was doing some tests for my presentation with the latest jdk7 binaries when I've seen some *BIG* performance improvement between jdk7 b71 and jdk7 b72. A quick look to the summary of changes, hum, Escape Analysis is now enabled by default. On my tests, I got a 3x improvement, Wow ! With a quick micro-benchmark, it's even better, as always :)  ...
on Oct 6, 2009

Programming

Christmas holidays is one of my favourite moment in the year, I have time to see my relatives, read books, play with my kids and hack a little bit. Forewords I think I don't like the most in the strawman proposal is that the syntax for function type and for lambda literal reuse the same symbol '#'. It's something that I've observed when teaching C. The C syntax use * when you...
on Dec 27, 2009
Last June, Arnold Schwaighofer push a patch to mlvm repository that allow to transform tail call invocation of a method to a jump. Even if this transformation is classical in language like Lisp, Scheme or Caml, the JVM was not offering any help to optimize this kind of call until this patch. Recently, Tom Davies has refreshed the patch in order to be used with a more recent...
on Dec 18, 2009
Mark Reinhold recently blogs about the renaissance of closure in Java (*). In his blog, he also wrote that in order to have closures in Java, Java will have to include another feature named extension methods. As you may already know, I'm a big fan of closures but the introduction of extension methods in Java really scary me. * Ok, they are more lambdas than closures. Why extension...
on Nov 28, 2009
Java VM embodies continuations now (not in production, in a hacking mode :), This post shows how to write a non-blocking server with continuations. Why using continuation with non blocking IO There are two models when you deals with IO: the thread model: read and write calls block until they at least read one caracter or write the whole buffer, so one use thread to be able to...
on Nov 22, 2009
Let me introduce a new language named pseudo (Why this name ? Why another language ? Why God ? all these questions will be answered in a later blog). One great feature of this language is that it allows gradual typing, i.e. you can assign a type to a parameter, a local variable, etc. or not. If a variable as no type, the compiler consider it as any. You can assign any value...
on Nov 1, 2009

Virtual Machine

Lukas Stadler is my hero, at last JVM summit, he just explain how coroutine and friends can be implemented in the VM and guess what, it now works (currently only with C1). Let's try to implement something with it. Generator I have always wanted to have generator in Java. After all, Python have this feature, Ruby and C#(*) too. A generator is a way to define an iterator but instead of...
on Nov 19, 2009