Java or Not? Any *informed* opinions? 
Author Message
 Java or Not? Any *informed* opinions?


> : >>

> : >> >: I'd ask for a summary of where Java is/isn't handy, if I didn't think it
> : >> >: might cause another brief flare up of the war - as a Java newbie, I'd say
> : >> >: the portability and socket-related issues are probably it's strongest
> : >> >: points.
> : >>
> : >> >In a nutshell, its most important strengths are:
> : >> >* any sort of network related system (socket, distributed objects, database)
> : >> >* multi-threaded programming
> : >> >* internationalization and localization of systems
> : >> >* ability to scale from the low-to-medium end
> : >> >* lack of required applicaiton installation or maintainence
> : >> >* automatic garbage collection

> : >> Of course, many of these strengths are also available in other
> : >> languages, including C++.  I would say that the only strength
> : >> really unique to Java is that it is tied to the Web.

> : >No, I did not say available.  I said strengths.  Java has a hell of a
> : >lot more than the few features listed above; the features listed above
> : >are STRENGTHS.  In other words, Java rocks other languages big time in
> : >these areas.

> : No, I'm just not buying it.  Ada has had threads built into the language
> : for years.

> I cannot speak to Ada, as I have never used it.  But, again, I was
> talking about the strengths of Java.  This is a significant strenth
> whether Ada has this feature or not.  Why?  Because damn near no oneis
> doing Ada development nor will they likely.

Not so, but it does tend to be concentrated in aerospace & defense
although there is some commercial usage.  If you are interested in
facts, explore
using Ada.

- Show quoted text -


> : C++ does sockets, distribution, and databases just as well
> : as Java (ignoring for the moment real distributed languages like Obliq
> : which had RMI *years* ago).

> Nonsense.  C++ sockets vary from class library vendor to class library
> vendor, and you still have to deal with differences between hardware
> architectures.

> CORBA and DCOM distribution are not built into the C++
> language... They are hacks on top of it and are not capable of things
> like distributed garbage collection.

> : python does mobile code.

> Mobile code? What do you mean?

> : Garbage collection
> : is built into dozens of languages from Eiffel to Smalltalk, and can be
> : added seamlessly to C++.

> I said a lot of other languages have it.  However, seamless garbage
> collection in C++ certainly is not the norm.

> : The "ability to scale from the low-to-medium
> : end" is not much of a strength to begin with, but almost every language
> : invented in the last 15 years supports this.

> That is patently false.  Most client-end languages like Delphi, PB,
> anmd VB fall flat on their faces when you try to scale them *at all*.

> : Heck, Ada even has a version that compiles to the JVM, and I understand
> : that one of the Eiffel vendors is working on a similar product.

I've used the Ada to JVM compiler (called AppletMagic, produced by
and have been impressed with it.  I hope the Eiffel and Smalltalk people
can do
as well.  Java byte codes could be a good basis for multi (OO) language


> So what? :)  Eifel and Ada, as I stated below, are toy languages.

Neither of these is a toy language. Toy to me implies something small
like the original BASIC or the original Pascal.  The "so what" on the
Ada side
is that Dod has billions of dollars worth of legacy software that
could be compiled to run on the JVM and be reused within a Java system.


> : I'll spot you internationalization and ease of installation.  And it
> : has a fairly quick compiler and a simple build model.  Platform indepen-
> : dence (as long as you are not too fussy about what that means) is also
> : nice, and very important for some applications.

> Major bonuses, IMHO.

Ada 95 also added the Unicode character set.  I don't know what other
you consider "internationalization".  Please be more specific.


> : Look, I'm not trying to bash Java.  I used it for a small project and it
> : was pleasant enough to use.  Granted this was more than a year ago, and
> : I'm sure things have changed since then.  But I just don't see why people
> : think it is the greatest thing since sliced bread.

I'm not trying to bash Java either.  We are currently using it to
develop an
attitude estimation system, so that we can evaluate it's usefulness for
application area (spacecraft flight dynamics).  Early returns are very
particularly in comparison to C++.  There is definitely attractiveness
to the fact
that it is a simpler language than C++ or Ada.  The main annoyance so
far is the
lack of operator overloading -- we like to write our code so it looks
like a
mathematical formula, which is natural enough for the flight dynamics


> A year ago, Java was not good for much other than building applets.

> People think it is great because it has the ability to change the way
> we do software engineering.

How?  In my mind, it has mixed benefits in software engineering terms.
exception handling is even more rigorous than Ada's, since you must
any exception raised by functions you are calling.  However, the lack of
separation between interface and implementation, which are there in
varying degrees
for C++, Ada, and Eiffel, will hurt you when you are developing large
(100-1000 KSLOC)
systems.  That doesn't mean Java is useless, just a little harder to use
some cases.

