Results 1 -
5 of
5
The UniForM Concurrency Toolkit and its Extensions to Concurrent Haskell
, 1997
"... . The UniForM Concurrency Toolkit is a comprehensive library of abstract data types for shared memory and message passing communication that extends Concurrent Haskell with a concept of dynamic types, thread identity, thread local state and selective communication as found in CML. Notable features o ..."
Abstract
-
Cited by 11 (6 self)
- Add to MetaCart
. The UniForM Concurrency Toolkit is a comprehensive library of abstract data types for shared memory and message passing communication that extends Concurrent Haskell with a concept of dynamic types, thread identity, thread local state and selective communication as found in CML. Notable features of the toolkit are its support for reentrant monitors, interactors providing iterative choice and the uniform representation of internal channel events as well as external tool events of the environment in the form of first class synchronous event values. 1 Introduction The UniForM Concurrency ToolKit 1 has primarily been designed to support the development of reactive systems using Concurrent Haskell [PJGF96]. The toolkit provides, partially backed up by a class system, a number of archetypical shared memory abstractions such as semaphores, locks and shared variables. The most important contribution, however, is the concept of reentrant monitors, whose main advantage over MVar's is that r...
Integrating Interactive Tools using Concurrent Haskell and Synchronous Events
- In CLaPF'97: 2nd Latin-American Conference on Functional Programming
, 1997
"... . In this paper we describe how existing interactive tools can be integrated using Concurrent Haskell and synchronous events. The base technology is a higherorder approach to concurrency as in CML extended with a framework for handling external events of the environment. These events are represen ..."
Abstract
-
Cited by 8 (6 self)
- Add to MetaCart
. In this paper we describe how existing interactive tools can be integrated using Concurrent Haskell and synchronous events. The base technology is a higherorder approach to concurrency as in CML extended with a framework for handling external events of the environment. These events are represented as first class synchronous events to achieve a uniform, composable approach to event handling. Adaptors are interposed between the external event sources and the internal set of listening agents to achieve this degree of abstraction. A substantially improved integration framework compared to existing technology (such as for example the combination of Tcl/Tk with expect) is then provided. With this basis it is for example possible to wrap a GUI around the hugs interpreter with very little work required. 1 Introduction There are several ways in which existing tools can be encapsulated to work in an integrated environment. The general solution to interoperability is to use component...
The UniForM WorkBench - a Higher Order Tool Integration Framework
- In International Workshop on Current Trends in Applied Formal Methods
, 1998
"... . The UniForM Workbench is an open ended tool integration framework for developing (formal) Software Development Environments (SDE) from the basis of pre-fabricated off-the-shelf development tools. The integration framework provides support for data, control and presentation integration as well ..."
Abstract
-
Cited by 5 (2 self)
- Add to MetaCart
. The UniForM Workbench is an open ended tool integration framework for developing (formal) Software Development Environments (SDE) from the basis of pre-fabricated off-the-shelf development tools. The integration framework provides support for data, control and presentation integration as well as utilities for wrapping Haskell interfaces around existing development tools. Entire SDE's are then glued together on the basis of these encapsulations using Concurrent Haskell as the integration language, thus allowing integration to be done at a level of abstraction that is very close to the one offered by constructive formal specifications. So far, the integration framework has successfully been used to integrate tools for Haskell program development as well as specification and proof tools for Z specifications. During the 80's there were several attempts to provide environments for synthesizing tightly integrated SDE's from the basis of abstract language specifications. The Sy...
Using Concurrent Haskell to Develop User Interfaces over an Active Repository
- In IFL'97, Implementation of Functional Languages 97
, 1997
"... . Views to the underlying repository of software objects within a Software Development Environment are, by nature, very dynamic. While one user is viewing a version graph, another user may change it by creating or pruning versions. Within the Universal Formal Methods WorkBench (UniForM), which us ..."
Abstract
-
Cited by 3 (0 self)
- Add to MetaCart
. Views to the underlying repository of software objects within a Software Development Environment are, by nature, very dynamic. While one user is viewing a version graph, another user may change it by creating or pruning versions. Within the Universal Formal Methods WorkBench (UniForM), which uses Haskell as its central integration language, we have solved the problem by representing all kind of events as first class composable event values in the style of CML. Such events amount to user interactions from the user interaction manager, change notifications from the active repository, individual tool events or internal channel events. Agents, called interactors, can then be set up to maintain consistency between a view and its underlying repository by coordinating database change notifications and user interactions. 1 Introduction The UniForM WorkBench [KPO+96] is a an integration framework currently under development for setting up integrated Software Development Environmen...
The UniForM Concurrency ToolKit Version 0.2 Reference Manual
, 1998
"... 1 Introduction The UniForM Concurrency ToolKit 1 is a library of abstract data types for shared memory and message passing communication that extends Concurrent Haskell [HPJW92, PJGF96] with a concept of thread identity, re-entrant monitors and selective communication. The message passing model i ..."
Abstract
- Add to MetaCart
1 Introduction The UniForM Concurrency ToolKit 1 is a library of abstract data types for shared memory and message passing communication that extends Concurrent Haskell [HPJW92, PJGF96] with a concept of thread identity, re-entrant monitors and selective communication. The message passing model is very similar to the one of Concurrent ML [Rep92] by representing events in terms of first class composable event values that can be combined using guarded choice and the event-action combinator. However, the toolkit extends CML with infix operators, post-conditions and an implementation of message queues that is hardwired into the protocol for selective communication rather than being simulated using an active buffer thread. This implementation scales better. The UniForM Concurrency ToolKit is implemented on top of the lean basis provided by Concurrent Haskell, namely threads and MVar's. It is currently running under GHC, version 3.0 [Tea98]. A rationale for the UniForM Concurrency ToolKi...

