Concurrent Dataflow Programming Language i.e is designed for building distributed application is JOULE Programming Language. In Joule programming statements are executed based on input whenever possible.
In this language everything happend by sending a messages. It is so concurrent that the order of statements within a block is irrelevant to the operation of the block. It is designed to the concurrent the images.
The given example calculate the factorial of a number:
Reveal the factorial of the supplied number Server Factorial :: number result> If number <= 1 • result> ? 1 else • result> ? number * (Factorial :: number - 1) endIf endServer