Apache Harmony Moves To Apache Attic 120
think_nix writes "After the resignation of Apache from the Java SE/EE Executive Committee, the time has now come for Harmony to be added to the Apache Attic. Harmony was 'the project to produce an open source cleanroom implementation of Java.' An open vote was taken within the Project Management Committee, which resulted in a 20-2 majority to discontinue development."
Re:Harmony what now? (Score:4, Insightful)
OpenJDK? (Score:4, Insightful)
Re:Harmony what now? (Score:4, Insightful)
I'm talking out of my ass here, but I was under the understanding that OpenJDK (or at least IcedTea [wikipedia.org]) has the same field of use restrictions as any other Java implementation, which come from Sun's patent licensing, and can't be avoided by building a clean room implementation.
Re:OpenJDK? (Score:5, Insightful)
It seems that IBM started Harmony to produce a complete, permissively licensed implementation of the Java specifications, while OpenJDK is Copyleft. A year ago, IBM shifted their support to OpenJDK, so there's no longer a major sponsor for Harmony. That, in addition to the fact that Apache is no longer participating in the Java Community Process seems to be the reason there's little development going on in Harmony.
The reason that Apache resigned from the Java Community Process Executive Committee is that the Java specifications are completely controlled by Oracle, which doesn't allow their compliance test tools to be used freely. Harmony will remain in a similar relationship with Java that Mono has to DotNet rather than being a first class implementation. The significant difference between Java and DotNet seems to be that Sun/Oracle have released most (all?) of the official implementation as Free Software, but the specifications that software implement are still proprietary.
The main beneficiary of Harmony seems to be Google, which is using some code from the project as part of Android, though Android was never intended to be a complete Java implementation. They've made it clear that they want to use only permissively-licensed code so that they can release it as proprietary software whenever they want. That's exactly what they did with Android 3. While I'm glad IBM is now supporting a Copyleft implementation rather than a permissively-licensed implementation, a mature programming language system needs alternative implementations to keep the spec-writers honest. Oracle's handling of the specification process continues to prevent Java's use as a completely open system.