Matt Keeter
Matt Keeter
I think it should be an "interval contains zero" check. If any pair of values in the input intervals could produce `NaN`, then the output interval must be `(NaN, NaN)`;...
I'm not sure what you mean by "domain", but you can think of it as modeling ``` enum Interval { Valid { lower: NonNanF32, upper: NonNanF32 }, Invalid, } ```...
I would also be interested in this functionality, since I want to embed [Rhai](https://rhai.rs/) scripts into an `egui`-based application. I'll investigate and possibly open a PR depending on difficulty.
I've implemented this in #7084 , and backported to 0.31.1 [here](https://github.com/mkeeter/egui/tree/custom-syntect-settings-0.31.1-backport). You can test it out with something like this: ```toml [dependencies] egui_extras = { git = "https://github.com/mkeeter/egui", features =...
Generating simplified expressions is definitely expensive (especially for the JIT); see `RenderHints::simplify_tree_during_meshing` as one strategy for doing it less often. As for the reference-counting strategy, I think it's an interesting...
Evaluation already recycles `mmap` regions, so I don't see that anywhere in the flamegraph. The main source of extra delay for the JIT backend is `sys_icache_invalidate` (on macOS); not sure...
Would short-circuiting `Add` and `Mul` opcodes work to simplify this kind of summation? e.g. something like - `SpecialAdd` performs addition, and could be simplified if either side was 0 -...
Can you run `Studio.exe` from the command line, to capture any debug messages that may be printed?
As a quick example, here's code which would panic with the current behavior, but would be UB (dereferencing a null pointer) with non-poisoning mutexes: ```rust use std::sync::Mutex; /// The mutex...
I think you're using it correctly; robust meshing is just a **very hard** problem! The number of triangles doesn't surprise me; simplification happens in an octree, so it's totally possible...