different kinds of program
programming with different carvings of the system
allows clean separation of:
- programming of functionality
- programming of control over emergent entities
book: Book: {direct pages;}
coordinator User, Library {
mutex {checkOut, checkIn};