Haskell для платформы .net? - PullRequest
       4

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

36 голосов
/ 17 июля 2010

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

Ответы [ 5 ]

29 голосов
/ 17 июля 2010

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

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

16 голосов
/ 26 декабря 2011

См. hs-dotnet: прагматическое взаимодействие .NET для Haskell

hs-dotnet - прагматичный уровень взаимодействия .NET для Haskell. Это выставляет как классы .NET для Haskell (через GHC), так и значения функций Haskell для .NET.

9 голосов
/ 17 июля 2010

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

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

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

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

4 голосов
/ 17 июля 2010

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

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

0 голосов
/ 17 июля 2010

Вот для чего F # .

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...