Skip to content
  • Ryan Scott's avatar
    Missing Proxy instances, make U1 instance more Proxy-like · 171d95df
    Ryan Scott authored
    This accomplishes three things:
    
    * Adds missing `Alternative`, `MonadPlus`, and `MonadZip` instances for
      `Proxy`
    * Adds a missing `MonadPlus` instance for `U1`
    * Changes several existing `U1` instances to use lazy pattern-matching,
      exactly how `Proxy` does it (in case we ever replace `U1` with
      `Proxy`). This is technically a breaking change (albeit an extremely
      minor one).
    
    Test Plan: ./validate
    
    Reviewers: austin, ekmett, hvr, bgamari
    
    Reviewed By: bgamari
    
    Subscribers: thomie
    
    Differential Revision: https://phabricator.haskell.org/D1962
    
    GHC Trac Issues: #11650
    171d95df