It would be lovely if the interpreter could (semi-)transparently invoke compiled Futhark code, through the server protocol. This would allow a (somewhat) interactive style of programming while still providing high performance, and even allow us to get rid of FutharkScript.
The interpreter is already structured in a way that allows "external calls" that are handled by the outside world (currently used for traces and breakpoints). The main challenge is adding a whole bunch of glue to bridge the gap between the interpreter and the fundamentally opaque value model of a compiled Futhark program (with various affordances through the server protocol for inspecting value).
It would be lovely if the interpreter could (semi-)transparently invoke compiled Futhark code, through the server protocol. This would allow a (somewhat) interactive style of programming while still providing high performance, and even allow us to get rid of FutharkScript.
The interpreter is already structured in a way that allows "external calls" that are handled by the outside world (currently used for traces and breakpoints). The main challenge is adding a whole bunch of glue to bridge the gap between the interpreter and the fundamentally opaque value model of a compiled Futhark program (with various affordances through the server protocol for inspecting value).