The Systolic Processors Language, SPL, is a C-based high-level language for systolic processors. This language and its development environment, are designed especially, but not solely, for both the European Wafer Scale Integration Systolic Array Processor (ASAP: ESPRIT-824B), and the NCR Geometric Arithmetic Parallel Processor (GAPP). SPL enhances the software development capability for programmable systolic processors, and aims at simplifying program writing without decreasing the run-time performance. The contribution of SPL, presented in this paper, is the novel memory allocation for each Processing Element (PE), along with a balanced support of data-types, instruction-set, and a rich library of subroutines embedded in it. Altogether, these features provide an efficient back-end code.