Closed danidiaz closed 2 years ago
type Constructor (env :: (Type -> Type) -> (Type -> Type) -> Type) (m :: Type -> Type) = (->) (env Identity m) Compose Identity
Compose
It would be better if constructor were simply
type Constructor env = (->) env Compose Identity
That is, Constructor doesn't need to know that the record it receives is parameterizable.
Constructor
With this new definition, fixEnv would have a more perspicuous signature I think.
fixEnv
fixEnv :: (Phased env, Typeable env) => env (Constructor (env Identity m)) m -> env Identity m
Added in 3ad381beb6aff43f825d1c8cef6f208bcf66a98f.
It would be better if constructor were simply
That is,
Constructor
doesn't need to know that the record it receives is parameterizable.With this new definition,
fixEnv
would have a more perspicuous signature I think.