AlgebraicJulia / GATlab.jl

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

Generate structs that wrap bare instances #60

Open epatters opened 1 year ago

epatters commented 1 year ago

In Gatlab, we are taking a "bare values" (#29) first approach to instances of theories. However, it is also often convenient to have wrapper structs that capture the instance, enabling the use of multiple dispatch without auxiliary arguments. Such wrapper structs are frequently in Catlab (#57).

Given a bare-values instance, It should be possible to automatically generate a struct and associated methods for that instance.