AlgebraicJulia / GATlab.jl

GATlab: a computer algebra system based on generalized algebraic theories (GATs)
https://algebraicjulia.github.io/GATlab.jl/
MIT License
21 stars 2 forks source link

AlgTerms should be polymorphic in the type of variables #137

Closed olynch closed 5 months ago

olynch commented 5 months ago

Right now, the base case for AlgTerm is an Ident. We should support different choices of base case, so that we can have contexts built in different ways. For instance, we might want a linear context of just Ints, or we might want a context built via a Package (see https://github.com/AlgebraicJulia/GATlab.jl/pull/136).

Note however that these will just be contexts for the variables; the term constructors will remain Idents.

olynch commented 5 months ago

This would overcomplicate the design; we can instead incorporate Packages via the existing AlgDot constructor.