It is an old idea with a new name. For example, QEMU orginally worked like this [1] and they already used relocations to patch in constants, before they later moved to TCG for higher-quality code.
[1]: https://www.usenix.org/legacy/event/usenix05/tech/freenix/fu...