Flow Java

From Wikipedia, the free encyclopedia

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.

[edit] 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.

[edit] References

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