Robert X. Cringely thinks that Apple will offer virtualization in Mac OS 10.5, but in order to do that, he thinks Apple will need to drop Mach. "So Apple will at least offer the option for users to run a virtualized version of Windows Vista atop OS X. Don't be surprised, either, to see that OS X 10.5 has a new kernel, finally giving up Mach and a big piece of its NeXTstep heritage. I write this for one thing - because OS X has kernel problems and needs some help, especially with swap space. I say it also because of the departure of Avie Tevanian, Apple's chief software technology officer, and the guy who hung onto Mach for so long." The Mach kernel has recently been the target for complaints; esp. in server duties, OSX' kernel lags behind significantly compared to i.e. Linux.

How many options are there for Java? SWT, Swing, AWT? .Net? SWF, XAML?
How many .Net apps (not apps embedding .Net) has MS shipped? Or are going to ship?

Don't conflate C and C++. Most modern OSs are written in C, not C++. Apple has perfectly acceptable C interfaces (Carbon), and these interfaces are easy to bind to real languages. Apple would do well to build upon this, and not force a particular language in a market where language choice if flourishing.

Hmm, so I guess Symbian and BeOS/Zeta are out of the norm. Or are they not modern enough for you?

System programming languages are here to stay, whether its C or C++. I will believe in languages for .Net, the day I could write an entire VM in it and have a much more manageable solution than the framework baggage. In C/C++ you have choices, it is not bogged down with a IP encumbered framework and reaches into far more platforms than .Net ever will.

Ever tried deploying a pure Java/Python game onto a PS2/GameCube? How many Java/.Net framework revisions would a user have to install as he acquire apps using the newer and newer frameworks? Azureus may be good but have you tried uTorrent to know that its better?

The day Java/.Net could be used to write and compile its own VM and developers have alternatives for frameworks. It will never ever match the posibilities C/C++ will ever bring.

Time has come and gone, I've yet to see Java or .Net apps take over even desktop productivity applications.