AlgebraicJulia / AlgebraicJulia/Catlab.jl
Sketches via data migrations
- 主要語言
- Julia
- 星號
- 724
- 分支
- 73
- PR 合併指標
- 30 天內沒有已合併 PR
描述
We should be able to upgrade `@present`, or maybe write a new `@present_schema` to let you write something like
```julia
Par = @present_schema begin
X,Y::Ob
f,g::X -> Y
XY = @product X Y
E = @join x::X; y::Y; ff:(x->y)::f; gg:(x->y)::g
end
```
which will actually generate two schemas, `Par` and, say, `Par_full`, where `Par` only has `X,Y,f,g` while `Par_full` also has `XY` and `E` together with the components of their limit cones, as well constructing a `DataMigration` from `Par` to `Par_full` that's the identity on `Par` and literally sends `XY` to `@product X Y` and so on. Then when the user instantiates `Par`, Catlab does the instantiation *and* the migration to `Par_full`, and voila, you've got sketch-schemas!
貢獻指南
評估
這個 Issue 還沒有評估資料。