Alexa VanHattum

Results 24 comments of Alexa VanHattum

Thanks for the feedback, @cfallin! I agree that adding this as an explicit construct at the `sema` level would be nicer. I'll take a stab at that refactor and circle...

@jameysharp I'm still using this code on our fork, but I'll close this PR for now until we are actually at the point of merging back. Thanks!

Also used in a Rust UI test: src/test/ui/functions-closures/closure_to_fn_coercion-expected-types.rs ```rust // run-pass #![allow(unused_variables)] // Ensure that we deduce expected argument types when a `fn()` type is expected (#41755) fn foo(f: fn(Vec)...

FWIW, egg's ["explanation"](https://egraphs-good.github.io/egg/egg/tutorials/_03_explanations/index.html) construct (and [the paper they reference](https://www.cs.upc.edu/~roberto/papers/rta05.pdf)) might be a useful place to look for inspiration.

We also have code to name ISLE rules in the Crocus codebase, I can try to split that off as a separate PR soon.

This would be good to do for human-readability of the kernels Vincent is generating (mostly in removing the statically specified shuffle arrays that are rendered dead).

There are a few different places in the code this could slot in: Currently, `shuffle-truncation-pass.rkt` is where these shuffle indices are created, so we could handle deduplication there. Alternatively, we...

One path forward: starting in `shuffle-truncation-pass.rkt`, build a map of final are already seen, and reference an existing shuffle instead of building a new duplicate one where possible. Then have...

We currently fail on this kernel because the _output_ is a scalar, so a workaround is to have the output be a 1-element array. I can implement scalar outputs, but...

Diospyros essentially inlines everything into the outermost function of what is passed in. So yes, if the calling context is a loop here, it would be more useful to pass...