
Lock Cohorting: A General Technique for Designing NUMA Locks by Dave Dice, Virendra Marathe and Nir Shavit in PPoPP 2012. The Cohort lock technique allows developers to construct NUMA-aware locks from NUMA-oblivious locks.
IKVM.NET 0.46 is the last OpenJDK 6 based release, so it will be supported longer than usual. I haven't yet decided how long exactly, but in any case here is a release candidate for an update release that incorporates many of the fixes that have been done since 0.46 was released.
There appears to be over-reacting and fearism concerning a recent decision to cancel the DLJ project, and subsequently Ubuntu's plan to remove DLJ-based Java packages from their repository. I'm totally out of the loop of this except for a couple things. As the former DLJ Project Lead I was still vaguely involved with the management of that project, and recently there was an email exchange between ...
There are a couple of subtle differences between the JVM and CLR with respect to member accessibility. For example, the JVM will allow you to access public members in non-public base classes:
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. ...
I've been doing some cleanup and refactoring and in the process removed some limitations and fixed a bunch of corner cases.
The Java SE Embedded team continues to follow the mainline JDK and has shipped their 7u2 and 6u30 releases. These releases include new ports to Linux on embedded PPC devices, and support for the server (C2) compiler on ARM. The latter improves Java performance on ARM systems by approximately 20-40%. You can find the downloads and release notes (7u2, 6u30) on the Oracle OTN ...
I am finishing the code samples for my book “Scala for the Impatient”. (Yes, for those of you who are impatiently awaiting it—the end is near. Very near.)
JRockit Mission Control 4.1 is now available for download. It includes HotSpot support, improved Solaris support, DTrace integration, a Mac OSX port, support for Oracle Coherence and a range of new cool features. More details in Markus Eisele's blog post.
Java has no operator overloading. I always thought that was a shame. For example, BigDecimal
would be a lot more popular if you could write a * b
instead of a.multiply(b)
.
I've released IKVM.NET 7.0 to SourceForge. The binaries are identical to the ones in release candidate 0.
Another key feature in the JFreeChart 1.0.14 release is the option to render drop-shadows within plots, aimed at charts that will be rendered on-screen. The effect of this is quite subtle, but noticeable if you compare two charts directly, one with the shadows and one without:
The end of an era draws nigh!
After being deprecated in JDK 7, the apt
command line tool and the entirely of its associated API is on track to be removed from JDK 8 within the next few months.
While apt
was fine back in JDK 5, the time has come to transition annotation processing to the superior standardized annotation processing provided by javax.annotation.processing ...
Many nice news on the Java front this week.
In today's snapshot I also added support for function pointer types. The CLI supports both managed and unmanaged function pointer types, however both are unverifiable.
As I wrote earlier today, the theme of today's snapshot is custom modifiers, but I decided to expand a bit on that, since they are a relatively unknown feature of .NET.
The theme of this snapshot is custom modifiers. I've been working on ikvmc to make more use of custom modifiers for fields and constructors that have "special" types in their signatures and on the IKVM.Reflection side I completly rewrote custom modifier handling (unrelated to ikvmc) to allow roundtripping C++/CLI files (minus the unmanaged bits, obviously) and support interleaved modreq and modopt sequences.