File: README.markdown

package info (click to toggle)
haskell-kan-extensions 5.2.6-1
  • links: PTS, VCS
  • area: main
  • in suites: forky, sid, trixie
  • size: 176 kB
  • sloc: haskell: 1,141; makefile: 4
file content (23 lines) | stat: -rw-r--r-- 1,035 bytes parent folder | download | duplicates (2)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
kan-extensions
==============

[![Hackage](https://img.shields.io/hackage/v/kan-extensions.svg)](https://hackage.haskell.org/package/kan-extensions) [![Build Status](https://github.com/ekmett/kan-extensions/workflows/Haskell-CI/badge.svg)](https://github.com/ekmett/kan-extensions/actions?query=workflow%3AHaskell-CI)

This package provides tools for working with various Kan extensions and Kan lifts in Haskell.

Among the interesting bits included are:

* Right and left Kan extensions (`Ran` and `Lan`)
* Right and left Kan lifts (`Rift` and `Lift`)
* Multiple forms of the Yoneda lemma (`Yoneda`)
* The `Codensity` monad, which can be used to improve the asymptotic complexity of code over free monads (`Codensity`, `Density`)
* A "comonad to monad-transformer transformer" that is a special case of a right Kan lift. (`CoT`, `Co`)

Contact Information
-------------------

Contributions and bug reports are welcome!

Please feel free to contact me through github or on the #haskell IRC channel on irc.freenode.net.

-Edward Kmett