Metadata revisions for fin-0

Package maintainers and Hackage trustees are allowed to edit certain bits of package metadata after a release, without uploading a new tarball. Note that the tarball itself is never changed, just the metadata that is stored separately. For more information about metadata revisions, please refer to the Hackage Metadata Revisions FAQ.

No. Time User Changes
-r2 Wed Nov 29 19:24:47 UTC 2017 phadej
  • Changed synopsis from

    Nat and Fin
    to
    Nat and Fin: peano naturals and finite numbers

  • Changed description from

    This package provides two simple types, and some tools to work with them.
    Also on type level as @DataKinds@.
    
    @
    data Nat = Z | S Nat
    data Fin (n :: Nat) where
    Z :: Fin ('Nat.S n)
    S :: Fin n -> Fin ('Nat.S n)
    @
    
    The "Data.Fin.Enum" module let's work generically with enumerations.
    
    Differences to other packages:
    
    * [type-natural](http://hackage.haskell.org/package/type-natural) depends
    on @singletons@ package. `fin` will try to stay light on the dependencies,
    and support as many GHC versions as practical.
    
    * [peano](http://hackage.haskell.org/package/peano) is very incomplete
    
    * [nat](http://hackage.haskell.org/package/nat) as well.
    
    * [PeanoWitnesses](https://hackage.haskell.org/package/PeanoWitnesses)
    doesn't use @DataKinds@.
    
    * [type-combinators](http://hackage.haskell.org/package/type-combinators)
    is big package too.
    to
    This package provides two simple types, and some tools to work with them.
    Also on type level as @DataKinds@.
    
    @
    \-- Peano naturals
    data Nat = Z | S Nat
    
    \-- Finite naturals
    data Fin (n :: Nat) where
    \    Z :: Fin ('S n)
    \    S :: Fin n -> Fin ('Nat.S n)
    @
    
    [vec](https://hackage.haskell.org/package/vec) implements length-indexed
    (sized) lists using this package for indexes.
    
    The "Data.Fin.Enum" module let's work generically with enumerations.
    
    See [Hasochism: the pleasure and pain of dependently typed haskell programming](https://doi.org/10.1145/2503778.2503786)
    by Sam Lindley and Conor McBride for answers to /how/ and /why/.
    Read [APLicative Programming with Naperian Functors](https://doi.org/10.1007/978-3-662-54434-1_21)
    by Jeremy Gibbons for (not so) different ones.
    
    === Similar packages
    
    * [finite-typelits](https://hackage.haskell.org/package/finite-typelits)
    . Is a great package, but uses @GHC.TypeLits@.
    
    * [type-natural](https://hackage.haskell.org/package/type-natural) depends
    on @singletons@ package. @fin@ will try to stay light on the dependencies,
    and support as many GHC versions as practical.
    
    * [peano](https://hackage.haskell.org/package/peano) is very incomplete
    
    * [nat](https://hackage.haskell.org/package/nat) as well.
    
    * [PeanoWitnesses](https://hackage.haskell.org/package/PeanoWitnesses)
    doesn't use @DataKinds@.
    
    * [type-combinators](https://hackage.haskell.org/package/type-combinators)
    is big package too.

-r1 Tue Nov 21 12:21:42 UTC 2017 phadej
  • Changed description from

    This package provides two simple types, and some tools to work with them.
    Also on type level as @DataKinds@.
    
    @
    data Nat = Z | S Nat
    data Fin (n :: Nat) where
    Z :: Fin n
    S :: Fin n -> Fin ('Nat.S n)
    @
    
    The "Data.Fin.Enum" module let's work generically with enumerations.
    
    Differences to other packages:
    
    * [type-natural](http://hackage.haskell.org/package/type-natural) depends
    on @singletons@ package. `fin` will try to stay light on the dependencies,
    and support as many GHC versions as practical.
    
    * [peano](http://hackage.haskell.org/package/peano) is very incomplete
    
    * [nat](http://hackage.haskell.org/package/nat) as well.
    
    * [PeanoWitnesses](https://hackage.haskell.org/package/PeanoWitnesses)
    doesn't use @DataKinds@.
    
    * [type-combinators](http://hackage.haskell.org/package/type-combinators)
    is big package too.
    to
    This package provides two simple types, and some tools to work with them.
    Also on type level as @DataKinds@.
    
    @
    data Nat = Z | S Nat
    data Fin (n :: Nat) where
    Z :: Fin ('Nat.S n)
    S :: Fin n -> Fin ('Nat.S n)
    @
    
    The "Data.Fin.Enum" module let's work generically with enumerations.
    
    Differences to other packages:
    
    * [type-natural](http://hackage.haskell.org/package/type-natural) depends
    on @singletons@ package. `fin` will try to stay light on the dependencies,
    and support as many GHC versions as practical.
    
    * [peano](http://hackage.haskell.org/package/peano) is very incomplete
    
    * [nat](http://hackage.haskell.org/package/nat) as well.
    
    * [PeanoWitnesses](https://hackage.haskell.org/package/PeanoWitnesses)
    doesn't use @DataKinds@.
    
    * [type-combinators](http://hackage.haskell.org/package/type-combinators)
    is big package too.

  • Changed the library component's library dependency on 'semigroups' from

    >=0.18.3 && <0.18.4
    to
    >=0.18.3 && <0.19

-r0 Tue Nov 21 12:17:41 UTC 2017 phadej