AlgebraicJulia / AlgebraicJulia/Catlab.jl

Sketches via data migrations

オープン
#844 コメント 0 件 リアクション 0 件 担当者 0 名 GitHub で見る
acsets enhancement
主要言語
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 はまだ評価されていません。

新しい issue をメールで受け取る

初心者向けの GitHub issue を短くまとめたダイジェスト。