1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20
#version 100 import std.reo; import std.buf; primitive main(in a, out b) { while (true) { synchronous { if (fires(a) && fires(b)) { msg x = get(a); short y = readShort(x, 0); y++; writeShort(x, 0, y); put(b, x); } else { assert !fires(a) && !fires(b); } } } }