I have not looked at the implementation but isn't the idea to write a Lispy language in Rust (in other words, Mathematica the language) and then write the differentiation and other routines in that.
I have not looked at the implementation but isn't the idea to write a Lispy language in Rust (in other words, Mathematica the language) and then write the differentiation and other routines in that.
They had to patch the Rust compiler to natively support AutoDiff.
Contrast with Julia where it can be a regular Julia library,
I mean you can do autodiff with a regular library in Rust. Enzyme is just a very specific type of autodiff which transforms after some compilation has taken place.
I don't know that you can match something speedwise like a JIT or Expression Templates in rust though without using something like Enzyme.
No, they're implementing all functions, all matching etc. in Rust.
Will that be faster? Seems like it should be a lot faster.
I see.