If you have a function that deals with lists, then it is no longer a real combinator, since it needs to use list functions. A “real” combinator is one that does not actually use any free identifiers, not even consetc. (But the term may someday be used more freely).
source
share