Open Timmmm opened 1 year ago
You are correct, embedding the compiler is not something we currently easily support. Only running Mun using the mun_runtime crate is. We assume the user is running the compiler daemon separately. The daemon (the mun
executable) is statically linked against LLVM, meaning the user doesn't need to have LLVM installed.
Adding cranelift as a target would be really nice though! It also has some nice features that would make hotreloading even faster.
As I understand it, Mun requires LLVM for compilation. That means it is not a good option for embedding in programs - in the same way that you can embed Rhai or Gluon or Lua for example.
The documentation has a section on embedding Mun programs in Rust or C++ but as far as I can tell that still requires you to have already compiled them externally using LLVM.
Perhaps it could support Cranelift too?