Вероятно, нет, по крайней мере, не как что-либо, кроме игрушек / доказательств концепции. Обратите внимание, что даже Haskell не является на 100% чисто функциональным - у него есть секретные аварийные люки, и все, что в IO
, является только «чистым» в некотором мучительном, махающем рукой смысле слова .
Итак, все же, вам действительно нужен чисто функциональный язык? Вы можете написать чисто функциональный код практически на любом языке, с различной степенью неудобства и неэффективности.
Конечно, языки, которые предполагают универсальное изменение состояния, делают болезненным поддержание чистоты, так что, возможно, что вам действительно нужно, так это язык, который поощряет неизменность? В этом случае, возможно, вам стоит взглянуть на философию Clojure . И это Лисп, для загрузки!
В качестве заключительного замечания осознайте, что большая часть "синтаксиса" Хаскелла - это толстые слои сахара. Базовый язык - это не что иное, как типичное лямбда-исчисление, и ничто не мешает вам писать весь код таким образом. Вы можете получить забавные взгляды от других программистов на Haskell. Есть также Лискелл , но я не уверен, в каком он сейчас состоянии.
И последнее практическое замечание: если вы хотите на самом деле писать код, который вы намереваетесь использовать, а не просто заниматься чем-то интересным, вы действительно захотите умный компилятор, который знает, как работать с чистый код / неизменяемые структуры данных.