PAL (programming language)
![]() |
RPAL is a functional programming language which is related to the ML programming language. RPAL is an acronym for Right-reference Pedagogic Algorithmic Language. It is a subset of PAL, a language invented by Evans and Wozencraft in the early 1970s at MIT for teaching programming language construction.
This language is used almost exclusively by Dr. Manuel Bermúdez of the Computer Science department at the University of Florida as a means of teaching the construction of programming languages and causing students to experience a paradigm shift as they change from the imperative model to the functional model. Programs in this language can only be made up of a single expression, because the language does not offer a sequencing operator. The other notable operator that the language is missing is an assignment operator. The only way to change a variable is to create a new binding for it. This binding is permanent, and cannot be changed. The same name, however, may be rebound in a nested scope (programming).
External links
Language specification
The following links are the specification of the language as presented by Dr. Bermúdez:
- Introduction
- Lexical Grammar
- Parsing Grammar (String to Tree Transduction Grammar)
- Subtree Transformational Grammar
Interpreter
A working version of Dr. Bermúdez's RPAL interpreter (in the C programming language) is available via email from a student. Dr. Bermúdez will likely respond kindly to requests for the original source code as well, and can be reached through his website.