Haskell для платформы .NET?

Я - разработчик.NET днем, но играл с Haskell в мое свободное время некоторое время теперь. Мне любопытно: какой-либо .NET Haskell implemenations в том же духе как IronPython?

36
задан Will 28 July 2010 в 19:46
поделиться

4 ответа

Активной работы по переносу среды выполнения GHC на .NET не ведется.

F# является наиболее близким вариантом, хотя имейте в виду, что он основан на OCaml и, как таковой, не основан на ссылочной прозрачности по умолчанию, как Haskell.

29
ответ дан 27 November 2019 в 05:58
поделиться

Вот для чего нужна F#.

0
ответ дан 27 November 2019 в 05:58
поделиться

Haskell не очень хорошо работал бы в .NET без серьезных изменений в среде выполнения или, может быть, действительно умного компилятора.

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

Это и есть проблемы с оптимизацией - .NET не выполняет никаких оптимизаций, например, для неизменяемых объектов, поэтому списки (последовательности, как они называются в F # или IEnumerable, как они называются в C #) не будут не так эффективно.

Компилятор Haskell IL может быть выполнимым, как что-то, что выводит сборки .NET вместо x86 .exes / .dlls.

9
ответ дан 27 November 2019 в 05:58
поделиться

Насколько я знаю, в .net Haskell не существует, но есть другой функциональный язык: F#. Он работает в .Net и поставляется с Visual studio. Они похожи до определенного момента; этот вопрос на stackoverflow объясняет различия.

Вот документация по началу работы с F#.

4
ответ дан 27 November 2019 в 05:58
поделиться
Другие вопросы по тегам:

Похожие вопросы: