Not creating my own Java VM

After I wrote the Java vs. C++ benchmark I became interested a bit in Java VM implementations. I took a look at alternative VMs like Kaffe, Sable or IKVM and thought about writing my own VM, just because of the fun it would be. I even downloaded the Java VMSpec and began reading it.
But that was the time where I stopped, remembering that I've got a lot of other spare time projects running already and you really have to stop somewhere. There is a new release of Irrlicht waiting to be done and I am already ashamed because of the small amount of work I will be able to contribute this time again especially if you are looking at what Gaz, Hybrid and Tom are doing again. Also, the next release of my free Sound Library irrKlang (with the long awaited support for Linux) and the world editor irrEdit (with terrain editing, at least creating instances of terrain) is waiting.
In addition I've always some small side projects running and a full time job to do (we also just did a release btw, hurra), so dumping the VM idea was a good choice, I guess. Let's see, my TODO-list for this weekend is long, I hope I can get some of it done this time :)

nine comments, already:

Eh…blah on Java. Why don’t you try out D instead and port Irrlicht and Irrklang to that :-D
RabidLockerGnome () (link) - 02 02 07 - 17:38

Maybe you could have provided useful hints on how to “accelerate” java apps (even if modern VMs as Sun’s now already use a lot of tricks). But I think that it could be more useful (and easy) now to study the existing Sun’s newly GPLed HotSpot…
Of course, thats a LOT less fun, because what is fun is creating a VM from scratch…
Herve () (link) - 02 02 07 - 22:25

I think you made the right choice. Thank you very much for your valuable time.
Looking forward to another Superb-irr release!! :)
juantar (link) - 03 02 07 - 01:58

Why do people always know about java VMs only? Anybody tells that java is interpretive. Anybody claims that there is no other chance.

First: Java optimizes code at runtime i.e. bytecode is read from classfile. Afterwards – if any method is executed often enough that method will be compiled to real world native code. And the vm tries to optimize often used code also – the only pity with sun’s vm is not to save the optimized code to disk. Any time you start a vm the optimization has to start again.

But nevertheless if any vm is not fast enough for your needs – just try a java compiler! For example jet (

That one has been around for several years and is a very mature one.

Best regards,
java protagonist - 03 02 07 - 23:34

..thanks for dumping that idea!
tunde () - 04 02 07 - 18:15

Oh dear oh dear, I just hope that you won’t forget to port irrEdit to Linux… But don’t push yourself too hard!
Bubla - 04 02 07 - 20:50

Out of curiosity Niko how the hell do you manage to do all of this work.. i also have a job and do freelancing and i am working on developing a game design (not game program yet just the logic) and all this is killing me my social life is dropping to the stage where i will soon be a hermit my chic will soon kill me if i don’t take her out for a movie soon and bloody valentines is right on the conner … whats your trick?

btw i cant wait for the release of irrEdit.. for sometime i have just been concentrating my game efforts on irrEdit. Plus its what i us to impress my friends with (my girlfriend included) (blush) .. i have some maps done with irrEdit (with all my mesh either ripped off WOW, DS2 and NWN )...
Leo05 02 07 – 17:14
leo () (link) - 05 02 07 - 17:20

maybe just some better time managment? :)
niko - 05 02 07 - 20:57

yeah i guess you are right… :)
leo () (link) - 07 02 07 - 16:49

Remember personal info?
Email (optional):
URL (optional):
Enter "layered" (antispam):
Comment:Emoticons / Textile

  ( Register your username / Log in )

Notify: Yes, send me email when someone replies.  

Small print: All html tags except <b> and <i> will be removed from your comment. You can make links by just typing the url or mail-address.
Note: If you type in your email adress above, it will be visible to other visitors, although it will be hidden for bots using javaScript.