The little LISPer
Proving Theorems about LISP Functions
Journal of the ACM (JACM)
The denotational semantics of programming languages
Communications of the ACM
Communications of the ACM
Monitors: an operating system structuring concept
Communications of the ACM
GEDANKEN—a simple typeless language based on the principle of completeness and the reference concept
Communications of the ACM
Correspondence between ALGOL 60 and Church's Lambda-notation: part I
Communications of the ACM
The next 700 programming languages
Communications of the ACM
Recursive functions of symbolic expressions and their computation by machine, Part I
Communications of the ACM
Programming language semantics and closed applicative languages
POPL '73 Proceedings of the 1st annual ACM SIGACT-SIGPLAN symposium on Principles of programming languages
Recursive programming through table look-up
SYMSAC '76 Proceedings of the third ACM symposium on Symbolic and algebraic computation
POPL '76 Proceedings of the 3rd ACM SIGACT-SIGPLAN symposium on Principles on programming languages
LISP 1.5 Programmer's Manual
Data-Driven and Demand-Driven Computer Architecture
ACM Computing Surveys (CSUR)
LFP '84 Proceedings of the 1984 ACM Symposium on LISP and functional programming
Dialogues: A basis for constructing programming environments
SLIPE '85 Proceedings of the ACM SIGPLAN 85 symposium on Language issues in programming environments
Operational specification languages
ACM '83 Proceedings of the 1983 annual conference on Computers : Extending the human resource
Aspects of Applicative Programming for Parallel Processing
IEEE Transactions on Computers
Hi-index | 0.00 |
This paper develops the implications of recent results in semantics for applicative programming. Applying suspended evaluation (call-by-need) to the arguments of file construction functions results in an implicit synchronization of computation and output. The programmer need not participate in the determination of the pace and the extent of the evaluation of his program. Problems concerning multiple input and multiple output files are considered: typical behavior is illustrated with an example of a rudimentary text editor written applicatively. As shown in the trace of this program, the driver of the program is the sequential output device(s). Implications of applicative languages for I/O bound operating systems are briefly considered.