Abstract
This paper considers the problem of designing numerical linear algebra computations with a parallel object oriented programming language. An extension to C++ based on a Concurrent Aggregate concept is used to describe a hierarchy of distributed structures including dense matrices, sparse matrices, banded matrices, vectors and the associated linear algebra. We show that these abstractions are ideal for describing BLAS3 style blocked computation. As an example we show how to build a distributed conjugate gradient algorithms for sparse matrix (based on the NAS sparse benchmark and we show results for four different parallel machines.