defun-core

Defunctionalization helpers: core definitions

Stackage Nightly 2024-06-03:0.1
Latest on Hackage:0.1

See all snapshots defun-core appears in

BSD-3-Clause licensed and maintained by Oleg Grenrus
This version can be pinned in stack with:defun-core-0.1@sha256:5c5a7e5978f5c51ac5cb590ba5775dc4566321f9b1d68bc9d0fca220dc247bfb,2033

Module documentation for 0.1

The package defun provides defunctionalization helpers, most importantly type family DeFun.Core.App allowing to write higher-order type families. The singletons package also has its own type family Apply, but the machinery is tied to the Sing / singletons.

In particular, the Lam counterpart SLambda is specialized to Sing arguments. The defun's Lam is however fully general, so you can use your own singletons or (importantly) singleton-like arguments.

The package provides few defunctionalized functions, and their term-level variants can be found in defun-bool and defun-sop packages, which use SBool and NP data types from singletons-bool and sop-core packages respectively.

Changes

0.1

  • First version. Released on an unsuspecting world.