A functional language designed for programming BSP algorithms in direct mode. Its aim is to combine the generality of languages like V or NESL with the predictable performance of direct-mode BSP algorithms.
This paper is concerned with the possibility of writing so-called direct-mode parallel BSP algorithms as purely functional programs. A parallel algorithm is said to be in direct mode when its physical process structure is made explicit. This makes it less convenient to express but more efficient in many cases . On the other hand, existing functional parallel languages like NESL  support nested parallelism where physical process structure is implicit at the expense of efficiency  and/or predictability of performance. We propose as a solution BSML, a purely1 functional programming language for direct-mode BSP  algorithms.