Popularity
5.4
Stable
Activity
0.0
Stable
8
5
1

Monthly Downloads: 27
Programming language: Haskell
License: BSD 3-clause "New" or "Revised" License
Tags: Data     Incremental    
Latest version: v0.3
Add another 'incremental' Package

README

incremental: incremental update interface

Hackage Haskell CI Discord

This package provides a typeclass for incremental updates and diffing.

class Incremental a where
  -- | the difference type
  type Delta a
  -- | @'maybe' a ('patch' a) ('diff' b a) ≡ b@
  patch :: a -> Delta a -> a
  -- | returns 'Nothing' when there is no update
  diff :: a -> a -> Maybe (Delta a)