-
Notifications
You must be signed in to change notification settings - Fork 151
Description
Thanks for all your work on Gluon, it seems like the most well-designed embeddable scripting language for Rust hosts :)
My use case (procedural music composition / live scripting) requires a fast edit->compile->run cycle (low latency) (which is why I abandoned my previous approach of using Rust for scripting via auto-recompilation & DLL auto-reloading).
I'm interested in using Gluon for this use case, so I'm wondering how I can reduce the latency of the edit->compile->run cycle to be as low as possible.
Most scripts consists of a few imports from std plus a few imports of user-written modules. E.g. the main module imports std and foo (where foo imports bar). If the user only edits the main file and saves that, it should not recompile std nor foo nor bar, only main. The other modules should only be linked. If the user then edits bar, it would only recompile bar and foo and main but not std.
How can this be done? :)
And what kind of latency can be expected as modules grow large (many symbols)?
(Another alternative I considered was using Haskell instead of Gluon because most of potential users already know Haskell, but with Haskell/curryrs the latency of the edit->compile->run cycle would probably be higher?)