Results 1 -
7 of
7
Resource-Passing Concurrent Programming
- In Proc. TACS 2001, LNCS 2215
"... The use of types to deal with access capabilities of program entities is becoming increasingly popular. ..."
Abstract
-
Cited by 9 (4 self)
- Add to MetaCart
The use of types to deal with access capabilities of program entities is becoming increasingly popular.
Programming in concurrent logic languages
- IEEE Software
, 1995
"... Coordination using a Single-Writer Multiple-Reader ..."
Programming with Logical Links: Design of the LMNtal language (Extended Abstract)
- IN PROC. THIRD ASIAN WORKSHOP ON PROGRAMMING LANGUAGES AND SYSTEMS (APLAS
, 2002
"... We propose LMNtal, a simple language model based on the rewriting of hierarchical graphs that use logical variables to represent links. The two major goals of the model are (i) to unify various computational models based on multiset rewriting and (ii) to serve as the basis of a truly general-pu ..."
Abstract
-
Cited by 4 (2 self)
- Add to MetaCart
We propose LMNtal, a simple language model based on the rewriting of hierarchical graphs that use logical variables to represent links. The two major goals of the model are (i) to unify various computational models based on multiset rewriting and (ii) to serve as the basis of a truly general-purpose language covering various platforms ranging from wide-area to embedded computation. Another important contribution of the model is it greatly facilitates programming with dynamic data structures.
Kima – an Automated Error Correction System for Concurrent Logic Programs
- AADEBUG 2000
, 2000
"... We have implemented Kima, an automated error correction system for concurrent logic programs. Kima corrects near-misses such as wrong variable occurrences in the absence of explicit declarations of program properties. Strong moding/typing and constraint-based analysis are turning to play fundamenta ..."
Abstract
-
Cited by 4 (2 self)
- Add to MetaCart
We have implemented Kima, an automated error correction system for concurrent logic programs. Kima corrects near-misses such as wrong variable occurrences in the absence of explicit declarations of program properties. Strong moding/typing and constraint-based analysis are turning to play fundamental roles in debugging concurrent logic programs as well as in establishing the consistency of communication protocols and data types. Mode/type analysis of Moded Flat GHC is a constraint satisfaction problem with many simple mode/type constraints, and can be solved efficiently. We proposed a simple and efficient technique which, given a non-well-moded/typed program, diagnoses the “reasons” of inconsistency by finding minimal inconsistent subsets of mode/type constraints. Since each constraint keeps track of the symbol occurrence in the program, a minimal subset also tells possible sources of program errors. Kima realizes automated correction by replacing symbol occurrences around the possible sources and recalculating modes and types of the rewritten programs systematically. As long as bugs are near-misses, Kima proposes a rather small number of alternatives that include an intended program. Search space is kept small because the minimal subset confines possible sources of errors in advance. This paper presents the basic algorithm and various optimization techniques implemented in Kima, and then discusses its effectiveness based on quantitative experiments.
LMNtal as a unifying declarative language
- In Schrijvers and Frühwirth (2006), 1–15. Invited talk
, 2006
"... Abstract. LMNtal (pronounced “elemental”) is a simple language model based on hierarchical graph rewriting that uses logical variables to represent connectivity and membranes to represent hierarchy. LMNtal is an outcome of the attempt to unify constraint-based concurrency and Constraint Handling Rul ..."
Abstract
-
Cited by 3 (0 self)
- Add to MetaCart
Abstract. LMNtal (pronounced “elemental”) is a simple language model based on hierarchical graph rewriting that uses logical variables to represent connectivity and membranes to represent hierarchy. LMNtal is an outcome of the attempt to unify constraint-based concurrency and Constraint Handling Rules (CHR), the two notable extensions to concurrent logic programming. LMNtal is intended to be a substrate language of various computational models, especially those addressing concurrency, mobility and multiset rewriting. Another important goal of LMNtal has been to put hierarchical graph rewriting into practice and demonstrate its versatility by designing and implementing a full-fledged, monolithic programming language. In this paper, we demonstrate the practical aspects of LMNtal using a number of examples taken from diverse areas of computer science. Also, we discuss the relationship between LMNtal and CHR, which exhibit both commonalities and differences in various respects. 1
A Pure Meta-Interpreter for Flat GHC, A Concurrent Constraint Language
"... This paper discusses the construction of a meta-interpreter of Flat GHC, one of the simplest and earliest concurrent constraint languages. ..."
Abstract
-
Cited by 1 (0 self)
- Add to MetaCart
This paper discusses the construction of a meta-interpreter of Flat GHC, one of the simplest and earliest concurrent constraint languages.
Automated Programming Framework Using Constraint-Based Static Analysis
, 2002
"... We propose an automated programming framework using a constraintbased, static type system. Our framework infers a correct form of a program from an almost correct but incomplete version of it. This is done with the guideline of the consistency of several program properties imposed by the type sy ..."
Abstract
- Add to MetaCart
We propose an automated programming framework using a constraintbased, static type system. Our framework infers a correct form of a program from an almost correct but incomplete version of it. This is done with the guideline of the consistency of several program properties imposed by the type system. Furthermore, thanks to the simplicity of the type system, the framework is compatible with other automation techniques such as programming by examples, which can also be used for the specification of types. There are

