gnu-arch-users
[Top][All Lists]
Advanced

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

Re: [Gnu-arch-users] Re: [OT] Java is fun!


From: Tom Lord
Subject: Re: [Gnu-arch-users] Re: [OT] Java is fun!
Date: Wed, 22 Oct 2003 19:47:23 -0700 (PDT)


    > From: Dustin Sallings <address@hidden>

    >   I guess the nice summary point is that I find it easier to write 
    > reliable code in Java than in some other popular languages.  

No doubt.  It's a (sorta, kinda) semi-dynamic language; it has GC;
other than bugs in implementations you can't get segfaults or other
sources of core-dumps; has some handy libraries ....  I don't mean for
a minute that it's a terrible development in the industry or an
unprincipled slob of a language design or anything quite like that
(I'm not _sure_ it's not those things but to assert such is a much
harder case to make :-)

It's disheartening as a lisper to read about how some of its
compromises compared to lisp have been based on (quite illogical,
technically speaking) "demands" from users.  Designer quotes that can
be paraphrased as "I wanted to do X but the customers at that time
screamed no so we couldn't do it" (where, here on earth, X would have
done no harm and lot of good for those customers).  It's a language
where, quite literally, explicitly, and by deliberate intention,
engineering has been relegated to a "close second place" in the design
concerns.

Frankly, I would guess that the exception design went roughly like
this:

        0) Primordial Time

           Gosling and friends, working on Oak, just made something
           up that looked intuitively right.   It wasn't the focus
           of their concern.   They were focused on other problems,
           particularly regarding embedded systems.

        1) Oak->Java Time (ca. 1994-1996)

           Somewhere in there, the language expanded in scope.
           Got taken off of the "semi-shelved research" shelf
           and repurposed as a competitor for MSFT platforms.
           Really, if you read Sun foo from back then, the 
           propoganda was "Unix v. Windows?  Neither:  Java!"

           As part of that effort, more language-theoretic researchers
           were brought in on the project.  They made a very long
           laundry list of things to fix.  A small subset of that list
           got fixed before they lost control.

        2) Lots of power struggles, winding up with JCP

           You've got people in Sun (with customers) still pushing
           it as an embedded system language.  They're pallies with
           folks in Sun working on embedded systems.

           You've got people in Sun (with customers) pushing it as 
           the enterprise middleware language.

           You've got people in Sun (with customers) pushing it as
           the common execution environment that can kill MSFT
           Windows. 

           You've got people in Sun seeing the free software mob
           coming over the horizon and people in Sun trying to
           abstract why that mob is working so well.

           You've got execs in Sun managing (sometimes monied)
           cross-company alliances and enmities.

           You've got N+1 teams at IBM working on implementations that
           threaten to take the language away from Sun's control.

           Voila, the Java Community [sic] Process.
           
The exception mechanism was a fart and there was never an opportunity
to fix it -- only patch it up a little.   Maybe now, very slowly, it
might someday be fixed.   Meanwhile, people who came into this
industry learning Java as one of their first N-1 environments ought to
realize that there are more things under heaven and earth.....

>From a language design point of view, from about the first day I saw
Oak, my thought was "Hey, that looks pretty close to a
special-purpose, declaration-intensive subset of a lisp -- you could
grow this language into a Real Language."   I'm pretty sure I wasn't
alone in that impression.   Things got a little too sidetracked a
little too soon, though.



    > That puts java in a relative position to some other languages
    > for a certain category of tasks in my opinion.  Java is not my
    > favorite language to work in, but it doesn't bother me that much
    > most of the time.

You're not spoiled enough by lisp-family languages :-)  (Not, horribly
enough, that they get this error-handling stuff right.)

-t




reply via email to

[Prev in Thread] Current Thread [Next in Thread]