А к хаскелю нельзя прицепить в качестве выходного файла фортрановский код, который потом можно будет сктмпилировать?
Можно через плагины прицепиться к компилятору и на каком-то уровне выдавать фортран. Так делали, например, в clash, чтобы выдавать VHDL. Но задача эта не самая тривиальная и я не уверен, что найдётся команда, которая это хочет и может. Гораздо проще написать edsl, который будет генерировать фортран на выходе. С этим вполне может справиться средняя команда, и обычно так делают с Си, самое крупное такое решение это ivory и cryptol, но мелкие специализированные решения были во многих проектах (у меня минимум в 2 и ещё про несколько знаю)