Skip to content

Latest commit

 

History

History
11 lines (8 loc) · 698 Bytes

README.md

File metadata and controls

11 lines (8 loc) · 698 Bytes

This library provides replicated datastore transactions based on Update Capabilities in Haskell, along with Update Capability domains for common datatypes and containers.

Domains include:

  • ConstC, for setting new state values (on any state type).
  • CounterC, for addition and multiplication on numeric state values.
  • EitherC, for modifying and case-switching on sum-type state values.
  • MapC, for inserting, deleting, and modifying entries in a Map state.

Many instances are combinators. For example, MapC String (CounterC Int) defines capabilities for both inserting and deleting entries in a String-to-Int map, and for modifying existing entries using addition and multiplication.