Java on Arduino

Yeah, I'm a little confused about this. I don't think about how garbage collection works when I write in C either (I'm not a very good programmer, so I don't really use memory allocation). But I do know that when I write in assembly the code is not portable. But when I write in C is generally is.

Maybe you mean that java is designed to be platform independent? Certainly you need a different compiler to write code for linux and windows despite them both operating on the same hardware.

And given that this is the case, what is the difference between running java bytecode in a JVM on an arduino versus a JVM on i386?

Granted, it might run slow as molasses if they try to do nothing but 32-bit floating arithmetic, but speed isn't necessarily all that important for a teaching tool. But perhaps I could use the new arduino setup that runs on ARM instead of AVR (or a maple). But my suspicion is that the JVM for AVR might be totally sufficient for the simple kinds of operations most likely to be desired.