Logic Programming
Author(s) -
Bart Demoen,
Vladimir Lifschitz
Publication year - 2004
Publication title -
lecture notes in computer science
Language(s) - English
Resource type - Book series
SCImago Journal Rank - 0.249
H-Index - 400
eISSN - 1611-3349
pISSN - 0302-9743
DOI - 10.1007/b99475
Subject(s) - computer science , programming language , logic programming
The memory model of a programming language specifies the interaction between multiple threads and main memory. Basically, the model says for every value obtained by a read operation in a program by what write operation it has been produced. In a multi-threaded unsynchronized program this need not be a deterministic linking from reads to writes. For a multi-platform language such as Java, a memory model is essential to guarantee portability of programs.However, several undesirable properties of the current Java Memory Model (JMM) have been revealed: it is not an easy model to understand by programmers, gives rise to some unwanted behavior and is hard to implement on currenthardware architectures. Because of this, Java Specification Request 133 has called for a new JMM that fixes the current problems.The Concurrent Constraint-based Memory Machines (CCMMs) proposal by Vijay Saraswat is a framework to express and study different declarative memory models. CCMMs are different from other proposals in that it does notexpress a memory model in terms of imperative operational semantics, but in terms of constraints. This should facilitate reasoning about the model and its properties, e.g. the "no thin-air reads" property is structurallyproved.Because of the declarative constraint-based nature of CCMMs we have chosen constraint logic programming (CLP) as the technology for this generative pimplementation. In particular, JmmSolve has been implemented in thelatest version of SWI-Prolog, with its new support for constraint programming: attributed variables and a Constraint Handling Rules (CHR) system.status: publishe
Accelerating Research
Robert Robinson Avenue,
Oxford Science Park, Oxford
OX4 4GP, United Kingdom
Address
John Eccles HouseRobert Robinson Avenue,
Oxford Science Park, Oxford
OX4 4GP, United Kingdom