Effect Systems: Another Perfectly Executed Mistake?

2025-05-10

This article expresses skepticism towards the current hype surrounding effect systems from a seasoned software engineer's perspective. The author argues that effect systems, much like exceptions, suffer from the inherent flaw of dynamic scoping, leading to maintainability and understanding challenges. Instead, the author advocates for static scoping approaches like dependency injection, managing resources and dependencies through parameter passing to create more testable and maintainable systems. Drawing from personal experience, the author illustrates how eliminating dynamic scoping improved team productivity.