The ability to undertake concurrent computation is essential for a modern programming language. Whiley adopts the [[Actor model]], where “Actors” — or processes — communicate by message passing, rather than through shared state. A critical requirement of the Actor Model is that an actor’s state is completely isolated from any other. Furthermore, actors can only process one message at a time and, thus, [[Synchronization (computer science)|synchronisation]] is implicit. This leads to a simple model of concurrency that is well-suited to a range of parallel and distributed architectures.
The following sections introduce the main constructs for managing concurrent computation in Whiley: