Flow Java

Flow Java

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".
  2. Proceedings of the Nineteenth International Conference on Logic Programming (2003). "Flow Java: Declarative Concurrency for Java".

External links