focus: A general abstraction for manipulating elements of container data structures

[ containers, data, library, mit ] [ Propose Tags ]

An API for construction of free-form strategies of access and manipulation of elements of arbitrary data structures. It allows to implement efficient composite patterns, e.g., a simultaneous update and lookup of an element, and even more complex things.

Strategies are meant to be interpreted by the host data structure libraries. Thus they allow to implement all access and modification patterns of a data structure with just a single function, which interprets strategies.

This library provides pure and monadic interfaces, so it supports both immutable and mutable data structures.

Modules

[Index]

Downloads

Note: This package has metadata revisions in the cabal description newer than included in the tarball. To unpack the package including the revisions, use 'cabal get'.

Maintainer's Corner

Package maintainers

For package maintainers and hackage trustees

Candidates

  • No Candidates
Versions [RSS] 0.1.0, 0.1.1, 0.1.2, 0.1.3, 0.1.4, 0.1.5, 0.1.5.1, 0.1.5.2, 1, 1.0.1, 1.0.1.1, 1.0.1.2, 1.0.1.3, 1.0.1.4, 1.0.2, 1.0.3, 1.0.3.1, 1.0.3.2 (info)
Dependencies base (>=4.6 && <4.8) [details]
License MIT
Copyright (c) 2014, Nikita Volkov
Author Nikita Volkov <nikita.y.volkov@mail.ru>
Maintainer Nikita Volkov <nikita.y.volkov@mail.ru>
Revised Revision 1 made by phadej at 2016-05-23T08:54:29Z
Category Containers, Data
Home page https://github.com/nikita-volkov/focus
Bug tracker https://github.com/nikita-volkov/focus/issues
Source repo head: git clone git://github.com/nikita-volkov/focus.git
Uploaded by NikitaVolkov at 2014-10-21T16:46:17Z
Distributions Arch:1.0.3.2, LTSHaskell:1.0.3.2, NixOS:1.0.3.2, Stackage:1.0.3.2
Reverse Dependencies 17 direct, 121 indirect [details]
Downloads 26569 total (222 in the last 30 days)
Rating 2.0 (votes: 1) [estimated by Bayesian average]
Your Rating
  • λ
  • λ
  • λ
Status Docs uploaded by user
Build status unknown [no reports yet]