linear-smc: Build SMC morphisms using linear types
A number of domain specific languages, such as circuits or data-science workflows, are best expressed as diagrams of boxes connected by wires. A faithful abstraction of box-and-wires is Symmetric Monoidal Categories (SMCs) This library allows one to program SMCs with linear functions instead of SMC combinators. This is done without resorting to template haskell or compiler plugins. The rationale and design of this library is provided by the paper "Evaluating Linear Functions to Symmetric Monoidal Categories", by Jean-Philippe Bernardy and Arnaud Spiwack, appearing at Haskell Symposium 2021. This implementation provides additionally: a much improved implementation as well as an interface specifically tailored towards tensor calculus and compact-closed categories in general.
Modules
- Control
- Category
- Control.Category.Constrained
- Control.Category.Linear
- Control.Category.Tensors
- Category
Downloads
- linear-smc-2.2.3.tar.gz [browse] (Cabal source package)
- Package description (as included in the package)
Maintainer's Corner
For package maintainers and hackage trustees
Candidates
Versions [RSS] | 1.0.0, 1.0.1, 1.1.1, 2.0.1, 2.0.2, 2.2.2, 2.2.3 |
---|---|
Dependencies | array (>=0.5 && <666), base (>=4.16.4.0 && <666), constraints (>=0.13.4 && <666) [details] |
License | LGPL-3.0-or-later |
Author | Jean-Philippe Bernardy |
Maintainer | jeanphilippe.bernardy@gmail.com |
Category | Math |
Uploaded | by JeanPhilippeBernardy at 2023-06-20T15:53:15Z |
Distributions | NixOS:2.2.3 |
Downloads | 467 total (33 in the last 30 days) |
Rating | (no votes yet) [estimated by Bayesian average] |
Your Rating | |
Status | Docs not available [build log] All reported builds failed as of 2023-06-20 [all 2 reports] |