Domain: kaffe.org
Stories and comments across the archive that link to kaffe.org.
Comments · 181
-
The virtual machines exist
There are virtual machines for almost every platform. Some of them (esp. Kaffe) are free _and_ very portable.
-
primary difference: Java is more matureGoing through the C# language documentation, it really looks like Java with some of the top items of Sun developer's Java wishlist (signup required) added: call-by-value for classes, syntax for looping over sequences, and a few others. Typical MS style: clone the competitors product and add the most visible gimmicks.
Microsoft makes a big deal out of the universality of their runtime, but it isn't significantly more universal than the JVM. They claim they compile C++ into their runtime, but it isn't C++, it's a "safe subset" (full C++ is compiled into native code and linked in--useful, but not a feature of their runtime). In fact, more than 100 languages have been implemented on top of the JVM, including C; there are also semi-automatic translators for C++.
.NET is about not just C# and the runtime, but also about XML. Of course, that's a big thing with Java as well, with several excellent XML projects in Java, perhaps most notably the Apache efforts.I wouldn't actually care much about whether Java or C# ultimately "wins" in the market, if it weren't for the fact that C# is years behind and has the wrong motivations behind it. Java is, by now, fairly mature and it has an excellent set of APIs and libraries behind it, both from Sun and from other sources. There are numerous compilers to the JVM for languages like Python and Smalltalk. And there are several third party implementations. Java's implementation isn't particularly tied to any one platform, and it actually runs better on Windows than on Sun's own Solaris. And it will take a C#/.NET implementation at least as long to mature as the JVMs--building these kinds of runtimes is hard and requires a lot of benchmarking and user feedback to get the bugs and performance bottlenecks out.
If Slashdot readers care about open source and open standards, rather than complaining about Microsoft, there is a much more effective thing you can do: support open source Java efforts like Kaffe, Intel's Intel's Open Runtime, GNU GCJ (now part of GCC), and GNU Classpath. By "support" I mean: use them, consider them for your next open source project, submit bug reports, and maybe contribute code. GNU GCJ, in particular, should be a good basis for you to write Linux applications: it compiles to executables that start up quickly, it lets you use native code almost as if it were written in Java, and you can even write native Gtk/Gnome applications in it.
But perhaps most importantly, educate yourself about Java rather than complaining about it; Java is really a pretty decent engineering effort. Give it the benefit of the doubt, and wher it needs improvement, help it along. C/C++ will not make it in the long run. It's Java or C# or something else similar to those languages.
-
Java: Kaffe
The GPL'd Kaffe VM seems to be a good idea for the Java part. It has been ported to many platforms and is aimed at embedded systems.
-
Microsoft still involves in Java community
In case you didn't know, Microsoft signed a contract with Transvirtual to support development of a GPL PersonalJava 1.1 compliant java envirnoment Kaffe . You can find the news here
However, don't dream that Microsoft dedicates to the growth of Java and GPL. Some conspiracists suspected that the whole things is to hurt Java development. The fact that Kaffe has not implemented java.security will help supporting the false claim "Java is not secure"
"Microsoft is throwing money at a small company trying to make some noise at JavaOne, the way they do every year,"Jim Mitchell, vice president of architecture and technology at Sun's JavaSoft division, said.
-
Microsoft still involves in Java community
In case you didn't know, Microsoft signed a contract with Transvirtual to support development of a GPL PersonalJava 1.1 compliant java envirnoment Kaffe . You can find the news here
However, don't dream that Microsoft dedicates to the growth of Java and GPL. Some conspiracists suspected that the whole things is to hurt Java development. The fact that Kaffe has not implemented java.security will help supporting the false claim "Java is not secure"
"Microsoft is throwing money at a small company trying to make some noise at JavaOne, the way they do every year,"Jim Mitchell, vice president of architecture and technology at Sun's JavaSoft division, said.
-
Re:Can anyone describe how to get java working?
Hmmm. I use Kaffe as my Java VM for Konqueror and I haven't had any problems yet. I just dl'ed the latest version, did a
./configure --prefix=/usr/local, make, make install, and told Konq to autodetect Java. And exactly that it did. -
Bjarne Stroustrup Doesn't Like Java EitherPlease read why Bjarne Stroustrup (the creator of C++) doesn't like Java either.
You might think that's because he's the creator of C++ after all, but I doubt it - Bjarne has used languages you've likely never heard of, and he understands the strengths and weaknesses of each.
Stroustrup finds much of Java advertising insulting and offensive to other programmers. I do too.
Java, as a language, has some merits. But what I'd like to see is an ISO standard that is not controlled by Sun (note that although Stroustrup participated in the ISO standardization process for C++, AT&T certainly didn't try to control the process as Sun insists on doing with Java), and I'd also like to see one able to compile Java programs to native executable code so they can run directly without a VM; this is possible with gcc but I believe it's not yet ready for production use.
I certainly won't believe that Java is even valid as a language unless multiple independently written implementations can all pass compliance test suites; most of the Java VM's out there don't count because they're just ports of Sun's VM. That's one reason I'd like to see Kaffe succeed.
Meanwhile, for an alternative to Java - writing a single set of C++ sources and compiling to native executable binaries on Mac OS, Windows, BeOS and POSIX platforms with XWindows (such as Linux) see the ZooLib cross-platform application framework.
Michael D. Crawford
GoingWare Inc -
Kaffe
Kaffe, an [the best] open source JDK, is your best bet.
It supports user-level threads (jthreads - recommended unless you want to spend weeks on each port to alternate platforms (of course you might require the speed of kernel threads - Java tends to be slow (although much of this is the overhead from the Virtual machine)) as well as standard Posix kernel threads. -
Re:I wish Java didn't mean two things
So, we're left wondering which of [Java the Language and Java bytecode/JVM], if any, or both, Sun plans to "open source"...
The language and the bytecode are already open, in the sense that you are free to create an open source compiler and JVM (c.f. kaffe.org for an effort already well underway).
The software Sun makes available for download, OTOH, is most definitely not Open Source (at least, not yet).
-y
-
They already exist
Certainly kaffe exists. They will benefit, not because they cannot currently exist but because they will have to go through fewer legal hoops to get there.
-
A decrease in size and possible kaffe improvement
I think that kaffe would really benefit from this. Last I checked they hadn't updated their program for quite a while.
Also improvements in memory waste of the JVM and sheer size would be greatly appreciated. -
Transvirtual's bid to remain relevant?
Given that tools such as Kaffe are no longer needed on Linux now that we have a complete, official JDK from Sun (with a better JIT as well, see the August LJ for info), I think that Transvirtual was thrown into a situation in which there was no future for them in the Linux world. Rather than doing what they did in the past (ie, innovating), we know see that they are hawking a bizzare mixture of Linux and Java (with XML thrown in for buzzword compliance) at the PDA crowd, perhaps the last market in which flash and glitter is more important than real results.
People buy PDA's to jot little notes or as an address book. Anything else is just another feature to list on the box (and listing Linux is guaranteed to make geeks drool). How many people use PDAs to run Java-enabled distributed applications? Not many, I'm guessing. Worse still is the use of Java. Why bog down an already slow processor and waste precious battery lifetime running a bloated JVM when native code would work just as well? For small systems like PDAs, speed is a much more important factor than portability. Client-side Java is dead on the desktop, and I'm guessing it will have a short life on PDAs as well.
All in all, this seems to be YA Linux PDA: loaded with features no one wants, no one needs, and no one will use. But hey, it's got a penguin on it, so that's guarenteed sales to the geek demographic.
-- Floyd -
Re:Why Not KDE? - Sun/Java/ownership
GTK and GNOME bindings for Java, though they're through gcj
There are actually two significant GPL'd Java implementations, so whatever "ownership" Sun has should be less of a concern. GCJ is one, on track to be in GCC 3.0 or maybe even GCC 2.95.next; and Kaffe is very well established.
But AWT support is mostly lacking, there. Having Gnome accessible from Java is a big deal, and is likely going to be the site of future major fights. I mean, nobody implemented a cleanroom Swing (over a cleanroom AWT); and who would want to? Do a good API to Gnome instead. Swing has major virtues, but from the perspective of Free Software it's a major downer -- too much code, too much history, too much corporate control.
It'll be really interesting to see how supportive Sun is of GPL'd Java working in the Gnome environment. I suspect that if the community develops, it'll either be using GPL'd Swing (from Sun) or Gnome-from-Java.
-
CORBA isn't the answerYes, UNIX lacks a component system that works well for GUI and end-user apps. Yes, at a very high level, it should give people the capabilities of COM on Windows.
But I think neither COM nor CORBA are the answer. COM and CORBA are both rather complex systems because they are trying to patch up deficiencies in the underlying languages, C and C++. In an environment that encourages reuse, you should be able to just serialize and send objects to other components without lots of error-prone declarations. Such systems exist, and have existed for decades. But you simply can't build them reliably on top of C/C++.
Ten years ago, Objective-C was a pragmatic and efficient answer to that problem. Objective-C is simpler than IDL and gives programmers more power. Today, the obvious answer would seem to be Java, although even it is still more complex than it probably ought to be.
While I appreciate the short term utility of Gnome, I think in the long term, the effect of the Gnome project (and KDE, for that matter) is going to be harmful. It continues to encourage people to develop in and for an environment that is fundamentally not well suited to building software components and getting a lot of code reuse.
If people want to do something relevant for end users in an industry-standard environment, I think they should contribute to Java-based desktop application efforts. The Gnome programmers are smart and capable: if even a fraction of the Gnome effort went into open source Java implementation (e.g., kaffe) and Java desktop apps (e.g., JFA), we'd soon have a good environment that would be much easier to extend with new components than a big C/CORBA system.
-
Why worry about Netscape, Pine or the JDK?
-
Won't be open to Net/OpenBSD?The original poster suggested that this implementation might be available on other BSD variants in the future. I don't think this is going to be the case. I wasn't able to track down the licensing info, but I see no indication in the press release that this is the least bit open source. Is this an "official" Java implementation with code licenced from Sun? If so, I wouldn't expect a port to Net/OpenBSD any time soon.
Remember, we still have a GPLed Java implementation in the form of kaffe. It isn't quite Java 2 yet... but if you want Java on a less-than-mainstream platform, it may be you best bet.
Darian
~O~
-
Java and opennessI'm curious to know the reasons behind the choice of Java as the programming language for FreeNet's development. I can think of some pros (reasonably nice language, cross-platform), but also of a big con for an Open Source software project: the standard Java development environment (the JDK) isn't free.
Do you plan to actively support the use of FreeNet using free Java tools (like kaffe, japhar, gcj)?
-
What about Kaffe?
"Java isn't platform independent; it is a platform. Like Windows, it is a proprietary commercial platform. That is, you can write programs for Windows/Intel or Java/JVM, and in each case you are writing code for a platform owned by a single corporation and tweaked for the commercial benefit of that corporation. It has been pointed out that you can write programs in any language for the JVM and associated operating systems facilities. However, the JVM, etc., are heavily biased in favor of Java. It is nowhere near being a general reasonably language-neutral VM/OS. " -- Bjarne Stroustrup's FAQ
Well, Sun seems to have got the better of Microsoft on this issue, but there is a GPLed Java language implementation for the rest of us. From my (rather brief) experience with it, Kaffe seems to do pretty well even with Sun's class files, though from what I've read performance may still need improvement. -
Re:But why is this a problem?
-
We need to support Kaffe...Clearly shows that we need a free software implementation of Java more than ever. IBM may appear to behave more reasonably at this point in time, but we should not be kidding ourselves. I wouldn't trust IBM unless the license provided guarantees, and as far as I understand IBM is just another Sun licensee, hence their JDK is not any more free than the one from Sun.
Kaffe or something equivalent is our only hope in the long run.
-
Re:Not a troll - Thanks to MS for breaking JavaSince Java is closed
Get the damn language spec and virtual machine specification and get coding, don't expect to get source handed to you like bloody social security. Or trink a leetle Kaffe to get better.
(I assume e.g. C++ isn't open either, then, since AT&T didn't release their source, and you'd have to pay ISO a hefty sum for the standard. But then you'll probably start yabbing about GCC, and I'll cover my ears just like you.)
-
Re: trojan horses, hardware tokens (floppies?)
We also use Java for the client, instead of just a web browser, so we can protect the client enviroment a little more against trojan horses and to make the digital certs easier.
This seems a very small improvement. By using the GUI virtual keyboard, you prevent the simplest client-side cracks like key-capture apps, but you're still trusting the JVM. Especially with projects like Kaffe, the JVM isn't much more trustworthy than an OS. You've raised the bar a bit, but only a bit.The keys-on-floppies is almost a nice idea. What I'd like to see is a durable, relatively inexpensive smart hardware device that interfaced the computer via a floppy drive. You'd have a keypad and display about the size of a floppy, with a flexible ribbon attaching it to the computer interface. The computer would send a request to the device by "writing a file" and would pick up the response by "reading a file". For the poor iMac users, you might have an optional USB interface. [I like the idea of a USB-connected smart device, except 1) you'd want some sort of retractable cable to allow the keypad/display to be positioned away from the USB port, and 2) success of the iMac notwithstanding, 3.5 inch floppies are much more prevalent and better supported than USB.]
I just imagine lots of docs copying their floppies and challenge-response sheets so they won't have to lug them around. With a smart hardware device, that would not be an option, and you'd address the problem of compromised client machines.
-Peter
-
We have an Open Source one. Who cares about Sun?This appeared today on Technocrat. I hold the copyright of the article, so I can paste it in here.
Transvirtual and the Kaffe Core Team have released Kaffe 1.0.5 (finally!). It's got a new JIT, new processor ports, a clean-room RMI implementation, kernel threads, and much more. For more information see http://www.kaffe.org/
Transvirtual Technologies, Inc. today released Kaffe OpenVM 1.0.5, the only complete Java implementation available with a true Open Source license.
The release heralds a major improvement in the reliability and performance of open source Java implementations. Tests conducted with various Open Source server side Java applications, including the popular Apache/JServ webserver and the Enydra Java/XML Application Server, demonstrate Kaffe out performs its Java Linux rivals by as much as 300%. Kaffe also proves more reliable than other Java implementations which simply hang when running under heavy load.
Transvirtual targets Linux as their primary server-side, desktop and embedded environments. Kaffe, developed using the Open Source model, once again demonstrates how Open Source can offer a better, cheaper, faster and more reliable product than proprietary alternatives.
This new release of Kaffe also offers a number of new features, including:
* Bundling of the KJC Java compiler from Decision Management Systems (http://www.dms.at/kopi) - a complete JDK 1.2 Open Source compiler suite.
* A complete Remote Method Invocation implementation written in collaboration with the GNU Classpath project (http://www.classpath.org).
* Support for the the popular Cobalt Network Web Servers.
* Support for the MIPS and StrongARM processors (Kaffe already supports Pentiums, Sparcs, Alphas and Motorola processors).
For more details on Transvirtual Technologies see their web site.
For more details on the Kaffe Open Source Project see The Kaffe Project Web Site.
All names and trademarks are the property of their respective owners.
-
We have an Open Source one. Who cares about Sun?This appeared today on Technocrat. I hold the copyright of the article, so I can paste it in here.
Transvirtual and the Kaffe Core Team have released Kaffe 1.0.5 (finally!). It's got a new JIT, new processor ports, a clean-room RMI implementation, kernel threads, and much more. For more information see http://www.kaffe.org/
Transvirtual Technologies, Inc. today released Kaffe OpenVM 1.0.5, the only complete Java implementation available with a true Open Source license.
The release heralds a major improvement in the reliability and performance of open source Java implementations. Tests conducted with various Open Source server side Java applications, including the popular Apache/JServ webserver and the Enydra Java/XML Application Server, demonstrate Kaffe out performs its Java Linux rivals by as much as 300%. Kaffe also proves more reliable than other Java implementations which simply hang when running under heavy load.
Transvirtual targets Linux as their primary server-side, desktop and embedded environments. Kaffe, developed using the Open Source model, once again demonstrates how Open Source can offer a better, cheaper, faster and more reliable product than proprietary alternatives.
This new release of Kaffe also offers a number of new features, including:
* Bundling of the KJC Java compiler from Decision Management Systems (http://www.dms.at/kopi) - a complete JDK 1.2 Open Source compiler suite.
* A complete Remote Method Invocation implementation written in collaboration with the GNU Classpath project (http://www.classpath.org).
* Support for the the popular Cobalt Network Web Servers.
* Support for the MIPS and StrongARM processors (Kaffe already supports Pentiums, Sparcs, Alphas and Motorola processors).
For more details on Transvirtual Technologies see their web site.
For more details on the Kaffe Open Source Project see The Kaffe Project Web Site.
All names and trademarks are the property of their respective owners.
-
Re: GPL Java
Plus, there are implementions already under the GPL - notably Kaffe. The copyright holders also sell/license a commercial version through the company Transvirtual, and apparently have licensed it to Micros~1 in a deal involving some of their technology (like J/Direct).
-
Re:I may be displaying my ignertz...
I may be revealing a dangerous level of ignorance about Linux, but just exactly what ARE the problems with Linux that Gosling aludes too?
His comments about the different distros are smoke. The real problem is the license. Nobody wants to pay it. Maybe one of you guys who bought Redhat at 14 and sold at 100?
:-)The alternative is to not get a license, and try to clone it instead.
---
Have a Sloppy day! -
Re:The problems with Java that don't exist on Linuclosed-source
The specs are there for all to implement at their leisure. Why would you want Sun's particular and buggy implementation? Get Kaffe and participate to your heart's content.
-
Kaffe's future and the GPL.
Unfortunately (fortunately, maybe?) I doubt the GPL will be invoked at all here. If Microsoft's aim is to remove one possible equivalence with Windows (cloned Java support + MS extras) from non-MS OS'es, they'll simply force Transvirtual to stop releasing their portion of the source under the GPL. (Unless, of course, the GPL has a clause somewhere which prevents changing the license.) Since according to the Kaffe FAQ, Transvirtual actually holds the copyrights to most of the source, this would effectively kill Open-Sourced Kaffe.
In any case, I seriously doubt Microsoft will allow any of its "improvements" to Kaffe to be open-sourced. The aim of giving a language/protocol/device Windows-specific features is to give Windows a bigger feature set than competing OS'es, and if Linux et al. get these features through Kaffe, Windows gets no edge. It's not like Microsoft to throw money at a project for the general good.
:P
-W- -
On kaffeKaffe is a free Java Virtual Machine implementation (GPLed); it runs on e.g. Linux. It may be that people are working to provide platform-specific extensions for it. Transvirtual is the company started around kaffe by the kaffe project leader, Tim Wilkinson
I don't know about Microsoft's involvement, but it has been clear for a long time that Microsoft resents Sun's dominance in the Java world. I'm sure they'd be happy to have a non-Sun-controlled JVM. Whether or not they care enough having a non-Sun-controlled JVM to fund a GPLed development, I don't know.
-
Duh, check the web, Hemos
See http://www.kaffe.org/ for all the information you need. Pay attention to the links in the FAQ, particularly the bits that talk about the relationship between Kaffe and Transvirtual.
N
-
Re: The man is clueless; EPIC= VLIWIs JIT reduce to compiling for the hardware the JIT compiler is running on - or a virtual machine?
JIT is "Just-In-Time" compilation, and actually outputs machine code (see kaffe for a Java JIT). The idea is that at run-time you have a better idea of the types of the variables and actual functions called, even though at compile time it wasn't necessary clear. This is an optimization that could be applied to dynamic languages: Smalltalk, Java, maybe Lisps [they also have type declarations], and hypothetically to any interpreter (Perl, Python, Tcl,
...).