Description
Runs external processes from Haskell with stronger typing around input, output, and error streams. This helps programs describe how each stream is handled instead of relying on loose shell-style behavior.
It is useful for build tools, automation, wrappers, test helpers, and applications that coordinate command-line programs. Developers should pass arguments as structured values and avoid building shell commands from untrusted text.