Algorithms through the lens of symbolic pattern matching
symbolica.io
symbolica.io
I really do like how you have smoothly integrated this into Python. Though the symbolic pattern matching is well pretty amazing and make me think about things a little different now. You could probably implement something like this in Julia with it's macros and flexibility in manipulating the AST. I hate Python, but I'm forced to bow to the ecosystem.
You can also use Symbolica in Rust, which also has operator overloading so it will look quite similar. At some point I will also add Julia bindings.
Are you familiar with them? How does Symbolica compare/contrast with them?
https://en.m.wikipedia.org/wiki/OBJ_(programming_language)
(While OBJ is old, there are some newer /recent decendents from its family)
```{mermaid} flowchart LR A -- 1 --- B B -- 2 --- C B -- 8 --- E C -- 3 --- D C -- 9 --- F D -- 10 --- E D -- 4 --- G G -- 5 --- H G -- 6 --- F E -- 9 --- F ```