con-kitty / categorifier

Interpret Haskell programs into any cartesian closed category.
BSD 3-Clause "New" or "Revised" License
57 stars 2 forks source link
category-theory haskell plugin

Categorifier

Build status built with garnix Packaging status latest packaged version(s)

Defining novel interpretations of Haskell programs

You probably want to look at the plugin README.

Building

A Nix flake is provided, so if you are familiar with Nix, that’s the most reliable way to build the project.

If you‘re not using Nix, the cabal.project file requires at least Cabal 3.8, but the individual projects should work with older versions.

Contributing

There are compatible direnv and Nix environments in the repository to make it easy to build, test, etc. everything with consistent versions to help replicate issues.

This repository is all formatted using Ormolu. Currently CI runs Ormolu 0.4.0.0, which can be installed by cabal install ormolu-0.4.0.0. See the usage notes for how to best integrate it with your workflow. But don't let Ormolu get in the way of contributing - CI will catch the formatting, and we can help clean up anything.