Supercombinator
A supercombinator is a mathematical expression which is fully bound and self-contained. It may be either a constant or a combinator where all the subexpressions are supercombinators. Supercombinators are used in the implementation of functional languages.
In mathematical terms, a lambda expression S is a supercombinator of arity n if it has no free variables and is of the form λx1.λx2...λxn.E (with n ≥ 0, so that lambdas are not required) such that E itself is not a lambda abstraction and any lambda abstraction in E is again a supercombinator.
See also
References
- S. L. Peyton Jones, The Implementation of Functional Programming Languages. Prentice Hall, 1987.
This article is issued from Wikipedia - version of the Sunday, November 22, 2015. The text is available under the Creative Commons Attribution/Share Alike but additional terms may apply for the media files.