The Infona portal uses cookies, i.e. strings of text saved by a browser on the user's device. The portal can access those files and use them to remember the user's data, such as their chosen settings (screen view, interface language, etc.), or their login data. By using the Infona portal the user accepts automatic saving and using this information for portal operation purposes. More information on the subject can be found in the Privacy Policy and Terms of Service. By closing this window the user confirms that they have read the information on cookie usage, and they accept the privacy policy and the way cookies are used by the portal. You can change the cookie settings in your browser.
Time can be understood as dual to information in extant models of both sequential and concurrent computation. The basis for this duality is phase space, coordinatized by time and information, whose axes are oriented respectively horizontally and vertically. We fit various basic phenomena of computation, and of behavior in general, to the phase space perspective. The extant two-dimensional logics of...
We develop an elementary theory of process structure, a mathematical object which is intended to capture a basic aspect of concurrent processes in a simple way. It has two kinds of presentations, one underlying many extant process theories and another with a more geometric flavour, which are shown to be essentially equivalent. The theory forms a basis of P-algebra, a general semantic structure for...
Petri Nets are one of the most basic formal models for the representations and analysis of concurrent programming. Combining finite automata with non-deterministic Petri net, we introduce a new paradigm of Non-Deterministic Petri Nets with States in order to grasp the non-deterministic cases that can occur within concurrent processes. Linear Logic was introduced by Girard as a resource-sensitive...
This paper presents: (i) an operational semantics, based on a functional framework, for a concurrent and distributed extension of the Scheme programming language, (ii) a coherency protocol taking care of shared mutable objects, (iii) a new coherency protocol to imperatively control hierarchical groups of cooperating tasks. These two protocols do not require broadcast, nor FIFO communications, nor...
This paper describes a new implementation of PaiLisp interpreter PaiLisp/MT on a multi-thread architecture. A P-continuation based PaiLisp interpreter called PaiLisp/FX is implemented on Alliant FX/80 [ItoS93]. PaiLisp/FX executes any PaiLisp programs under a non-preemptive scheduling policy and a static task partitioning method called eager task creation(ETC). PaiLisp/MT can be used as an experimental...
We present a software scheduling scheme for fine-grain threads, typical granurality of which is a single procedure invocation. Such fine-grain threads appear in many language implementations such as Multilisp and concurrent object-oriented languages in which an asynchronous procedure/method invocation is a building block of parallel programs. An implementation is described in terms of our abstract...
We propose a typed, higher-order, concurrent linear logic programming called higher-order ACL, which uniformly integrates a variety of mechanisms for concurrent computation based on asynchronous message passing. Higher-order ACL is based on a proof search paradigm according to the principle, proofs as computations, formulas as processes in linear logic. In higher-order ACL, processes as well as functions,...
We propose a parallel object-oriented language, called OCore. OCore is designed to generate efficient code especially for multi-computers. As a research vehicle for massively parallel computation models, advanced communication models, and optimization techniques, OCore supports the notion of community, meta-level architecture, and a distributed garbage collection mechanism on top of a fundamental...
A programming style based on concurrent objects arises almost inevitably in languages where processes communicate by exchanging data on channels. Using the pict language as an experimental testbed, we introduce a simple object-based programming style and compare three techniques for controlling concurrency between methods in this setting: explicit locking, a standard choice operator, and a more refined...
An earlier paper [21] introduced process calculi with notions of time suited to express concurrent and distributed real-time computations. However, they cannot sufficiently model asynchronous communication in distributed systems. In this paper we present a process calculus with the ability to express asynchronous message passing with location-dependent transmission delay. It allows us to describe...
Finally we discuss on going works. We are now updating a graphical tool for labeled transition systems and more intelligent equivalence checker for infinite processes. Where equivalence between two processes in different calculi are uniformly treated. A process verifier and a process synthesizer are now implementing as well. The verifier verifies process w.r.t. formulae in Hennessy-Milner logic...
The idea of making synchronous operations into first-class values is an important one for supporting abstraction and modularity in concurrent programs. This design principle has been used with great success in the concurrent language CML, but what are the limitations of this approach? This paper explains the rationale for first-class synchronous operations, and discusses their use in CML. It also...
Many tools have been built for gathering and visualizing parallel program performance data, but all too often these tools are (1) tied closely to a specific programming system or computing model and (2) monolithic and hard to customize. We attack problem (1) by using SDF, a self-describing file format that allows a flexible representation of performance information. An SDF file can be processed as...
We have developed a performance debugger for a parallel logic program to improve inherent parallelism of a program. This debugger helps programmers to find unexpected sequentiality visualizing execution history in a virtual environment. We demonstrated an example of performance debugging, and showed how the debugger helps to improve performance of a program on a parallel machine PIE64.
Harmony/2 is an Actor based object-oriented concurrent programming language. Its novel features include two frameworks of first class continuations, namely method continuations and message continuations. The article addresses the technical difficulty in integration of first class continuation facilities and concurrency models (VST problem) and then proposes two frameworks of first class continuation...
Temporal and spatial locality are significant concerns in the design and implementation of any realistic parallel or distributed computing system. Temporal locality is concerned with relations among objects that share similar lifetimes and birth dates; spatial locality is concerned with relations among objects that share information. Exploiting temporal locality can lead to improved memory behavior;...
This paper briefly reviews concurrent logic programming and the I/O mode system designed for the concurrent logic language Flat GHC. The mode system plays fundamental roles both in programming and implementation in almost the same way as type systems do but in different respects. It provides us with the information on how data are generated and consumed and thus the view of “data as resources”. It...
We introduce a method for the specification of reactive asynchronous components with a concurrent access interface and outline its mathematical foundation. The method supports the specification of components that show a complex reactive behavior including timing aspects. Examples are the nonstrict fair merge or the arbiter. The method supports the specification of reactive systems and their modular...
Set the date range to filter the displayed results. You can set a starting date, ending date or both. You can enter the dates manually or choose them from the calendar.