ghc-tcplugin-api: An API for type-checker plugins.

[ bsd3, ghc, library, plugin, type-system ] [ Propose Tags ]

This library provides a streamlined monadic interface for writing GHC type-checking plugins.

Each stage in a type-checking plugin (initialisation, solving, rewriting, shutdown) has a corresponding monad, preventing operations that are only allowed in some stages to be used in the other stages. Operations that work across multiple stages are overloaded across monads using MTL-like typeclasses.

Some operations, like creating evidence for constraints or creating custom type error messages, are also simplified.

Please refer to the associated GitHub repository for example usage.

Versions [RSS] [faq] 0.2.0.0, 0.3.0.0, 0.3.1.0, 0.4.0.0, 0.4.1.0, 0.5.0.0, 0.5.1.0
Change log changelog.md
Dependencies base (>=4.15.0 && <4.18), ghc (>=9.0 && <9.5), transformers (==0.5.*) [details]
License BSD-3-Clause
Copyright 2021 Sam Derbyshire
Author Sam Derbyshire
Maintainer Sam Derbyshire
Category Type System, GHC, Plugin
Home page https://github.com/sheaf/ghc-tcplugin-api
Uploaded by sheaf at 2021-08-09T20:59:52Z
Distributions NixOS:0.5.1.0
Downloads 308 total (10 in the last 30 days)
Rating 2.0 (votes: 1) [estimated by Bayesian average]
Your Rating
  • λ
  • λ
  • λ
Status Hackage Matrix CI
Docs uploaded by user
Build status unknown [no reports yet]

Modules

[Index] [Quick Jump]

Downloads

Maintainer's Corner

For package maintainers and hackage trustees

Candidates