[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Java



Tony Kimball wrote:
> 
> Quoth Paul Prescod on Thursday, 6 December:
> 
> :  3. Sun refuses to standarize or open source it
> 
> I'll start to disagree here.  Sun just wants to control the standard.

Good, we agree that the issue is control. Can you see how this will lead
to resentment? People do not like to be controlled. They want to choose
their own leaders as they can unconditionally in the open source world
and to some (but lesser) extent in the standards world.

>...
> (1) is a pretty marginal issue, but File.listFiles and FileFilter do this.

Convenient globbing is only a pretty marginal issue from a big-systems
point of view. After all, in a big systems point of view, anything that
can be worked around in fifteen minutes is "marginal." That's my point:
a lightweight language is one that doesn't allow itself to play this
game. It doesn't make the excuse that it will only take a few minutes to
work around its flaws. According to my defintion of lightweight, a LL
designer would say: "if it is common to want to do this, then let's make
it quick and easy."

> (2) because there's no such thing as "standard" environment variables.
> It's a portability issue.

That's what they say. But I'd like to ask them a few questions: Would
they go on to claim that C, Python and Perl are not portable because
they support environment variables? What platforms does Java run on that
C does not? Why couldn't environment variables and properties coexist?
Which would be more of a portability issue, System.getenv or
System.exec?

> (3) I suppose you can be offended by this if
> you choose, but I don't see how it makes coding more difficult.
> In fact, each File object has a current-directory, which is just
> a convenient generalization of the cwd concept.

Why couldn't "cwd" and File objects co-exist?

> (4) String s2 = s1.replaceFirst(regex,replacement)

Yes, the latest versions of Java have somewhat corrected its amazing
deficiencies (relative to Perl, Javascript, C#, Python) around string
processing. Large and small applications alike do tons of text
processing. No language that was as bad at it as early Java (and the
Java that many programmers use today!) would have become popular without
Sun's backing.

>...
> The class lib is pretty convenient in my opinion.  I think it is
> safe to say that Java programmers using the JRE libraries have a
> substantial productivity advantage over CL or C++ programmers
> using only the standard library APIs of those language environments.

C++ sure. CL? Depends what you're doing. But compare it to some of the
languages discussed at LL1. 

> :  5. What is "100% Java"? Linguistic cleansing?
> 
> It's a (partial) portability guarantee.

If it is partial then it isn't a guarantee! In my experience, Java is no
more portable than languages that make operating system access easy,
rather than difficult. 

And anyhow, why wouldn't Sun encourage programmers to use their favorite
language on the JVM? The slogan could be "100% JVM". It comes back to
control. Controlling the VM isn't enough. They need to control the
language, the libraries, the runtime, the web services toolkit, the HTML
templating framework, ...

That's good for them but it isn't good for us.

 Paul Prescod