Description
A binding of the typed-process library for the effectful effect system.
Description
This library provides an alternative Process effect for the effectful ecosystem. While to the Process effect shipped with the effectful library is based on the process package this implementation relies on typed-process instead.
README.md
typed-process-effectful
Description
An alternative Process effect for the effectful ecosystem. While to the Process effect shipped with the effectful library is based on the process package this implementation relies on typed-process instead.
How to use
The functions exposed by the Effectful.Process.Typed module are those from System.Process.Typed with the notable difference that they have a TypedProcess :> es constraint. Use runTypedProcess to handle the effect and eliminate the constraint.
import Effectful.Monad
import Effectful.Process.Typed
main :: IO ()
main = runEff . runTypedProcess $ true
true :: TypedProcess :> es => Eff es ()
true = Effectful.Process.Typed.runProcess_ $ shell "true"