Does anyone know of a JVM that supports full class reloading? Sun's JVM doesn't seem to support schema changes. Eclipse works around the issue by loading multiple copies of the same class, but that won't work for me. I couldn't find any details on the JRockit site (though it does have some experimental JIT caching that looks neat). The Jikes VM doesn't appear to have much debugging support at all. Update: I've concluded that no JVM implementation supports full class reloading. Bummer. I guess JVM implementors care too much about perfect atomicity and consistency. I'm not too worried about a little fuziness (i.e. inconsistent state) because we're just talking about development time, not production, and I don't hear too many complaints from the Rails crowd. I'd modify an existing JVM, but my c/c++ skills are a little rusty, and the only viable Open Source JVM I know of is Jikes. I'd prefer not to do all my development on an experimental JVM. Does .NET support full class reloading? If so, that combined with the fact that C# now supports closures and implicitly typed local variables might just be enough incentive to switch. I think I'll build on Eclipse. Eclipse already plays a little fast and loose by loading up new copies of existing classes (both classes can exist at the same time). I could crawl the heap looking for instances of the old class. When I find an old instance, I could create an instance of the new class (without invoking the constructor), copy over the fields from the old instance to the new, and point all references to the new instance. If it's fast enough for the garbage collector, it should be fast enough for me. ;)
Sunday, September 11, 2005
Hi. My name is Bob.
- H.264 Encoding Performance
- MPAA Sues More File Swappers
- Change Your From Address in Gmail
- First Day Home
- Improving Cell Phone Internet Performance
- Dagny Katherine Lee, aka "Bobkat"
- Long Weekend
- No Foo Camp for Me
- Going to Foo Camp (Hopefully)
- How do you pronounce the name Dagny?