I suspect that the MIR idea could (should?) become a pretty common concept for a large number of LLVM-based languages. the LLVM IR is very low-level, and in most modern languages there's a big gap between the programmer-friendly features they have and "the bare essentials that still capture the same ideas".
I also suspect that the act of designing a MIR for a language is a fun one, should be pretty damn enlightening. It really forces you to focus on what's "core" about the language.
In my own, limited, experience with language design and compilers, I've found that doing something like a MIR greatly simplifies other parts. Code written in MIR (in my case, it didn't even have a concrete syntax, just an abstract syntax tree) is full of duplication and is ridiculously explicit, but it's super easy to process in all kinds of ways.
Just plainly guessing, but based on this blog post, if I'd write a Rust interpreter, I'd probably run it on MIR and not on plain Rust or LLVM IR.