Where do side effects belong?
Overwatch concentrates side effects on one side of an interaction. A functional core similarly leaves database access and email to its surrounding shell.
Read on through a shared source
Why does testing a business rule need a database? →Separate who qualifies for a reminder from whether the reminder can be delivered.Why do tests pass when the program is wrong? →Gary Bernhardt’s isolated tests and Andrej Karpathy’s neural network both deliver good news when the code is wrong.Can you isolate side effects in the language you already use? →Separate a decision from the code that reads a database or sends mail. The boundary depends on how data flows, and can be introduced within an existing language.
Compare the passages
all major behavioral side effects are localized to that call sidean imperative shell that surrounds the functional core.