packages feed

data-aviary 0.1.0 → 0.2.0

raw patch · 2 files changed

+36/−13 lines, 2 filesPVP ok

version bump matches the API change (PVP)

API changes (from Hackage documentation)

Files

data-aviary.cabal view
@@ -1,5 +1,5 @@ name:             data-aviary-version:          0.1.0+version:          0.2.0 license:          BSD3 license-file:     LICENSE copyright:        Stephen Tetley <stephen.tetley@gmail.com>@@ -8,13 +8,17 @@ category:         Combinators synopsis:         Combinator birds. description:-  A catalogue for the combinator birds (Data.Aviary.Birds) - this +  A catalogue of the combinator birds (Data.Aviary.Birds) - this    module is intended more for illustration than utility.   .   Plus a smaller set (Data.Avery) intended to be useful,    collecting combinators that have already /escaped/ (published -  elsewhere) but aren\'t in Data.Function and other favourites.+  elsewhere) but aren\'t in Data.Function, along with some other +  favourites.   .+  Changelog:+  . +  0.2.0 added Haddock docs for @(\#\#)@.  build-type:         Simple stability:          highly unstable
src/Data/Aviary.hs view
@@ -50,14 +50,20 @@ -- | T combinator - thrush -- -- Reverse application - the T combinator.--- Found in Peter Thiemann's Wash and the paper 'Client-Side Web +-- Found in Peter Thiemann's WASH and the paper 'Client-Side Web  -- Scripting in Haskell' - Erik Meijer, Daan Leijen & James Hook.+-- ( # ) :: a -> (a -> b) -> b  x # f = f x   infixl 8 ## +-- | Q Combinator - the queer bitd.+-- +-- Reverse composition - found in Peter Thiemann's WASH.+-- You might perfer to use (<<<) from Control.Categoty.+-- ( ## ) :: (a -> b) -> (b -> c) -> a -> c f ## g = \x -> g (f x)  @@ -76,35 +82,48 @@ -- -- > (a1 -> a2 -> r) -> m a1 -> m a2 -> m r where m = ((->) a) -- --- Taste suggests you may prefer liftA2.+-- Taste suggests you may prefer liftA2 especially as @bigphi@ is+-- not a great name (calling it s\' would take a very useful +-- variable name). -- bigphi :: (b -> c -> d) -> (a -> b) -> (a -> c) -> a -> d bigphi f g h x = f (g x) (h x)  -- | A variant of the @D2@ or dovekie combinator - the argument--- order has been changed to be more satisfying for Haskellers.+-- order has been changed to be more satisfying for Haskellers: ----- @appro@ is similar to the function @prod@ from the Pair --- calculus, but @appro@ applies the first argument --- @ f :: (c -> d -> e) @ to the two intermediate results.--- @prod@ always forms a pair from the intermediate results.+-- > (appro comb f g) x y --+-- > (f x) `comb` (g y)+--  -- @on@ from Data.Function is similar but less general, where  -- the two intermediate results are formed by applying the same --- function to the supplied arguments.+-- function to the supplied arguments: --+-- > on = (appro comb f f)+-- appro :: (c -> d -> e) -> (a -> c) -> (b -> d) -> a -> b -> e appro f g h x y = f (g x) (h y)   ++++ -------------------------------------------------------------------------------- -- Specs - blackbird, bunting, ...  -- Alleviate your composing-sectioning mania with specs!--- The name becomes a pun on spectacles (glasses, specs), --- once you use infix directives @`oo`@.+-- -- E.g.: -- (abs .) . (*) ==> abs `oo` (*)+--+-- The family name /specs/ (glasses, specs, lunettes) is a +-- visual pun when infix directives @`oo`@ are included. The +-- @o@\'s of individual combinators are a fraternal nod to +-- Clean and ML who use @o@ as function composition. Naturally+-- we don\'t defined @o@ here and waste a good variable on a +-- redundant combinator.  -- | Compose an arity 1 function with an arity 2 function. -- B1 - blackbird