The Artima Developer Community
Sponsored Link

Java really missed an opportunity here.

Advertisement

Advertisement

This page contains an archived post to the Design Forum (formerly called the Flexible Java Forum) made prior to February 25, 2002. If you wish to participate in discussions, please visit the new Artima Forums.

Message:

Java really missed an opportunity here.

Posted by Sundar Narasimhan on 31 Oct 1998, 2:36 PM

There are really two (at least) orthogonal issues conflated in these
discussions.
1. Empty constructors: Here I feel that Java missed an opportunity
here. If you look at Lisp and CLOS, you'll see that Java could very well
have "abolished" constructors with the same name as that of a class.
(i.e. why have Point(..) create instances of a point. Why not
make do with a "make-instance" class-name, and a variable list
of args?). i.e. whenever you want to create an object .. you always
have to do:
SomeObject f = Class.makeInstance("SomeObject", arglist);
This would have unified "bean" constructors and default constructors
and obviated half of the confusion.
2. Whether or not "all" objects should be serializable. I think
people who call for this are "bean bigots". In my experience they
tend to programmers who have never run across functional programming
concepts such as closures, continuations or infinite streams.
I'd suggest that if you read up on these concepts it will become
apparent why "serialization" of such objects/classes rarely makes
sense.

Regards, and thanks for a very useful discussion.



Replies:

Sponsored Links



Google
  Web Artima.com   
Copyright © 1996-2009 Artima, Inc. All Rights Reserved. - Privacy Policy - Terms of Use - Advertise with Us