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

Symbolic Compositional Resource Sharers #136

Closed olynch closed 1 week ago

olynch commented 5 months ago

This PR is for the draft of symbolic, compositional resource sharers, and also includes a new namespacing mechanism via Tries.

jpfairbanks commented 5 months ago

I like the approach here to supporting namespaced variables, but I really think that people will get confused by the name Package not referring to a package of code. Can we use Namespace or Names instead of package?

epatters commented 5 months ago

Agreed on the name. I think it's too confusing.

olynch commented 5 months ago

I'm happy not calling it Package, but I don't like namespace. The point is that Package doesn't just include the names; it also includes an assignment of those names to values. A package has a namespace, which is the set of valid index paths. We could just call it a trie, which is what it is.

codecov[bot] commented 5 months ago

Codecov Report

Attention: Patch coverage is 86.36364% with 84 lines in your changes missing coverage. Please review.

Project coverage is 92.14%. Comparing base (bd3df8e) to head (41a9fc3).

Files Patch % Lines
src/stdlib/models/twosorted.jl 0.00% 27 Missing :warning:
src/syntax/gats/closures.jl 73.77% 16 Missing :warning:
src/syntax/gats/ast.jl 82.08% 12 Missing :warning:
src/util/Dtrys.jl 95.15% 11 Missing :warning:
src/nonstdlib/dynamics/ResourceSharers.jl 94.79% 9 Missing :warning:
src/syntax/gats/algorithms.jl 61.11% 7 Missing :warning:
src/syntax/gats/exprinterop.jl 88.23% 2 Missing :warning:
Additional details and impacted files ```diff @@ Coverage Diff @@ ## main #136 +/- ## ========================================== - Coverage 93.85% 92.14% -1.71% ========================================== Files 38 42 +4 Lines 2229 2802 +573 ========================================== + Hits 2092 2582 +490 - Misses 137 220 +83 ```

:umbrella: View full report in Codecov by Sentry.
:loudspeaker: Have feedback on the report? Share it here.