Like a giant monad, Linux performs (albeit cheesy) Kleisli composition by moving binary streams or strings (e.g. least common denominator) through a persistent topology (the “filesystem”) between functions —always called main() — using two flows (stdout and stderr). We get an interactive shell (Huet zipper) that looks suspiciously like an FP top-level command line.