circuits-0.1.0.0: circuits.cabal
cabal-version: 3.0
name: circuits
version: 0.1.0.0
license: BSD-3-Clause
license-file: LICENSE
copyright: Tony Day (c) 2025
category: control
author: Tony Day
maintainer: tonyday567@gmail.com
homepage: https://github.com/tonyday567/circuits#readme
bug-reports: https://github.com/tonyday567/circuits/issues
synopsis: traced categories and circuits
description:
circuits is a Haskell library that makes feedback first-class, by providing Circuit, the initial traced category over a base category, hyperfunctions via Hyper, and combinators and interpreters. It is experimental, but could be a promising approach to programming circuits that is intensional, ergonomic and performant.
build-type: Simple
tested-with:
ghc ==9.10.1
ghc ==9.12.2
ghc ==9.14.1
extra-doc-files:
ChangeLog.md
readme.md
LICENSE
other/symbols.md
other/axioms.md
source-repository head
type: git
location: https://github.com/tonyday567/circuits
common ghc-options-stanza
ghc-options:
-Wall
-Wno-unused-imports
-Wcompat
-Widentities
-Wincomplete-record-updates
-Wincomplete-uni-patterns
-Wpartial-fields
-Wredundant-constraints
common ghc2024-stanza
if impl(ghc >=9.10)
default-language:
GHC2024
else
default-language:
GHC2021
library
import: ghc-options-stanza
import: ghc2024-stanza
hs-source-dirs: src
exposed-modules:
Circuit
Circuit.Circuit
Circuit.Classes
Circuit.Hyper
Circuit.Monoidal
Circuit.Traced
build-depends:
base >=4.18 && <5,
if impl(ghc)
build-depends: profunctors >=5.0 && <6,