FP2
Functional Parallel Programming.
A term rewriting language which unifies
functional programming and parallel programming.
Every object is a term and every computation is done by rewriting.
Rewrite rules are used to specify
algebraic data types and parallel processes.
["Term Rewriting as a Basis for the Design of a Functional and Parallel Programming Language.
A Case Study: The Language FP2", Ph. Jorrand in Fundamentals of Artificial Intelligence, LNCS 258, Springer 1986, pp. 221-276].