Properties of a Notation for Combining Functions
- 1 July 1983
- journal article
- Published by Association for Computing Machinery (ACM) in Journal of the ACM
- Vol. 30 (3) , 595-611
- https://doi.org/10.1145/2402.322393
Abstract
A combmator called a pipe is proposed for combining functions in a hnear order. Examples suggest that semantic rules using pipes are easy to read and understand, even for readers with little knowledge of semantics The readability is a consequence ot the operational mtunion associated with pipes The operatJonal v~ew is that each function connected by a pipe is handed a finite sequence of values Each function takes zero or more arguments from the right end of the sequence, replaces the arguments by zero or more results, and passes the sequence to the next function The new idea is that a function may skip over some number of values before picking up its arguments. This approach Is suited to expressing the composition of operations on machine states in a programming language. Pipes allow continuation semantics to be written with direct operators instead of the operator having to worry about its continuation, the second function in a pipe is essentially a continuation of the first m connec- tion is established between functions connected by pipes and more traditional continuation semantics.Keywords
This publication has 4 references indexed in Scilit:
- Deriving Target Code as a Representation of Continuation SemanticsACM Transactions on Programming Languages and Systems, 1982
- More on advice on structuring compilers and proving them correctTheoretical Computer Science, 1981
- The Denotational Description of Programming LanguagesPublished by Springer Nature ,1979
- An abstraction algorithm for combinatory logicThe Journal of Symbolic Logic, 1976