Тем более что это никакая не функциональная чистота, а банальная ошибка дизайна авторв языка, будем честны. Кложура и erlang самые что ни на есть функциональные языки, успешно используют дин. типизацию. Все (!) сат. типизированные js- заменители, подобные elm (typescript, scalajs, reasonml, gopherjs), успешно используют дин. типизацию для интеропа с js. Ни кому бы и в голову не пришло там городить огород с портами.
Здесь уже был недовольный Elm-ом и его решениями человек, вбрасывающий ради того чтобы вбросить. Истина важна безусловно, но я теряюсь в логике твоих утверждений. Языки сделаны разными, Elm наиболее строгий из перечисленных (Хаскель строже, как я понимаю). И строгий он по определению, поэтому _насколько возможно_ JS изолирован, потому что его использование приводит к непредсказуемым последствиям в логике программы. Крах программы означает, что логика уже не работает.