-
InfluxDB
Power Real-Time Data Analytics at Scale. Get real-time insights from all types of time series data with InfluxDB. Ingest, query, and analyze billions of data points in real-time with unbounded cardinality.
It is not the same, but that does not mean they can't be helpful. Notionally, the compiler is available at runtime--there is no 'staging'--making on-the-fly code generation and compilation a breeze. A pertinent example is with-compile-time-branching, a macro which effects hoisting of branches--similar to what you are asking for.
For scientific computation, definitely check out Numba. It's even got support for targeting CUDA.
There are several packages that do this for Python. Cython is probably the most used. Usually it's used for compiling modules at installation time, but it can be used for dynamic compilation (I wouldn't call it just-in-time, more like 'as-needed').
On a related note, there's a package called CompTime.jl that was recently announed on the last juliacon. It's supposed to make working with generated functions easier, although I haven't used it (it's only entering the general registry of packages next week).
BER MetaOCaml is a variant of OCaml with first-class staging constructs. You can write a program that returns something of type "code for a program of type T" (possibly a function type), and then ask to compile this code and you get a value of type T. This has been used to demonstrate removing interpretation overhead in various settings, for example parser generators as a library.
Spiral