"Communicating Functional Agents and their Application to Graphical User Interfaces" (PSI '96)

Authors: Thomas Frauenstein, Wolfgang Grieskamp, Peter Pepper, Mario Südholt

Date: June 1996

To be presented at the "2nd International Conference on Perspectives of System Informatics", Novosibirsk; longer version as TR95-19 (revised version: April 1996)

We demonstrate how concepts of communicating agents can be integrated into purely functional languages by an orthogonal extension of the usual I/O monad. These agents communicate via so-called service access points and support programming in the style of client-server architectures. We then show the feasibility of the approach by applying it to the example of graphical user interfaces, which we consider to be a typical instance of reactive systems. For this purpose we develop the concept of so-called gates, which serve as a mediator between user events and the application logic. It turns out that the combination of functional expressiveness and concurrency yields a powerful framework for the realization of reactive systems such as graphical user interfaces. All concepts discussed in this paper are represented in the functional language OPAL and have been implemented in the OPAL programming environment.

Keywords: functional programming, monadic I/O, concurrent programming, monadic choice, graphical user interface, gate

@InProceedings{ fgps96a,
author = "Thomas Frauenstein and Wolfgang Grieskamp and Peter Pepper
and Mario S{\"u}dholt",
title = "Communicating Functional Agents and their Application to
Graphical User Interfaces",
series = "LNCS",
booktitle = "Proceedings of the 2nd International Conference on
Perspectives of System Informatics, Novosibirsk",
year = 1996,
publisher = "Springer Verlag",
month = "Jun",
note = "to appear",
keywords = "functional programming, graphical user interface, Opal,
gate",
annote = "PSI'96"
}

compressed Postscript file (extended abstract, 38 KB)