What EU said is irrelevant, because GPLv2's implied patent grant works different in different countries. _That_ was fixed by GPLv3, it is now hard-coded and works same across the globe. In US, it works similar but not 100% the same. Oracle filled suit in US, and they couldn't do it in EU anyway because there are no swpats in (most of) EU.

"If SUN would have chosen the Apache License or GPL ver 3 (which was already available at that time) this wouldn't have been an issue."

If Oracle changes OpenJDK license to GPLv3 today, that would make zero difference to Google Vs Orale case. Dalvik is ASL, not GPLv3. When you release something to GPLv3, you don't give patent grant to everyone and their mother. Only to licensees of your code, that is people that "convey" it (GPLv3 word for "distribute"), develop it, or use it in changed or unchanged form. Basically, patent license is granted under GPLv3 in a similar way copyright license is granted. Everything you can are allowed to do with GPLv3 code is covered. And that is pretty much same intent as GPLv2's, just that in some countries GPLv2 patent grant is not sufficient, due to law that requires license to be explicit. Some EU countries are like that, but not US, since there is practice of estoppel in US.

And since google avoided GPLv2 OpenJDK and made ASL'd dalvik, I am pretty sure they would do the same if license was GPL. So how would GPLv3 help google?

Now, Apache license has similar patent grant, except that Apache license allows proprietary forks. So it is still patent grant for those who use code and not whole world. It doesn't protect GPLv3 programs unless you incorporate code from ASL'd project in question. Except that everybody can take that code and take it proprietary, extend it, and patent extensions. Somehow, I think that is not that Sun wanted. I remember Jonathan Schwartz in 2005 (or so) saying that they don't want to opensource Java because of their previous experience with Microsoft. James Gosling said something similar recently, as the reason why they didn't go open sooner. So Java under ASL is something that Sun really didn't want to see, whether it be their Java, or reimplemented by Apache or Google. So I am really not all that surprised by this lawsuit. And I don't think OpenJDK is any less Free because of this. What is problem with OpenJDK are not patents, but control by Oracle. And Oracle's intentions are way harder to predict than Sun's, so I won't even try. I only can see that they have no plans of releasing Java under ASL or even letting anyone implement it under that license.

Please don't interpret this as support for Oracle suing Google or anything similar. I am just saying that OpenJDK is not legally problematic to use by anyone right now, which can't be said for Mono.

Mono has no patent protection other than small ECMA parts, and wording of Community promise is very explicit that nothing beyond those parts is covered. So it is very hard to pull estoppel defence for something that Microsoft never shown intent to license. And knowing Microsoft, they prefer extortion and intimidation, so they don't really need to go to court to seriously damage competitors.

Furthermore, it has been confirmed (by the Debian Mono packager) that even basic bits of Mono use non-ECMA namespaces, pretty much depend on them, and can't be separated to non-ecma without "serious surgery" (and Mono team don't plan on doing it).
http://www.the-source.com/2010/12/on-mono-packaging/#comment...

It is also been proven that most popular Mono applications written use those non-ECMA parts extensively.

http://www.the-source.com/2010/12/mono-unsafe-at-any-speed/#...

So basically that means that Mono is not safe as it stands and it goes even further into uncharted territory as it develops. Despite proponents saying otherwise. And it is not better choice than OpenJDK.

Sorry for long post, and thank you for reading :-)