While leafing through the Vector API today, I had a few questions... toArray() -- should we really have this? the values, without the dimensions/indices, don't seem necessarily meaningful. It is used in one place, DenseMatrix.assignRow(), but seems like there is a potential bug there. The way its used, assumes the vector is non-sparse.
get()/getQuick() -- can these be merged now? seems like we would rather not have this distinction. copy() -- the semantics here seem identical to the standard clone() method on Object. Should we just switch to clone()? Also what is the intended difference between size and cardinality -- size is number of elements actually set to a non-zero value, cardinality is the actual dimension of the vector?