LUCID: The data flow programming language
William W. Wadge, Edward A. Ashcroft · 1985
Lucid is a functional language, but one which supports variables, i.e. values which change with time. Lucid programmers can therefore use iteration (repetition) as well as recursion. The statements of a Lucid program are equations which can be thought of as defining a network of processors and communication lines. Lucid's dataflow approach to programming has more in common with that of the UNIX (TM) shell, with its filters and pipelines, than with the imperative, one-step-at-a-time approach of a conventional language like C or Pascal.