Alessandro Cheli

Results 206 comments of Alessandro Cheli

You can wrap it in a custom struct, without implementing any `TermInterface` method. It should treat it as a different constant

> Just an idea: > My assumption as to why this happens is because in Julia `false == 0`. I do not know where exactly in MT during the saturation...

Ah, I see, the method for ` ::Union{DataType, Function}` may not cover `::Type{Main.dcac.Plus}`

> Ah, I see, the method for ` ::Union{DataType, Function}` may not cover `::Type{Main.dcac.Plus}` ``` julia> Plus isa DataType false ```

Did you make the types matchable by satisfying TermInterface?

Nvm, verified. I just pushed a bugfix. You should use TermInterface.jl if you define custom AST types. See `test/tutorials/custom_types.jl`

Let me know if it works for your use case :)

Metadata is not yet agreed on on 3.0 and on e-graphs. It works on classical rewriting though. The issue is that the fix I've pushed only works on Julia 1.10...

> sorry, I missed your reply on this. Is there an inherent reason for it not working on 1.11? If you pull latest 3.0 branch the original example you sent...

@keorn @jtrakk @iamed2 I think a pipe-like `|>` syntax would be really nice. I'm just using ⇶ (really ugly) as an example operator because we don't have any "cool" extra...