begin  quoting Christopher Smith as of Tue, May 23, 2006 at 09:33:32AM -0700:
[snip]
> Java lacks from that list:
> 1) overloaded operators

Thank god!

> 2) access to platform specific features (yes, you can use JNI but at
> that point you aren't using Java)

It's analagous to using ASM fragments in a C program.  Since Java was
meant to be as platform-agnostic as possible, this is not a concern.
So yes, Java doesn't have it, but that was desgined in as a feature.

> 3) destructors, and lexically scoped resource management in general

Yup. It's tricky, error-prone, and thus designed out.

> 4) multiple inheritence

Thank god!

> 5) fairly well defined performance costs

It trades that for improved programmer performance and reduced
programmer headaches. :)
 
> On top of that, it's support for generic programming is limited enough
> that it's hard to use it effectively outside the context of collections.

Losing multiple inheritance and using interfaces took care of (from my
point of view) ~90% of the problems addressed by templates/generics. I
frankly don't miss 'em very much.

Other people did, thus the whole "generics" thing to introduce the
ugly C++-style syntax for templates.  I figured an ability to overload
return types (polymorphic return types? I forget the term) was sufficient.
(But then Java would have the same problem as C++ templates: bloat.)

> So no, I didn't describe Java.

Correct.  :)

-- 
_ |\_
 \|

-- 
[email protected]
http://www.kernel-panic.org/cgi-bin/mailman/listinfo/kplug-lpsg

Reply via email to