rex (programming language)

This article is about a functional programming language used primarily by students. For the scripting language created by IBM, see REXX.

rex is a functional programming language developed by Robert M. Keller for use in teaching functional programming to Harvey Mudd College students. The rex interpreter is written in Prolog.

The name "rex" derives from "rewriting expressions", which is the basic principle underlying the implementation: replace an instantiation of an expression on the left-hand side of a rule with the instantiated right-hand side.

Example

The "Hello World" of functional languages is the factorial function. Expressed in rex:

 factorial(0) => 1;
 factorial(X) => X * factorial(X-1);

External links