PureScript might be able to do back end via Node. Or just use Haskell.

Actually, there's also GHCjs and JS of OCaml. Latter plus Reason as a cleaner OCaml syntax might be pretty nice.

Or just skip it all for MirageOS.