Skip to content
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Type Name Latest commit message Commit time
Failed to load latest commit information.


Add "spawn" and "join" constructs to environment-based FUN.  To
facilitate testing, this exercise should extend the "io" exercise of
environment-based FUN.  Also, to see the various non-deterministic
behaviors due to concurrency, you should label several rules, then
kompile with the option --transition, and then krun with option
--search.  See texts/config.xml for details, and recall that several
rules can have the same label.

The following program should have 4 different outputs ("22", "23",
"32", and "33"), although these can be reached through more than four
final configurations:

let x = 1
in (spawn (&x := x + 1; print x); &x := x + 1; print x)

The following program is now fully synchronized, so it should only
have one solution:

let x = 1
in (join spawn (&x := x + 1; print x); &x := x + 1; print x)
You can’t perform that action at this time.