Para registrar uma função precisamos de duas coisas:
rust register_function(js:&str) -> usize
Como o WebAssembly só pode passar e receber números e como todos os números em JavaScript são floats de 64 bits, a aparência final será de uma função importada:
register_function(js_start:f64, js_len:f64) -> f64
Por baixo dos panos aproveitamos a função eval
do JavaScript para tornar essas funções reais.