As Robert Dewar likes to say about style, one can get used to almost anything, ... But another one of the things that irritates me about Java is not only the false claim that it is a "pure OO" language, but the fact that the handling of "non-OO" entities--primitives--is so inconsistent with the handling of Objects. It may become "second-nature" after a while, but the programmer must constantly be aware of whether he/she is dealing with an Object or a primitive, and what that means in terms of implementation. When I do an assignment, am I really doing an asignment or am I creating another pointer to a single object? When I compare, am I comparing values or pointers? Do I need a "new" or is this automatically created in stack space? When I use this as an actual parameter, do I know whether the programmer of that routine kept track of all these things? To summarize, there are several constructs having semantics that change with context. -- Wes Groleau http://freepages.rootsweb.com/~wgroleau