Jump to content

Flow Java

From Wikipedia, the free encyclopedia
This is an old revision of this page, as edited by Tomtheeditor (talk | contribs) at 11:03, 2 June 2012 (Added external links section.). The present address (URL) is a permanent link to this revision, which may differ significantly from the current revision.
Flow Java
Influenced by
Java (programming language), Oz

Flow Java is a conservative extension to the Java programming language. It integrates single assignment variables and logic variables, to Java. Its development was influenced by Mozart/Oz. Conceptually, the extension is similar to adding immutable futures but goes beyond that by incorporating equivalence groups.

single

Syntactically, the extension adds few new tokens [1] [2]...

single Object s;

...which introduces a single assignment variable, and...

s @= new Object();

...which binds s to a new object. Or...

Object o = new Object;
s @= o;

...which binds s to o. This makes s equivalent to o.

References

  1. ^ Colloquium on Implementation of Constraint and Logic Programming Systems (CICLOPS) (2004). "Implementation Strategies for Single Assignment Variables" (PDF).
  2. ^ Proceedings of the Nineteenth International Conference on Logic Programming (2003). "Flow Java: Declarative Concurrency for Java" (PDF).