manage side effects. They help to manage unpredictable program parts such as mutating shared state, I/O. In scala most popular effect systems are cats-effect and ZIO. Besides that - effect systems come with runtime for managing concurrency. cats-effect runtime provides thread pool for: computation tasks blocking operations