Brian's Waste of Time

Tue, 15 Apr 2008

If We Had to Drop Java

So, thought experiment. If we, as an industry, had to drop Java, the language and the virtual machine, for some reason, what could really move into its niche?

Some points to consider:

Putting aside the "damn I want to use coolness X," what out there provides something that could do it?

writebacks...

Dion Almaer


"If we had to give up English and books what would move into its niche?" The CLR/Mono could come along and sweep up here, although the legal issue..... Else, I am sure Parrot will come along and step it up ;)

Ben Scherrey


As a VERY early adopter of java I went through this exercise in 2000 when I got tired of the NIH syndrome that affected Sun in regard to Java standards at the time. My solution was, and remains, python. Better to re-write the java code in python than go through the exercise but it wouldn't be terribly difficult to convert from the JVM bytecode to PVM bytecode. Java has improved since then and Sun is finally opening up better but I've never had any reason or justification to look back.

Yuval Kogman

OCaml
I am sure Java's niche is not very hard to fill if it magically disappeared, the biggest problem in introducing such a language today is competing with something as successful as Java. This is especially in light of the many minor shortcomings that Java has that don't seem to interfere with actually using it to get the job done. At any rate, I do know of an interesting alternative: Objective Caml supports OO and functional programming, is strongly typed (with type inference), provides a robust module system, very fast runtime (often as fast or faster than C), garbage collection, and many of the "ooh shiny" features that the lambda heads like to talk about so much, but without so much of the intellectual overhead of learning e.g. Haskell. I think this passes all of your points. I think Scala was designed to provide similar features, but I don't know very much about it. The various dynamic languages (Perl, Python, Ruby, etc) also share some of Java's niche, but it's harder to keep large teams of mediocre teams at a consistent quality because they tend to be more permissive. Some of them don't have good support for concurrency either, but the trend has been to improve that. I think that given adjustment time they could easily replace most of what Java offers.

Yuval Kogman

blog comment system
Please consider making a note that the comments are not formatted from text to HTML, and how to get around that, and/or adding a preview/edit feature to posted comments.

comment...

 
Name:
URL/Email: [http://... or mailto:you@wherever] (optional)
Title: (optional)
Spam Guard, translate l33t to English: (hint, it's an Australian animal, plural form)
Comments:
Save my Name and URL/Email for next time