- Show quoted text -


> : >> >Its most important weaknesses are:
> : >> >* speed (but it is not as slow as people would have you believe)
> : >>
> : >> More importantly, performance and functionality are dependent on
> : >> the quality of the JVM available to the end-user.

> : >I fail to see this as a big issue.  Over time, the uniformity of JVM's
> : >will stabilize as do most software products.  It really is not a major
> : >factor in whether or not one uses Java.  Or it should not be.

> : Well jeez, are we talking about Java today or Java at some random
> : point in the future?  Yes, eventually, I'm sure that all the problems
> : with Java will be worked out.  But in the mean time, you have to deal
> : with exactly the sort of compatibility problems that Springer is always
> : yammering about.

> I am talking about making a decision as to whether Java will work for
> you or not.  If you are beginning to develop a project now, Java works
> well on the MS and Solaris environments.  If most of your uses are
> there, you can be happy to know that ifnothing else, other uses can
> run your software and that things for them will only get better.

> Java gives them that.  Any other language leaves them with no
> application at all.

> : >> >* lack of MI
> : >> * Lack of genericity (what C++ calls templates)
> : >> * Very limited ability to specify the contract for interfaces

> : No comment on these?  Not even to agree or disagree?

> Actually, I missed these.

> Parameterized classes are coming.  I think they are a nice feature,
> but neither a plus nor a minus for any language.

> Design by contract.  I am sure if I were an Eiffel programmer, I would
> care more.  I am not, and I don't.

> : >> >* inability to scale to a massive degree (only C/C++ can do this well so far)
> : >>
> : >> That's a pretty parochial point of view, even for these newsgroups.
> : >> How about Eiffel, Ada, or even Erlang.  All of these have been used
> : >> in large or even huge mission critical and real-time critical apps.

> : >Toy languages.  Get them out of niche development, and then we can talk
> : >about them.

Mission critical systems may be a niche, but neither a tiny nor
unimportant one, as
you will realize next time you board a 777 ;)


> : Oh please.  I will wager real money that more real work has been done
> : in those languages than in all the versions of Java combined.  Counting
> : by delivered functionality, not books written about them.  When did Java
> : get finalized, in March?  Ada has been around for almost fif{*filter*} years.

> So what?  The point is Eiffel and Ada have 0 industry support.  They
> are now and forever shall be at best marginal niche languages.  Even
> if Eiffel was some deity's personal gift to programmers, it would not
> matter without industry support.

Zero industry support is an exaggeration, at least in the case of Ada.
I can't
speak for Eiffel, since I've never used it, but only read about it.  


> : Eiffel is being used in modern C/S business software.  Ada is commonly
> : used in avionics and automation control systems, both in and out of the
> : defense industry.  Erlang is a niche language, in that it is a proprietary
> : solution for telephone switches, but it was specifically designed for
> : real-time multi-threading and large scale development.

> Proprietary languages suck.  Period.  Either way, these three
> languages are inconsequential.

Ada is an ANSI standard and has a GNU compiler available, so if it
sucks, it's not
because it is proprietary.  (we have *lot's* of people around here who
thinks it
sucks, IMO because it was rammed down people's throats ;)

- Show quoted text -


> : >> >To my knowledge, all except the MI question are being addresses.  And
> : >> >none of the weaknesses are damning.
> : >>
> : >> Well, I guess that depends on what you are trying to do, doesn't it?

> : >No.  Damning means makes it unuseable or not useable for most purposes.
> : >Because Java my be unuseable for systems wtih extremely exact
> : >performance requirements has no bearing on my comment.

> : Whatever.  My only point is that other language choices exist, and


read more »

Tue, 16 Nov 1999 03:00:00 GMT  
 Java or Not? Any *informed* opinions?

But Mike, you fail to realize that George knows all.  
If he doesn't use it, it is of no use.  

I just hope this means that this thread will die on

specify the e-mail address below, my reply-to: has anti-spam added to it

Real Men change diapers

Tue, 16 Nov 1999 03:00:00 GMT  
 [ 2 post ] 

 Relevant Pages 

1. Java or Not? Any *informed* opinions?

2. Java Object Not Returned/Java Class Not Preserved

3. VRML generated from JAVA, not JAVA script?

4. Opinion: Linux+Apache+Java+Servlets || Linux+Apache+Python

5. To semi or not to semi: opinion sought on small style questio

6. To semi or not to semi: opinion sought on small style question

7. opinions: to Deregister funcs or not?

8. Opinion on whether or not to change to directory for file manipulation

9. Informing the user

10. originality vs simply being informed

11. does anybody informed?

12. Getting a program to inform you when it's done


Powered by phpBB® Forum Software