Abstract
How can we integrate interaction into a purely declarative language? This tutorial describes a solution to this problem based on a monad. The solution has been implemented in the functional language Haskell and the declarative language Escher. Comparisons are given with other approaches to interaction based on synchronous streams, continuations, linear logic, and side effects.
Publisher
Association for Computing Machinery (ACM)
Subject
General Computer Science,Theoretical Computer Science
Reference62 articles.
1. Computational interpretations of linear logic
2. The ins and outs of Clean I/O;ACHTEN P.;J. Funct. Program.,1995
3. BARR M. AND WELLS C. 1985. Toposes Triples and Theories. Springer-Verlag. BARR M. AND WELLS C. 1985. Toposes Triples and Theories. Springer-Verlag.
4. BIRD R. AND WADLER P. 1987. Introduction to Functional Programming. Prentice Hall Englewood Cliffs NJ. BIRD R. AND WADLER P. 1987. Introduction to Functional Programming. Prentice Hall Englewood Cliffs NJ.
Cited by
70 articles.
订阅此论文施引文献
订阅此论文施引文献,注册后可以免费订阅5篇论文的施引文献,订阅后可以查看论文全部施引文献
1. Improving Logic Programs by Adding Functions;Lecture Notes in Computer Science;2024
2. A Monadic Implementation of Functional Logic Programs;Proceedings of the 24th International Symposium on Principles and Practice of Declarative Programming;2022-09-20
3. From Logic to Functional Logic Programs;Theory and Practice of Logic Programming;2022-07
4. From Non-determinism to Goroutines: A Fair Implementation of Curry in Go;23rd International Symposium on Principles and Practice of Declarative Programming;2021-09-06
5. Lightweight Declarative Server-Side Web Programming;Practical Aspects of Declarative Languages;2021