The Joy of Java

Timothy C. May tcmay at got.net
Fri Apr 26 08:16:18 PDT 1996


At 5:27 AM 4/26/96, Mike Duvos wrote:

>I completely agree with this.  Java incorporates the type of
>automatic corruption-proof memory management found in languages
>like APL, the basic notions of object oriented programming, fast
>dynamic linking, and a C-like program structure.
>
>This is powerful combination of features and gives Java the
>potential to do all the platform-independent things that were
>advertised for C before the rude reality of thousand line
>makefiles reared its ugly head. . The complete specification of
>the Java Virtual Machine means that the behavior of Java programs
>is perfectly well-defined, and one does not have to tweek
>anything which is processor or operating system dependent.

Let's hope that this is really true. Your point about C is an excellent
one, as certainly the "lingua franca" of C pretty much failed, except when
enough work was done to properly port an application.

(However, the bytecode/JVM approach exacts some performance penalty, albeit
partially ameliorated with JIT compilers that are likely to be widely
available. Some apps will just have to be tuned for speed. But when I look
at most crypto apps such as we are ultimately interested in--digital money,
mixes, crypto protocol building blocks, etc.--I see that first and foremost
they aren't getting done and distributed. The applet model looks pretty
good here.)

>In the future, I expect Java bytecode to become a significant
>channel for the distribution of popular applications, with
>compilation to fast native code on numerous platforms.

One interesting remark I read from someone was that the Java distribution
model returns us to an era of easier distribution of small programs. The
"application bloat" of very large programs may be at least partly fixed.
We'll see.

>Java is clean, and its concepts are easily understandable even by
>persons whose eyes glaze over after the first 30 pages of the C++
>manual.

My background in programming was in Lisp when I was with Intel (I started
Intel's AI lab and was the first person to look at neural nets for them),
and then Smalltalk for "fun." But, like I said recently, I knew that
Smalltalk had about zero chance of becoming widely used, despite fairly
impressive year-to-year growth rates. (I also got Lightspeed C in '86, but
barely played with it over the years...good intentions, though.)

Anyway, Mike is right that Java is a lot of fun. Enough good OO stuff to
keep Smalltalk folks happy, but with familiar C syntax. And going to
garbage collection/eliminating pointers is a major plus for reducing errors
and headaches.

A huge number of books are hitting the shelves. Besides the "Teach Yourself
Java in 21 Days" book, I really like "Core Java," a hefty tome with lots of
asides about how Java compares to C, C++, Lisp, and Smalltalk, and with
more of the "rationale" than most of the other books. The "Java in a
Nutshell" book is also well-regarded. And Peter van der Linden's "Just
Java" is good. (These are the four I have, and my eyes haven't been glazing
over yet.)

Gosling's book arrives soon. I looked at an advanced draft and it looks
excellent, too.

>Java Applets, mobile crypto agents, and the new Web-centric view
>of cyberspace will go a long way towards encouraging the
>planet-wide use of strong crypto, as well as effectively swatting
>annoying mosquitos like ITAR.
>
>Indeed, with Java, I can put up a Web page which teaches someone
>about a cryptographic algorithm, allows him to try it out and run
>sample data through it, and provides him with a
>platform-independent implementation of it to use as he wishes.
>All in one fell swoop.  That's a pretty powerful concept.
>
>Java has come at the right time, and it will produce chaotic
>change in the existing order.
>
>Should be interesting.

I agree with all of Mike's points.

Interestingly, I've been having an e-mail dialog with a friend who avers
that Java is just another temporary fad, just another ho-hum interpreted
language. He claims that Perl and TCL were similar fads, and didn't change
the world.

I disagree with him, of course. I think the flood of books, compilers,
incorporations into browsers and operating systems, etc. is strong evidence
that Java is a bit more than just this year's version of TCL.

But, the great thing about a market anarchy is that people get to vote. By
deciding what to buy, what to work on, what to build applications with, and
so forth.

The first "killer applet" (tm) will be what?

(There's a fair chance it could be a digital commerce applet, something to
exploit correctly the pent-up demand for online purchases....I can imagine
folks on this very list becoming the Scott Cook's of this market....)

--Tim May

Boycott "Big Brother Inside" software!
We got computers, we're tapping phone lines, we know that that ain't allowed.
---------:---------:---------:---------:---------:---------:---------:----
Timothy C. May              | Crypto Anarchy: encryption, digital money,
tcmay at got.net  408-728-0152 | anonymous networks, digital pseudonyms, zero
W.A.S.T.E.: Corralitos, CA  | knowledge, reputations, information markets,
Licensed Ontologist         | black markets, collapse of governments.
"National borders aren't even speed bumps on the information superhighway."










More information about the cypherpunks-legacy mailing list