pkgs:
with builtins;
with pkgs.lib;
let
  util = import ./. pkgs;
  inherit (util.op) not pipeIn;

  compose = f0: f1: flip pipe [f1 f0];
in {
  inherit compose;

  apply = foldl pipeIn;

  eval = apply id;

  notP = compose not;
}