Ludovic Brenta wrote:
> Contrast [Ada parameter passing] to C where
> simple parameter passing often requires pointers, and with Eiffel or
> Java where everything is a pointer whether you like it or not.
Neither is true: Eiffel has expanded objects and expanded
classes (if they work in an implementations). A name of a
variable will NOT be attached to some object (a reference)
but denotes exactly one object. Also, expanded objects
Eiffel prevent the aliasing that is possible with pointers
Java has had basic types that have no references forever.
Wrappers were added later. However, in this case neither
seems a good compensation for the other.
I do not mean these remarks to be a statement favoring
these or others languages.
Is number crunching going to be done in parallel? Eiffel's
separate classes (whose objects execute on a conceptual
"processor") is not fully available yet. I'd think that control
of fundamentals of concurrent execution is, however, readily
available with Ada's concurrent types.
Ada's base type system---like Modula's it features name
equivalence---should help abstracting your numeric types
most efficiently, and precisely, as you decide yourself
about bits, ranges, and optionally representation.
Y A Time Drain http://www.9toX.de