The Prim module has sub modules that are not imported by default. Within these modules, Prim defines a few more things for type-level programming. These type classes' instances are derived by the compiler
In the below table, "ValueTypeN" was abbreviated to VTN
|Value-Level Type||Value-Level Value(s)||Kind Name|
(Corresponding Type‑Level Type)
|List ( keyN :: VTN, ... )|
(analogy; not real type)
- purescript-trout - Type-Level Routing. Used in purescript-hypertrout.
- purescript-kushikatsu - Simple type-level routing
- purescript-chirashi - An easy way to work with Errors by inserting a Variant, and reading it out later.
- Type-Safe Versioned APIs. This idea could be combined with the onion architecture and