Я в основном разработчик .NET, поэтому я обычно использую Windows / VisualStudio (что означает: я испорчен), но я наслаждаюсь Haskell и другими (в основном функциональными) языками в свободное время.
Теперь для Haskell поддержка окон в порядке (вы можете получить платформу Haskell), но в последнее время я попытался настроить базовую среду Clojure / Scheme, и это просто боль для окон.
Поэтому я думаю о том, чтобы опробовать другую ОС для лучшего инструментария и поддержки. Конечно, это оставляет меня с MacOS или некоторым дистрибутивом Linux.
Я никогда раньше не использовал MacOS, и, конечно, Linux будет дешевле (бесплатно), и я не думаю, что смогу параллельно загружать MacOS на вашем обычном ПК-оборудовании (не так ли?). ПЛЮС: Я не имею понятия об инструментах, которые вы можете использовать в этих (для меня) внешних ОС.
Короче говоря: я хочу изучить больше Haskell, Clojure, Scala, Scheme и, конечно, нужен хотя бы хороший инструментарий для JavaScript / HTML5 / Css. Поддержка .NET / Mono / F # была бы отличной, но для этого у меня все еще будет загрузка Win7.
Поэтому мне хотелось бы знать: - какая у вас предпочитаемая ОС, дистрибутив (подходит ли Ubuntu?) - какой редактор / IDE вы используете
Спасибо за помощь!
PS: я не уверен, что это правильное место для этого вопроса, но я, безусловно, надеюсь на это - если нет, пожалуйста, дайте мне знать, куда я должен переместить это (StackOverflow не кажется правильным IMHO)
Ответы:
Маршрут, который я сейчас выбираю для экспериментов с такими языками и другими вещами, с большим успехом и простотой использования:
Таким образом, вы получите плюсы обеих операционных систем.
источник
Краткий ответ: есть простое решение вашей проблемы. Просто установите виртуальную машину с Linux (Ubuntu) - это бесплатно.
Я также в основном разработчик .NET, который любит экспериментировать с разными вещами или пробовать различные фреймворки и / или инструменты разработки. Здесь главное не испортить вашу главная среда разработки. Таким образом, установка всего на Виртуальной машине (нативная ОС, фреймворки, их настройка и т. Д.) Для того типа разработки, который вы намеревались выполнить, является наиболее логичным и оптимальным способом.
Изменить: Вы можете рассмотреть различные решения для виртуализации для создания вашей виртуальной машины. Мои личные предпочтения идут с VirtualBox . Это бесплатное решение для виртуализации x86, позволяющее запускать в системе Linux широкий спектр операционных систем x86, таких как Windows, DOS, BSD или Linux.
источник
Я использую Haskell и Scala (а также делаю некоторые Scheme, Common Lisp, SML, OCaml, Erlang) все под Linux (Ubuntu).
Все вышеперечисленные языки (компиляторы и интерпретаторы) могут быть установлены довольно легко (есть пакеты, которые можно установить с помощью apt-get или другой системы управления пакетами).
Scala имеет хорошую интеграцию с Eclipse, и плагины Scala активно разрабатываются. Если вы хотите узнать больше, есть курс по Scala, который в настоящее время работает на Coursera и объясняет, как использовать Scala в Windows, Linux и Mac. Возможно, у вас нет всех возможностей и интеграции Visual Studio, но я разработал довольно большие проекты в Eclipse, и он работает просто отлично.
Для редактирования Haskell (и других языков, перечисленных выше) я использую gvim, который подходит для небольших проектов. Вы можете использовать другой редактор (например, EMACS), при условии, что он имеет подсветку синтаксиса для Haskell. В противном случае вы можете взглянуть на haskellwiki (спасибо Zach L за предложение).
Для управления исходным кодом (управления версиями) я использую SVN через Eclipse для всех этих языков.
источник
MacOS требует аппаратного обеспечения Mac, иначе вы можете запустить его на VirtualBox, но в прошлый раз я попытался, чтобы он не работал. А поскольку вы не хотите заменять текущие проблемы с настройкой / настройкой другими проблемами, я предлагаю вам либо потратить много денег, либо попробовать Linux. Я использовал Ubuntu для разработки на Haskell, Scala и Lisp с Eclipse, Netbeans, IntelliJ и Emacs, и у меня не было особых проблем с их настройкой.
источник
Все Unix-подобные ОС имеют очень хорошие инструменты командной строки . У меня лично был хороший опыт работы с Ubuntu как для разработки, так и для развертывания, многие из моих друзей также клянутся MacOS. Я не видел очевидной причины отдавать предпочтение одному или другому, они все IMO лучше, чем Windows для работы в командной строке.
Что касается Clojure / Scala, в частности, вы можете обнаружить, что Windows на самом деле довольно хороша, если вы используете одну из Java IDE с соответствующим плагином Clojure / Java. Я лично использую Eclipse с Counterclockwise как свою основную среду разработки Clojure в Windows 7. Также есть Scala IDE, чтобы проверить. Это хороший подход, если вам нравятся полнофункциональные среды разработки и / или вы хотите заниматься программированием полиглотов в одной среде. Дополнительным плюсом использования чего-то вроде Eclipse является то, что интеграция git / svn / maven очень хороша.
источник
Хотя я большой поклонник Mac и Linux, нет никаких причин, по которым вы не можете использовать ни один из этих языков в Windows. Также, если вы хотите функциональный язык в Windows, не забывайте F #, который является языком .net
источник
Я использовал Haskell в Windows, OS X и (Ubuntu) Linux, поэтому могу предложить несколько замечаний по этому поводу. Теперь все, что вы можете получить с платформы Haskell, вероятно, будет работать нормально, несмотря ни на что, но после этого:
Относительно мало программистов на Haskell используют Windows. На Hackage вы найдете вещи, которые предполагают юниксоподобную среду, не указав этого явно.
Множество полезных вещей происходит от привязок FFI к библиотекам C, и отсутствие даже смутно непротиворечивой и надежной цепочки инструментов для компиляции C в Windows означает, что, по моему опыту, установка привязок FFI из хакерских сетей - в лучшем случае подделка.
Все, что обязательно зависит от платформы, что довольно забавно, в том числе кроссплатформенные библиотеки GUI, с большей вероятностью «просто работает» в Linux.
Cygwin не помогает так сильно, как вы думаете.
Итак, все работает на Linux, большинство работает на OS X, но некоторые вещи странные, а на Windows вы должны ожидать множество интересных головных болей при использовании библиотек.
Если вы просто хотите весело поэкспериментировать с материалом и изучить Haskell, сделайте себе одолжение и используйте виртуальную машину Ubuntu или что-то в этом роде.
Насколько редакторы и подобные go - emacs и vim популярны как всегда. Я никогда не учился использовать (хотя я действительно должен ...) и не заботился о большинстве IDE, поэтому я обычно придерживаюсь SciTE - это тонкая оболочка вокруг виджета редактора под названием Scintilla, который вы, возможно, знаете как Блокнот ++ использует.
источник
Вместо того, чтобы выбирать ОС, позвольте мне взглянуть на это с точки зрения IDE. Если вы заинтересованы в Схеме, я бы посоветовал вам попробовать DrRacket, который появился из джунглей Схемы несколько лет назад. Среда хорошо работает в Windows, OS X и Linux.
Теперь вам нужно просто выбрать правильную ОС для запуска всех ваших других функциональных языков.
источник
Саймон Пейтон-Джонс, один из создателей Haskell, является пользователем Windows, и, насколько я понимаю, Haskell имеет отличную поддержку Windows.
Если честно, ваш вопрос немного расплывчат, ваш выбор ОС не связан с парадигмой языка, который вы используете.
Лично я считаю, что за пределами мира C # и Java (где среда разработки определяется вашей IDE), среда разработки всегда должна быть разновидностью Unix, будь то BSD, Linux или OSX.
источник