fork package:monoidal-functors
Given morphisms
cat a x and
cat a y, construct the
universal map
cat a (x `t` y).
Examples
>>> :t fork @(->) @(,) show not
fork @(->) @(,) show not :: Bool -> (String, Bool)
>>> fork @(->) @(,) show not True
("True",False)
Given the universal map cat a (x t y), construct
morphisms cat a x and cat a y.
Examples