Open
Description
PL/Rust has two distinct functionalities: compiling the code and executing the code. When executing doesn't have the required artifacts available, we could attempt to invoke the compilation side to get that code and thus "lazy-load" functions, but these are otherwise fairly separate events. Splitting these out as far as possible throughout the plrust
crate seems desirable, especially if we want to be able to enable remote compilation for clarity's sake if nothing else.
- These may be better off as individual crates, but that might bar certain meshes of functionality.
- We may instead choose to have
plrust
be a heavily feature-flagged crate with different modules.