https://github.com/mozilla/pluotsorbet was written in JS (with some parts in asm.js) and the performance was reasonable....