Abstract : In several application domains (detection systems, telecommunications, video processing, etc.) the applications deal with multidimensional data. These applications are usually embedded and subjected to real-time and resource constraints. The challenge is thus to provide efficient implementations on parallel and distributed architectures. Array-OL has been designed specifically to handle this kind of intensive multidimensional signal processing applications. In this paper we present the language and its formal semantics. A subset of Array-OL, Static Array-OL, is defined that ensures the existence of a static scheduling. Finally, we discuss how to map and schedule an Array-OL application on a parallel and distributed architecture.