This is true of a lot of languages, go, haskell (even more once shake becomes the build system for it) etc...
It makes porting things... interesting.
It makes porting things... interesting.
On a more serious note, ghc at least solved this problem by allowing you to compile Haskell to C (-fvia-C). Writing a naive C code generator from whatever your backend is using is probably not that hard.