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.
back
2 comments
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.
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.