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."
It lives on (Score:1, Flamebait)
It lives on in the form of Android, more specifically the java. parts of the Dalvik core library.
Re: (Score:2)
Those are much smaller than full J2SE, however, which is what Harmony aimed to be.
Harmony what now? (Score:1)
Re:Harmony what now? (Score:5, Informative)
There IS an open implementation of java, the openJDK [java.net], which is why this is being shut down (IBM who was the main contributor to Harmony has moved it's resources to openJDK).
But I guess it's more in line with slashdots javahate if we ignore those facts.
Re:Harmony what now? (Score:4, Insightful)
Re: (Score:1)
Both of which aren't a problem with .NET, so all is well.
Re: (Score:1)
I hope you are joking, .net does not have any form of up to date independent implementation, the Microsoft one is cross platform (win+Mack) but mono is subtly different, lags significantly behind, and comes with an noticeably incomplete patent licence which only covers a subset of its's features.
Re: (Score:3)
There is definitely no Microsoft version of .NET for Mac.
Re: (Score:2)
There is definitely no Microsoft version of .NET for Mac.
except the one in silverlight.
Re: (Score:2)
Like Oracle?
tell that to google and openjdk.. besides, oracle seems to be way better than sun for holding it.
really, sun fucked up mobile java domination pretty badly. they were supposed to do a thing like android but never got around to actually do it.. committees don't get around to doing fucking anything since any way you choose to do things someone has a valid point why some other way would be 'better', especially when you have contradicting goals.
and uh, as it happens, crazily enough, virtualbox and openoffice get
Re: (Score:1)
Re: (Score:2)
It lags significantly behind Microsoft's .NET framework. Only fairly basic programs will compile on both Microsoft's version of the framework and on Mono without modifications. A moderately complex Windows Forms application...won't.
The tendency for people to forget there's an entire section of the Framework that isn't about ASP.NET doesn't seem to be unique to Mono though.
Re: (Score:1)
Re: (Score:2)
Apache tried to make their own JVM, Oracle said no, so Apache can't make their own JVM.
No, it's not about the JVM. There are many JVM implementations, some open, some proprietary. It's a JDK, including the Java SE API.
Re: (Score:3)
So C# magically gets you around the patent minefield?
How does that work?
Re: (Score:2)
That's funny because there have been all of 0 lawsuits over mono but there is a pretty high-profile lawsuit from oracle over java patents. But let's ignore all that since it doesn't jive with anti-mono FUD.
Re: (Score:3)
That's because no one has been remotely successful with Mono.
If Android was built using parts of Mono instead of Apache Harmony, all the handset makers would be sued by Microsoft on two fronts.
Re: (Score:3)
I believe it's also because Mono was largely developed by Novell, who had a licensing agreement with Microsoft. I think Microsoft also saw Mono as a way of proliferating support for Silverlight outside of the Windows platform, so were fairly accepting of it anyway. Although Silverlight seem to be fairly dead - I don't think I've really sites outside of Microsoft's using it and even they seem to have stopped.
Re: (Score:1)
Re: (Score:2)
Re: (Score:2)
The patents that Oracle used against Google are VM-specific, not language-specific.
However, there have been claims that those patents also apply to .NET. If so, Google using Mono would still let Oracle sue them.
Re: (Score:2)
Re: (Score:2)
They aren't actually all that similar. Well, I guess they are in that both are stack machines, and they use a fairly similar object model - but many opcodes are different, metadata is completely different, and, of course, the implementation is very different.
So far as I know, the problem is that Sun/Oracle has patents on some very generic things. For example, they have a patent that effectively covers any JIT compiler from bytecode to native code - which they've used against Dalvik. Some are more specific -
Re: (Score:1)
Re: (Score:2)
Which means nothing as far as getting sued over patents goes.
If Dalvik had tried to use the C# namespace and been closer to it then Google would be just as sued.
Re: (Score:2)
It doesn't mean anything with respect to patents as such. However, Ecma-334 (C#) and Ecma-335 (CLR) are covered [microsoft.com] by Microsoft community promise [microsoft.com], which is basically a patent disclamer for implementers with a "patent MAD" clause:
"Microsoft irrevocably promises not to assert any Microsoft Necessary Claims against you for making, using, selling, offering for sale, importing or distributing any implementation, to the extent it conforms to one of the Covered Specifications, and is compliant with all of the require
Re: (Score:2)
It does not protect against any patents of the from "Doing X, but on a mobile device!". Which is what much of the java suits are about.
Re: (Score:2)
Java patents are not mobile-device-specific. It's just that Sun made a similar patent grant where they promised to not sue implementers of their specs, but specifically excluded mobile from that grant. This is not the case for Microsoft community promise.
Re: (Score:2)
All versions of .NET are proprietary. A subset of .NET 2.0 is an open standard. .NET 3.0, 3.5 and 4.0 are proprietary.
Re: (Score:2)
That's funny since every grievance i ever had with C# was solved with Java :-)
Though i prefer groovy.
Re: (Score:2)
That's funny since every grievance i ever had with C# was solved with Java
just curious. which grievances were those?
Re: (Score:1)
Re: (Score:2)
Re: (Score:2)
That's funny, I spend at least half of my work day using a Java GUI app.
Works pretty damn well, too.
Re: (Score:2)
So the only GUI application installed on your computer is Firefox or Chrome, am I right?
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: (Score:2)
It's the TCK that has a restrictive license, i.e. Oracle wants money if you want to call your implementation of Java with the Java name.
Re: (Score:2)
OpenJDK is released under the GPLv2 and therefore it has no field of use restrictions.
How so? Releasing something under GPLv2 does not equate to a patent grant by the original code author, since he cannot, by definition, violate any GPL provisions (as they only apply to someone who would otherwise be in danger of copyright infringement, which is never the original author). So if Sun - and now Oracle - asserts the right to use their patents to slap down anything that uses Java in a mobile context, it would apply equally to OpenJDK.
Re: (Score:2)
OpenJDK is released under the GPLv2 and therefore it has no field of use restrictions.
How so?
Because there is no document by Oracle specifying "field of use" restrictions for OpenJDK. The only license applied to OpenJDK is GPLv2, and GPLv2 does not contain field of use restrictions.
Releasing something under GPLv2 does not equate to a patent grant by the original code author, since he cannot, by definition, violate any GPL provisions (as they only apply to someone who would otherwise be in danger of copyright infringement, which is never the original author).
We were talking about field of use restrictions, not patents. Anyway, GPLv2 does include an implicit patent grant in section 6. In the intentions of the GPL authors, sections 6 and 7 were expressly meant to prevent a patent owner from limiting the redistribution of software he had licensed under the GPL. Whether the spec
Re: (Score:2)
Because there is no document by Oracle specifying "field of use" restrictions for OpenJDK. The only license applied to OpenJDK is GPLv2, and GPLv2 does not contain field of use restrictions.
The document in that case would be the patent(s) that Oracle holds.
We were talking about field of use restrictions, not patents.
Isn't that the same thing, ultimately? I mean, if Oracle says "this is free and open, but if you use it in firmware of your mobile device, we'll sue you over this patent" - isn't that effectively restricting the field of use?
Anyway, GPLv2 does include an implicit patent grant in section 6. In the intentions of the GPL authors, sections 6 and 7 were expressly meant to prevent a patent owner from limiting the redistribution of software he had licensed under the GPL. Whether the specific wording they used is lawyer-proof in every country of the globe or not, I'm not qualified to tell.
Well, the wording is definitely very vague, and it doesn't even explicitly mention patents (hence "implicit"). Apparently, some lawyers think that it's rather limited in scope [swpat.org].
Interestingly enough, even if Stallman's opi
Re: (Score:2)
The document in that case would be the patent(s) that Oracle holds.
Patents don't contain field of use restrictions by themselves, so for now we can't say that OpenJDK contains field of use restrictions.
Isn't that the same thing, ultimately? I mean, if Oracle says "this is free and open, but if you use it in firmware of your mobile device, we'll sue you over this patent" - isn't that effectively restricting the field of use?
Definitely, but this is not happening now. You can speculate that this might happen in the future (as you could do with *any* open source product at this point - Android, WebM, SQLite, Apache...) but in the case of OpenJDK, this would violate the GPLv2.
Well, the wording is definitely very vague, and it doesn't even explicitly mention patents (hence "implicit"). Apparently, some lawyers think that it's rather limited in scope. [swpat.org]
Well, 3 x = 6 means that x = 2 only implicitly, but this doesn't make it less true :) . Above all, no lawyer seem to doubt t
Re: (Score:2)
As far as I'm aware, it doesn't have field of use restrictions, but it also doesn't include the code for building/running Java Mobile Edition (JavaME) applications.
Re:Harmony what now? (Score:5, Funny)
WAIT A MINUTE IS THIS MY BOSS!?
Re: (Score:3)
Universities wouldn't switch for a non-typed language as a main platform. C++/Java will continue to be entreched, with a little C# sprinkled on. Also they don't follow flavor of the month.
By the way they embraced Java before it was opensourced, so I don't think they'll make a boycott about Oracle dicking around with its software patents.
Re: (Score:2)
I only suggested Python because I heard some universities have already started using it for introductory courses. Of course I'm not suggesting it be the primary platform but there has been success in teaching basic programming principles without dealing with Java-specific issues immediately. I would say the progression ought to be:
Re: (Score:2)
Lisp (hey wut this language is nothing like the rest)
LISP?! We already have enough trouble attracting quality CS students - are you trying to drive everyone to becoming Philosophy majors?
Re: (Score:2)
To be fair, using lisp is a wholly different philosophy :)
Re: (Score:1)
LISP?! We already have enough trouble attracting quality CS students - are you trying to drive everyone to becoming Philosophy majors?
No, just to the dark side. [xkcd.com]
Re:Harmony what now? (Score:4, Interesting)
Aaaghh!
Python is, of course, a STRONGLY typed language (not untyped). It is also DYNAMICALLY typed rather than STATICALLY. But these issues are orthogonal, and languages exist in every quadrant of the type system grid implied.
Re: (Score:2)
Exactly such as C being weakly, but statically typed.
Re: (Score:1)
Re: (Score:1)
Re: (Score:2)
In my university we studied Prolog and SML. Now they're changing SML to Erlang. You can also take up Constraint logic programming for 3 credit. (Europe)
Re: (Score:2)
I guess you're choosing your programming languages to brag about how 'tuff' you're.
Re: (Score:1)
At my university UPV ( Polytechnic University of Valencia) we studied:
Pascal - 1st year
C with some assembler - 2nd year
Mathematica - 2nd year
Octave- 2nd year
C++ - 3rd year
Java - 4th year
Prolog - 4th year
Lisp - 4th year
Haskell - 5th year (depending on your specialization)
Shell script was just basic as we did most our coding on the Linux distribution favored that year by the sysadmins.
Re: (Score:2)
Re: (Score:2)
Re: (Score:2)
Re: (Score:2)
Apparently it's all 1337 now to say Python is sh177y.
That's OK. (Score:1)
The "write once run everywhere" model of Java was just a poor imitation of Forth's anyway.
--
BMO
Re: (Score:1)
Re: (Score:2)
That's not true. I still live in my bedroom.
Also, what do you mean "turn in to"?
OpenJDK? (Score:4, Insightful)
Re: (Score:2)
Re: (Score:2)
Never run against the encumbered.
Re: (Score:2)
Newsflash: Anything open source is almost certainly patent encumbered.
Pick a technology. Whatever is your favorite. Python? Ruby? C? C++? (MAYBE-P (OR '(Lisp Scheme))) JavaScript, Linux, BSD, Etc.
Guess what? Probably every major company from Lucent to Google to Microsoft to Apple, Oracle, Unisys, IBM, and God only knows who else probably has patent claims that are infringed by your favorite technology.
So you can quit whi
Re: (Score:2)
Pick a technology. Whatever is your favorite. Python? Ruby? C? C++? (MAYBE-P (OR '(Lisp Scheme))) JavaScript, Linux, BSD, Etc.
Guess what? Probably every major company from Lucent to Google to Microsoft to Apple, Oracle, Unisys, IBM, and God only knows who else probably has patent claims that are infringed by your favorite technology.
This is somewhat unlikely for C, as long as you stick to the standard library at least. Patents would have expired by now.
Re: (Score:2)
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.
Re: (Score:2)
Thanks for the info.
Does copyleft mean that if you use something what you release has to also be open source and free? Does that mean that Oracle is actually suing Google to be more open in their implementation rather than shut it down?
Do we know why they won't open source the compliance tools? Does that effectively prevent other implementations of Java from existing? Do we know why Oracle wants that?
Re: (Score:2)
Not if "what you release" is something that runs on the JVM.
The copyleft part only applies to you if "what you release" is the modified JVM, or something that reuses parts of its code. The license specifically contains a linking exception, so linking to the JVM (eg, using the class library that comes with it) doesn't fall under the copyleft license.
Re: (Score:2)
There is a field of use restriction on the TCK tools preventing other certified Java implementations from being used in a mobile environment. Ostensibly this would be done because there is money to be made by charging for mobile implementations.
Re: (Score:3)
No, that's not it at all. It has nothing to do with openness and everything to do with ensuring that there can never be a JVM that competes with the one Oracle bought from Sun.
Yes, yes, and yes. Your second question is the answ
Re: (Score:2)
You may have your tin foil hat on too tight. The suit has more to do with Google trying to circumvent Sun's license by making a "clean room" implementation of JVM for mobile use. Sun was never happy about Google doing an end run on their sale of embedded Java.
That said, nothing prevents us from wondering "what if" Google had based th
Re: (Score:2)
That's pretty much exactly what I said, though. They're using patents to prevent competition.
And it's kind of hard to say Sun was "never happy" when they published press releases congratulating Google on releasing Android and promised Android support
Re: (Score:2)
JVM is not Java. Scala, Jython, and JRuby run within the JVM and JVM7 has better support for these dynamic languages.
Re: (Score:2)
Are you suggesting the JVM should be used to run Scala, Jython, and JRuby on a mobile platform?
Refusing to fix broken, braindead APIs sounds more like a mark of senility than maturity to me. :)
Re: (Score:2)
Why not? I'm seeing the same thing done with Dalvik. JVM is ahead of the game when it comes to JIT and dynamic language support.
I didn't mean to sound too harsh on the "authenticity" comment.
Re: (Score:2)
Hey chief, where did I complain about Java not being open? I complained about Sun (and now Oracle) being terrible godawful maintainers of it, and using patents to prevent other people from providing a useful implementation.
And I can apparently get paid a lot more to develop Flex than Java at this point in time.
Re: (Score:2)
Does copyleft mean that if you use something what you release has to also be open source and free?
In this particular case no, because OpenJDK is released under the GPLv2 license but with the GNU Classpath Exception:
Do we know why they won't open source the compliance tools?
I think that certification was one way for Sun's
Re: (Score:2)
Does copyleft mean that if you use something what you release has to also be open source and free?
Yes, specifically OpenJDK is under the GPLv2.
Does that mean that Oracle is actually suing Google to be more open in their implementation rather than shut it down?
While I wouldn't put it that way, technically yes.
However, the real reason is Oracle wants Google to pay royalties to them like all phones that use JavaME do.
Do we know why they won't open source the compliance tools?
Because they make money from it?
Does that effectively prevent other implementations of Java from existing?
No, other implementations exist, such as IBM's version [ibm.com]. JRockIt was another, but BEA was bought by Oracle before Sun was.
Do we know why Oracle wants that?
See: Sun Microsystems, Inc. v. Microsoft Corporation
In other words, Sun (and their successor in interest Oracle) want to control the platform to prevent fr
Re: (Score:2)
Does that mean that Oracle is actually suing Google to be more open in their implementation rather than shut it down?
While I wouldn't put it that way, technically yes.
However, the real reason is Oracle wants Google to pay royalties to them like all phones that use JavaME do.
Oracle is not suing Google to make anything more open. They are suing Google for patent infringement in code Google has already released as Free and Open Source software. Oracle is attempting to use their patents to extort money out of Google. I'm sure they'll do the same to anyone else with enough cash for them to think it's worth it.
Re: (Score:2)
Thanks for the info.
Does copyleft mean that if you use something what you release has to also be open source and free? Does that mean that Oracle is actually suing Google to be more open in their implementation rather than shut it down?
Do we know why they won't open source the compliance tools? Does that effectively prevent other implementations of Java from existing? Do we know why Oracle wants that?
I forget that not everyone here is familiar with Free Software and Open Source licenses. Copyleft [gnu.org] is "a general method for making a program (or other work) free, and requiring all modified and extended versions of the program to be free as well." Since most of OpenJDK is under the GNU General Public License [gnu.org], the most common and best known Copyleft license, if you use any OpenJDK code as part of something which you release, it must also be released under the GPL. If you add some features to OpenJDK and relea
Re: (Score:2)
To add to the above, I believe the specific disagreements were in regards to licensing clauses of the TCK preventing the use of certified Java implementations in a mobile environment.
The particular licensing restrictions were not in compliance with the Java Community Process rules, but that unfortunately has not resulted in the license being changed. The entire fight seems to be directed specifically at Google, and Harmony is a casualty of the battle Oracle is waging (possibly at the behest of Steve Jobs w
Re: (Score:1, Offtopic)
Albanians only use JDK!