Deforestation: transforming programs to eliminate trees
Proceedings of the Second European Symposium on Programming
LFP '90 Proceedings of the 1990 ACM conference on LISP and functional programming
Nonstandard answers of elementary logic programs
Constructing logic programs
Blackboard-based extensions in Prolog
Software—Practice & Experience
Concurrency in Prolog using threads and a shared database
Proceedings of the 1999 international conference on Logic programming
ACM Transactions on Programming Languages and Systems (TOPLAS)
PLILP '90 Proceedings of the 2nd International Workshop on Programming Language Implementation and Logic Programming
Fluents: A Refactoring of Prolog for Uniform Reflection an Interoperation with External Objects
CL '00 Proceedings of the First International Conference on Computational Logic
Solving Optimisation Problems with Catamorphism
Proceedings of the Second International Conference on Mathematics of Program Construction
TOOLS '97 Proceedings of the Tools-23: Technology of Object-Oriented Languages and Systems
High-level networking with mobile code and first order AND-continuations
Theory and Practice of Logic Programming
YARV: yet another RubyVM: innovating the ruby interpreter
OOPSLA '05 Companion to the 20th annual ACM SIGPLAN conference on Object-oriented programming, systems, languages, and applications
Conference record of the 33rd ACM SIGPLAN-SIGACT symposium on Principles of programming languages
Pursuing the Goal of Language Understanding
ICCS '08 Proceedings of the 16th international conference on Conceptual Structures: Knowledge Visualization and Reasoning
Proceedings of the sixth workshop on Declarative aspects of multicore programming
Integrated symbol table, engine and heap memory management in multi-engine prolog
Proceedings of the international symposium on Memory management
Coordination and concurrency in multi-engine prolog
COORDINATION'11 Proceedings of the 13th international conference on Coordination models and languages
Theory and Practice of Logic Programming - Prolog Systems
Agent spaces: a scalable architecture for distributed logic agents
Proceedings of the 2012 ACM Research in Applied Computation Symposium
Hi-index | 0.00 |
We introduce a new programming language construct, Interactors , supporting the agent-oriented view that programming is a dialog between simple, self-contained, autonomous building blocks. We define Interactors as an abstraction of answer generation and refinement in Logic Engines resulting in expressive language extension and metaprogramming patterns. As a first step toward a declarative semantics, we sketch a pure Prolog specification showing that Interactors can be expressed at source level, in a relatively simple and natural way. Interactors extend language constructs like Ruby, Python and C# 's multiple coroutining block returns through yield statements and they can emulate the action of fold operations and monadic constructs in functional languages. Using the Interactor API, we describe at source level, language extensions like dynamic databases and algorithms involving generation of infinite answer streams.