Hacker News new | ask | show | jobs
by Teckla 5695 days ago
"Mostly compatible" (at the source code level) would be good enough for quite a few applications. For example, take a look at a lot of the C and C++ applications out there, which use OS APIs that often vary widely. Despite that, C and C++ applications are still written, and very popular.
2 comments

The problem (as I understand it) is that without passing the TCK (which Apache can't get without field-of-use restrictions), you don't get the patent license required to safely run Java in a business environment. I don't think the line-of-business app developers that have driven the bulk of Java usage over the years can afford to risk getting sued by Oracle, so they can't really depend on a non-licensed runtime.
I thought that went the other way: you need a patent license to author and/or run the TCK. You can create a Java compatible VM (many have) but you can't run the "official" compatibility test without Sun's, now Oracle's permission, and there is some concern (at least at Apache) that you cannot easily create a "cleanroom" implementation of that TCK. (Although I think that latter concern is more social than legal--if I remember correctly conventional wisdom said that there were too may Sun folks already involved with Java projects at Apache to have any reasonable expectation that a cleanroom would remain clean.)
Both C and C++ are ISO standards. Oracle doesn't own them and can't buy them.