OBJ
Joseph Goguen 1976.
A family of declarative "ultra high level" languages.
Abstract types, generic modules, subsorts (subtypes with
multiple inheritance), pattern-matching modulo equations, E-strategies (user control over laziness), module expressions (for combining modules), theories and views (for describing module interfaces).
For the massively parallel RRM (Rewrite Rule Machine).
["Higher-Order Functions Considered Unnecessary for Higher-Order Programming", J.A. Goguen, in Research Topics in Functional Programming].