REFAL (Wikipedia) is a functional programming language designed around the idea of pattern matching. It was designed by Valentin Turchin in 1966 and first implemented in 1968.
There are a few good resources on REFAL for beginners available online:
- The REFAL book by Valentin F. Turchin (inventor of REFAL), in English and Russian.
- The (work in progress) REFAL Cookbook written by me (and maybe in the future, contributors).
These functions are pre-loaded into REFAL and can be used at any time. They are not identical to standard REFAL-5 functions: some changes have been made for simplicity's sake.
Input & Output Functions
<Print e.Expr>Prints the expression to standard output. Returns
<Prout e.Expr>Prints the expression to standard output. Returns an empty expression.
Stack (variable) Manipulation Functions
<Br s.Name '=' e.Value>Pushes the variable
s.Nameonto the stack with the value
<Dg s.Name>"Digs" (pops) the variable
s.Nameoff the stack. Returns the value associated with
<Cp s.Name>Copies the variable
s.Name, returns value associated with
<Dg>this does not remove the variable from the stack.