[Haskell-cafe] Shrinking the Prelude: The "categorical" approach