AlgebraicJulia / AlgebraicJulia/Catlab.jl

Sketches via data migrations

Aberta
#844 0 comentários 0 reações 0 responsáveis Ver no GitHub
acsets enhancement
Linguagem predominante
Julia
Estrelas
724
Forks
73
Métricas de merge de PRs
Nenhum PR com merge em 30d

Descrição

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!

Guia de contribuição

Abrir o guia de contribuição

Avaliação

Esta issue ainda não foi avaliada.

Receba novas issues na sua caixa de entrada

Um resumo curto de issues do GitHub para quem está começando.