In this chapter, we will cover:
Managing program complexity with STM
Managing program complexity with agents
Getting better performance with commute
Combining agents and STM
Maintaining consistency with ensure
Introducing safe side effects into the STM
Maintaining data consistency with validators
Monitoring processing with watchers
Debugging concurrent programs with watchers
Recovering from errors in agents
Managing large inputs with sized queues