> Yes, the interface to the RDBMS is dynamically typed, but the data in
> it generally is not.  This is a case of dynamic typing being
> *unavoidable*.  To implement an interface to a system that stores
> arbitrary data, you need your interface to handle arbitrary data types.
>  Therefore, they (correctly) made the tradeoff to dynamic typing.  If
> you do not *need* to handle arbitrary data, you shouldn't.  This is the
> same for the container classes; they need to handle arbitrary data, so
> they are dynamically typed.

One other note... the container classes in Java did not need to be
dynamically typed.  One could have been implemented for element type, e.g.
vector<string>, vector<int>, etc.  The designers of Java simply made a
trade-off in favor of dynamic typing.
Mike