cvs commit: fptools/libraries/base base.cabal package.conf.in fptools/libraries/base/Control Applicative.hs fptools/libraries/base/Data Foldable.hs IntMap.hs Map.hs Sequence.hs Set.hs Traversable.hs Tree.hs

Ross Paterson ross at soi.city.ac.uk
Tue Nov 29 09:32:00 EST 2005


ross        2005/11/29 06:31:59 PST

  Modified files:
    libraries/base       base.cabal package.conf.in 
    libraries/base/Data  IntMap.hs Map.hs Sequence.hs Set.hs 
                         Tree.hs 
  Added files:
    libraries/base/Control Applicative.hs 
    libraries/base/Data  Foldable.hs Traversable.hs 
  Log:
  As foreshadowed on the libraries list, introduce new classes:
  
  Applicative (formerly known as Idiom): generalizes (but does not replace)
  both Monad and Monoid.
  
  Traversable: containers that can be traversed, executing actions and
  re-assembling the results.  This class generalizes and replaces FunctorM,
  because it requires Applicative instead of Monad.
  
  Foldable: containers that can be folded over a Monoid.  Traversable
  supplies a default definition, but some structures, e.g. Set, are Foldable
  but not Traversable.
  
  Revision  Changes    Path
  1.6       +3 -0      fptools/libraries/base/base.cabal
  1.20      +3 -0      fptools/libraries/base/package.conf.in
  1.19      +6 -0      fptools/libraries/base/Data/IntMap.hs
  1.22      +13 -0     fptools/libraries/base/Data/Map.hs
  1.15      +118 -175  fptools/libraries/base/Data/Sequence.hs
  1.26      +5 -0      fptools/libraries/base/Data/Set.hs
  1.15      +11 -1     fptools/libraries/base/Data/Tree.hs


More information about the Cvs-libraries mailing list