Super combinator: Difference between revisions

From HaskellWiki
(HaWiki conversion)
 
m (Categorize)
Line 7: Line 7:
See also [[Constant applicative form]]
See also [[Constant applicative form]]
[[Category:Glossary]]
[[Category:Glossary]]
[[Category:Combinators]]

Revision as of 22:53, 17 May 2007

A super combinator is either a constant, or a Combinator which contains only super combinators as subexpressions.

This definition is bewildering until you realize that a Combinator can have non-Combinator internal subexpressions. A super combinator is "internally pure" (every internal lambda is a combinator) as well as externally.

Any Haskell program can be converted into super combinators using Lambda lifting.

See also Constant applicative form