Apache Harmony Moves To Apache Attic
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 in the form of Android, more specifically the java. parts of the Dalvik core library.
uh, not sure if you even read the original article but..
There IS an open implementation of java, the openJDK, 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.
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.
lol, well I did actually bring my helmet and my gloves to work since I bike...
WAIT A MINUTE IS THIS MY BOSS!?
At least it's better than Perl.
I sometimes ask revealing, often ignorant-seeming questions. Maybe they're harder to answer than you think.
Yeah, that's exactly what it was.
Except cross-platform compatibility, and not being controlled by a proprietary vendor.
Both of which aren't a problem with .NET, so all is well.
I'm not completely up to speed on these issues. But is there anything about OpenJDK that people are unhappy with? Is it not open enough in some manner?
Democracy Now! - your daily, uncensored, corporate-free
I'm talking out of my ass here, but I was under the understanding that OpenJDK (or at least IcedTea) 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.
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:
Java makes for a really shitty first entry into programming. Its primitive niceties (no not talking about primitive types) can only be appreciated after one has had to deal with C++ shit.
I sometimes ask revealing, often ignorant-seeming questions. Maybe they're harder to answer than you think.
What about Mono?
I sometimes ask revealing, often ignorant-seeming questions. Maybe they're harder to answer than you think.
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.
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?
#DeleteChrome
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 regular running from me and java pays the bills.
never heard of anyone actually using harmony though so no big loss there.
world was created 5 seconds before this post as it is.
So C# magically gets you around the patent minefield?
How does that work?
Java is controlled by Oracle. As per the actual story, Apache tried to make their own JVM, Oracle said no, so Apache can't make their own JVM. (And as for cross-platform, in either case you're subject to the whims of the vendor. .net on freebsd is better than java on freebsd)
I am trolling
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.
That's funny since every grievance i ever had with C# was solved with Java :-)
Though i prefer groovy.
Slipping shoelaces ?
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.
Buy Text Processing in Python
How many C# lawsuits there have been? How many Java lawsuits, especially relating to total ignorance from Google, has there been? Yep.
Exactly such as C being weakly, but statically typed.
There is nothing wrong with Java. It is all in your head.
I object to power without constructive purpose. --Spock
What about PROLOG instead of LISP? Not quite as abusive of your bracket-keys but equally abusive of your "WTF?" when seeing the results :)
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.
I don't feel it's a stretch to suggest that if Dalvik had used the C# language instead of the Java language that there would have been lawsuits related to C#/.NET. But yes, your point is not lost on me.
Check out my lame java blog at www.javachopshop.com
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.
Java has two primary things wrong with it.. The first is that it SUCKS at making local GUI apps. The second is that the first versions were painfully slow and left such a horrible taste in some peoples' mouth that they will never recover. The latter issue has largely been resolved with VM improvements and hardware. The other.. well write your GUIs in C#.
Check out my lame java blog at www.javachopshop.com
Being a toy language doesn't mean it's bad. I rather enjoy it as such. I have pretty much replaced perl/bash scripts with python. My understanding (perhaps incorrect) was that Redhat had embraced it quite a bit and a lot of the the GUIs for configuration and such (read: not complex GUIs) were written in python.
Check out my lame java blog at www.javachopshop.com
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.
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.
GLaDOS for President 2016! "Well here we are again. It's always such a pleasure." -- GLaDOS, 2011
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.
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.
Canonical embraced it to the point that *buntu has python scripts running in background (printer-applet and such). This is perhaps a misuse of an interpreted language.
Coding etudes
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.
It doesn't mean anything with respect to patents as such. However, Ecma-334 (C#) and Ecma-335 (CLR) are covered by Microsoft community promise, 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 required parts of the mandatory provisions of that specification ("Covered Implementation"), subject to the following:
This is a personal promise directly from Microsoft to you, and you acknowledge as a condition of benefiting from it that no Microsoft rights are received from suppliers, distributors, or otherwise in connection with this promise. If you file, maintain, or voluntarily participate in a patent infringement lawsuit against a Microsoft implementation of any Covered Specification, then this personal promise does not apply with respect to any Covered Implementation made or used by you. To clarify, "Microsoft Necessary Claims" are those claims of Microsoft-owned or Microsoft-controlled patents that are necessary to implement the required portions (which also include the required elements of optional portions) of the Covered Specification that are described in detail and not those merely referenced in the Covered Specification."
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.
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.
That makes sense as the .NET CLR is basically what Microsoft went to after the licensing issues with J#. As I understand it, the CLR and JVM are very similar virtual machines.
If I mod you up, it doesn't necessarily mean I agree with what you've said, sorry.
There is definitely no Microsoft version of .NET for Mac.
"A Goddess rarely smiles for she is forced by others to be an island unto herself." - Zephiris
Apparently it's all 1337 now to say Python is sh177y.
sigfault (core dumped)
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.
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 - e.g. they describe the way Java .class files are laid out, and apparently Dalvik .dex files are similar enough that they infringe on that patent. It's pretty hard to sidestep a patent on JIT if you want an efficient VM, though.
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 specific wording they used is lawyer-proof in every country of the globe or not, I'm not qualified to tell. Stallman believes so; but he used a stronger wording in GPLv3, just in case.
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.
Interestingly enough, even if Stallman's opinion holds true, it would only apply to implementations derived from OpenJDK - any clean room reimplementation (such as Harmony) would run afoul of the patents, as the grant would not apply to it.
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.
Mod me down, my New Earth Global Warmingist friends!
There is definitely no Microsoft version of .NET for Mac.
except the one in silverlight.
That's funny since every grievance i ever had with C# was solved with Java
just curious. which grievances were those?
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.
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 the fact that the GPLv2 patent grant covers the users of the product itself in the USA, due to the estoppel thing. The doubts are whether the grant covers derived works (thus it's not a problem for OpenJDK itself), or over its validity in countries other than the USA which require an explicit declaration for patent grants (but this has not been proven in court yet).
Interestingly enough, even if Stallman's opinion holds true, it would only apply to implementations derived from OpenJDK - any clean room reimplementation (such as Harmony) would run afoul of the patents, as the grant would not apply to it.
Exactly. This is a problem for other implementations, not for OpenJDK.
So the only GUI application installed on your computer is Firefox or Chrome, am I right?
Search RapidShare and MegaUpload!
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.
Yeah, I had a sig once; I got bored of it.
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.
Yeah, I had a sig once; I got bored of it.
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)
I guess you're choosing your programming languages to brag about how 'tuff' you're.
That's not true. I still live in my bedroom.
Also, what do you mean "turn in to"?
Yeah, I had a sig once; I got bored of it.
To be fair, using lisp is a wholly different philosophy :)
Never antropomorphize computers, they do not like that
OK, so I've never actually even seen Python code. I've only heard of how amazing it must be and I assumed it was weakly typed because it's a scripting language.
I sometimes ask revealing, often ignorant-seeming questions. Maybe they're harder to answer than you think.
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.
I sometimes ask revealing, often ignorant-seeming questions. Maybe they're harder to answer than you think.
That's funny, I spend at least half of my work day using a Java GUI app.
Works pretty damn well, too.
Il n'y a pas de Planet B.