Objects for Concurrent Constraint Programming
Concurrent constraint programming (ccp) is a recent development in programming language design. Its central contribution is the notion of partial information provided by a shared constraint store. This constraint store serves as a communication medium between concurrent threads of control and as a vehicle for their synchronization.
Objects for Concurrent Constraint Programming analyzes the possibility of supporting object-oriented programming in ccp. Starting from established approaches, the book covers various object models and discusses their properties. Small Oz, a sublanguage of the ccp language Oz, is used as a model language for this analysis. This book presents a general-purpose object system for Small Oz and describes its implementation and expressivity for concurrent computation.
Objects for Concurrent Constraint Programming is written for programming language researchers with an interest in programming language aspects of concurrency, object-oriented programming, or constraint programming. Programming language implementors will benefit from the rigorous treatment of the efficient implementation of Small Oz. Oz programmers will get a first-hand view of the design decisions that lie behind the Oz object system.
What people are saying - Write a review
We haven't found any reviews in the usual places.
Other editions - View all
abstract machine active objects Akinori Yonezawa allows argument arity atom attr attribute Basic Oz bound Cambridge cell Chapter class definition closure Computer Science concurrency model concurrent constraint programming concurrent logic programming Concurrent Object-Oriented Programming concurrent objects concurrent programming constraint programming constraint store data structures declare defined DFKI Oz editor encapsulation end end end end meth example execution fine-grained concurrency first-class messages functional programming Gert Smolka implementation inline caches instances instruction integration introduce Java label language design late binding lexical scoping lock logic variables Meta-Class meta-object protocol method application multiple inheritance mutual exclusion Norman Meyrowitz object application object creation object system object-oriented languages object-oriented programming Objective Caml operations optimization passive objects performance proc procedure application programming languages Prolog reduction pushes refer runtime Section semantics semaphore sequential server Sieve of Eratosthenes Small Oz Smalltalk stack statement statically stream synchronization syntactic syntax techniques thread transaction