Functional cores make decisions (many code paths), but has every few dependencies (very well isolated)
Compose functional cores (many depencenies), but makes very few decisions (very few code paths).
- Buidling app around concepts of imperative shells and functional cores is like doing OO with Functional computations.