The Message-Passing Interface (MPI) defines a de facto standard for writing message-passing programs. However, MPI operates at a rather low level in the sense that a programmer regards a message as a programming unit. We present a new point of view. In our approach, a programmer regards distributed data as a programming unit. MPI-DDL is a programming environment which contains an application-oriented layer on top of MPI to facilitate the programming of distributed data, and a set of tools. We present initial performance comparisons of two matrix algorithms using MPI-DDL, HPF, and direct MPI implementations.