Permalink
Commits on Apr 20, 2018
  1. Use GHC 8.4.2 on Travis

    RyanGlScott committed Apr 20, 2018
Commits on Mar 16, 2018
  1. Improve a few instances (#54)

    treeowl authored and RyanGlScott committed Mar 16, 2018
    * `Eq1` and `Ord1` for `Coyoneda` don't need to map.
    
    * `Adjunction` for `Coyoneda` can use underlying `rightAdjunct` and
      `leftAdjunct`.
Commits on Mar 13, 2018
  1. Merge pull request #52 from treeowl/polyer

    ekmett committed Mar 13, 2018
    Make Codensity kind and levity polymorphic
  2. Make Codensity kind and levity polymorphic

    treeowl committed Mar 13, 2018
    With `TypeInType`, we can get
    
    ```haskell
    Codensity :: (k -> TYPE rep) -> Type -> Type
    ```
    
    I don't know if the polymorphism in `k` is useful; it was
    readily available, so I took it. I actually have an application in
    mind for polymorphism in `rep`. The `primitive` package offers
    
    ```haskell
    indexArrayM :: Monad m => Array a -> Int -> m a
    ```
    
    Now what if I want to recover the underlying functionality of
    `indexArray#` from that? One option would be to use the
    `data Box a = Box a` "lifted identity" monad. Another would be
    to use a custom-written `Cont` monad (a clone of the one from
    `transformers`). But I realized that `Codensity` *almost* works
    off the shelf, if we just add a bit of extra polymorphism.
    With this patch, I can write
    
    ```haskell
    iarr# :: Array a -> Int -> (# a #)
    iarr# ar i = runCodensity (indexArrayM ar i) (\a -> (# a #))
    ```
    
    and get exactly the Core I want
    
    ```
    iarr# :: forall a. Array a -> Int -> (# a #)
    [GblId,
     Arity=2,
     Caf=NoCafRefs,
     Str=<S(S),1*U(U)><S(S),1*U(U)>,
     Unf=Unf{Src=InlineStable, TopLvl=True, Value=True, ConLike=True,
             WorkFree=True, Expandable=True,
             Guidance=ALWAYS_IF(arity=2,unsat_ok=True,boring_ok=False)
             Tmpl= \ (@ a_aetV)
                     (ar_aetE [Occ=Once!] :: Array a_aetV)
                     (i_aetF [Occ=Once!] :: Int) ->
                     case i_aetF of { GHC.Types.I# i#_aeun [Occ=Once] ->
                     case ar_aetE of { Array ds2_aeur [Occ=Once] ->
                     GHC.Prim.indexArray# @ a_aetV ds2_aeur i#_aeun
                     }
                     }}]
    iarr#
      = \ (@ a_aetV) (ar_aetE :: Array a_aetV) (i_aetF :: Int) ->
          case i_aetF of { GHC.Types.I# i#_aeun ->
          case ar_aetE of { Array ds2_aeur ->
          GHC.Prim.indexArray# @ a_aetV ds2_aeur i#_aeun
          }
          }
    ```
Commits on Mar 8, 2018
Commits on Feb 24, 2018
Commits on Feb 15, 2018
  1. Merge pull request #51 from esoeylemez/ertes-codensity

    ekmett committed Feb 15, 2018
    Codensity: Add exception handling helpers
  2. Ignore Nix-related files

    esoeylemez committed Feb 12, 2018
Commits on Feb 12, 2018
  1. Merge pull request #50 from puffnfresh/invariant-day

    ekmett committed Feb 12, 2018
    Add an Invariant version of Day
Commits on Feb 11, 2018
  1. Add an Invariant version of Day

    puffnfresh committed Feb 11, 2018
    Derived by combining the covariant and contravariant versions of Day. Using this
    as a tensor gives us a combination of Applicative and Divisible, which seems
    useful for things like derivation of function pairs like parsers/printers.
Commits on Jan 28, 2018
  1. Version 5.1

    RyanGlScott committed Jan 28, 2018
Commits on Jan 25, 2018
  1. Fix broken URL (#49)

    iblech authored and RyanGlScott committed Jan 25, 2018
Commits on Jan 11, 2018
  1. Placate `cabal check`

    RyanGlScott committed Jan 11, 2018
Commits on Jan 5, 2018
  1. Merge branch 'lifted-classes' of https://github.com/phadej/kan-extens…

    RyanGlScott committed Jan 5, 2018
    …ions into phadej-lifted-classes
    
    Conflicts:
    	CHANGELOG.markdown
Commits on Nov 22, 2017
  1. Use GHC 8.2.2 on Travis

    RyanGlScott committed Nov 22, 2017
Commits on Oct 9, 2017
  1. Merge pull request #44 from hawnzug/master

    ekmett committed Oct 9, 2017
    Maybe two spelling mistakes in the doc of Ran
  2. Doc typo fixes

    hawnzug committed Oct 9, 2017
Commits on Sep 1, 2017
Commits on Jul 30, 2017
  1. Merge pull request #40 from Icelandjack/polykinds

    ekmett committed Jul 30, 2017
    Made Density, Codensity, Kan and Lan polykinded.
Commits on Jun 13, 2017
  1. add an operation connecting the cayley construction from profunctors …

    ekmett committed Jun 13, 2017
    …to day convolution from this package (based on a proposition by pastro and street)
  2. remove lies

    ekmett committed Jun 13, 2017
Commits on Jun 8, 2017
  1. Fix paper link (#39)

    osa1 authored and RyanGlScott committed Jun 8, 2017
Commits on May 24, 2017
  1. Merge pull request #38 from hvr/pr/wcompat

    ekmett committed May 24, 2017
    Make eagerly forward-`-Wcompat` clean
Commits on May 8, 2017
  1. Add hoistCoyoneda

    glguy committed May 8, 2017
Commits on Apr 21, 2017
Commits on Apr 19, 2017
  1. Travis GHC 8.2.1 build

    RyanGlScott committed Apr 19, 2017
Commits on Dec 20, 2016
  1. Implement collect directly for Day (#30)

    treeowl authored and RyanGlScott committed Dec 20, 2016
    Apply early! Beat the `fmap`!
Commits on Nov 30, 2016
Commits on Oct 19, 2016