Efektajärjestelmien
Effektajärjestelmien, often translated as "effect systems" in English, refers to a paradigm in programming language design that allows for the explicit declaration and management of side effects. Traditional programming languages often treat side effects, such as modifying global variables, performing I/O, or throwing exceptions, as implicit or incidental behaviors. Effect systems, conversely, aim to make these effects explicit in the type system.
The core idea is that a function's type should not only describe the types of its inputs
Effect systems can also improve composability. By knowing the effects a function produces, it becomes easier