в языке где данные это код а код это данные нет вм ага
Тебе не нужна вм и байткод, если ты эммитишь его в рантайме. В хаскеле такого нет и он там не нужен.
Более того, есть такая стратегия компиляции ФП языков, когда у тебя финальная программа вообще не имеет никаких динамических вызовов вообще.
Несмотря на то, что в программе ты туда-сюда возвращаешь и бросаешься функциями