Sou principalmente um desenvolvedor .NET, então normalmente uso o Windows / VisualStudio (isso significa: sou mimado), mas estou gostando do Haskell e de outros idiomas (principalmente funcionais) no meu tempo livre.
Agora, para Haskell, o suporte ao Windows está ok (você pode obter a Plataforma Haskell), mas ultimamente tentei obter um ambiente básico de Clojure / Scheme configurado e isso é apenas uma dor no Windows.
Então, estou pensando em experimentar outro sistema operacional para obter melhores ferramentas e suporte a idiomas. Claro que isso me deixa com o MacOS ou alguma distribuição Linux.
Eu nunca usei o MacOS antes e, é claro, o Linux seria mais barato (gratuito) e acho que não consigo inicializar em paralelo o MacOS no seu PC-Hardware normal (você pode?). MAIS: Eu não tenho idéia das ferramentas que você pode usar nesses (para mim) SOs estrangeiros.
Para resumir: quero explorar mais Haskell, Clojure, Scala, Scheme e, é claro, preciso de pelo menos boas ferramentas para JavaScript / HTML5 / Css. O suporte ao .NET / Mono / F # seria ótimo, mas para isso ainda terei minha inicialização do Win7.
Então, eu gostaria de saber: - qual é o seu sistema operacional preferido, distribuição (o Ubuntu é viável?) - que editor / IDE você está usando
Obrigado pela ajuda!
PS: Não tenho certeza se este é o lugar certo para esta pergunta, mas certamente espero que sim - se não, por favor, deixe-me saber para onde devo mudar isso (StackOverflow não parece ser o lugar certo IMHO)
Respostas:
O caminho que estou tomando atualmente para experimentar esses idiomas e outras coisas, com grande sucesso e facilidade de uso:
Dessa forma, você obtém os profissionais dos dois sistemas operacionais.
fonte
Resposta curta: Existe uma solução simples para o seu problema. Basta instalar a máquina virtual com Linux (Ubuntu) - é grátis.
Também sou desenvolvedor principalmente do .NET que gosta de experimentar coisas diferentes ou experimentar várias estruturas e / ou ferramentas de desenvolvimento. O principal aqui é não mexer no seu ambiente de desenvolvimento principal. Portanto, instalar tudo em uma máquina virtual (o SO nativo, estruturas, configurá-los e configurá-los etc.) para o tipo de desenvolvimento que você pretende fazer é o caminho mais lógico e ideal.
Editar: você pode considerar uma solução de virtualização diferente para criar sua máquina virtual. Minha preferência pessoal vai com o VirtualBox . É uma solução de virtualização x86 gratuita que permite que uma ampla gama de sistemas operacionais x86, como Windows, DOS, BSD ou Linux, seja executada em um sistema Linux.
fonte
Uso Haskell e Scala (e também faço alguns Scheme, Common Lisp, SML, OCaml, Erlang), todos no Linux (Ubuntu).
Todos os idiomas acima (compiladores e intérpretes) podem ser instalados facilmente (existem pacotes que podem ser instalados usando o apt-get ou outro sistema de gerenciamento de pacotes).
O Scala tem uma boa integração com o Eclipse e os plug-ins do Scala são desenvolvidos ativamente. Se você quiser saber mais, existe um curso sobre o Scala atualmente em execução no Coursera, que explica como usar o Scala no Windows, Linux e Mac. Talvez você não tenha todos os recursos e integração do Visual Studio, mas desenvolvi projetos bastante grandes no Eclipse e ele funciona muito bem.
Para editar o Haskell (e os outros idiomas listados acima), uso o gvim, o que é bom para pequenos projetos. Você pode usar outro editor (por exemplo, EMACS), desde que tenha destaque de sintaxe para Haskell. Caso contrário, você pode dar uma olhada no haskellwiki (obrigado a Zach L pela sugestão).
Para gerenciar o código fonte (controle de versão), uso o SVN através do Eclipse para todos esses idiomas.
fonte
O MacOS requer hardware Mac ou você pode executá-lo no VirtualBox, mas da última vez que tentei não funcionou. E como você não deseja substituir seus problemas atuais de configuração / instalação por outros problemas, sugiro que você gaste muito dinheiro ou tente o Linux. Eu usei o Ubuntu para desenvolvimento Haskell, Scala e Lisp com Eclipse, Netbeans, IntelliJ e Emacs, e não tive muitos problemas para configurá-los.
fonte
Todos os sistemas operacionais do tipo Unix têm ferramentas de linha de comando muito boas . Pessoalmente, tive boas experiências com o Ubuntu para desenvolvimento e implantação, muitos dos meus amigos também juram pelo MacOS. Não vi um motivo óbvio para preferir um ou outro; todos são IMO melhores que o Windows para o trabalho em linha de comando.
No lado Clojure / Scala especificamente, você pode achar que o Windows é realmente muito bom se você usar um dos Java IDEs com o plug-in Clojure / Java apropriado. Pessoalmente, uso o Eclipse com anti - horário como meu principal ambiente de desenvolvimento Clojure no Windows 7. Também há o Scala IDE para verificar. Essa é uma boa abordagem se você gosta de IDEs com todos os recursos e / ou deseja fazer programação poliglota no mesmo ambiente. Uma vantagem extra de usar algo como o Eclipse é que a integração do git / svn / maven é muito boa.
fonte
Embora eu seja um grande fã de mac e linux, não há razão para que você não possa fazer nenhum desses idiomas no Windows. Além disso, se você quiser uma linguagem funcional no Windows, não negligencie o F #, que é uma linguagem .net
fonte
Eu usei o Haskell no Windows, OS X e Linux (Ubuntu), para poder oferecer algumas observações sobre isso. Agora, qualquer coisa que você possa obter da Plataforma Haskell provavelmente funcionará bem, não importa o que acontecer, mas depois disso:
Relativamente poucos programadores Haskell usam o Windows. Você encontrará coisas no Hackage que assumem um ambiente semelhante ao Unix sem realmente declarar isso explicitamente.
Muita coisa útil vem das ligações da FFI às bibliotecas C, e a falta de uma cadeia de ferramentas de compilação C ainda vagamente consistente e confiável no Windows significa que, na minha experiência, instalar as ligações da FFI pelo hackage é, na melhor das hipóteses, um crapshoot.
Qualquer coisa necessariamente específica da plataforma, que de maneira divertida inclua bibliotecas de GUI de plataforma cruzada, é mais provável que "apenas funcione" no Linux.
Cygwin não ajuda tanto quanto você pensa.
Em resumo: tudo tende a funcionar no Linux, a maioria das coisas funciona no OS X, mas algumas são estranhas, e no Windows você deve encontrar muitas dores de cabeça interessantes ao usar as bibliotecas.
Se você só quer se divertir experimentando coisas e aprendendo Haskell, faça um favor a si mesmo e use uma VM do Ubuntu ou algo assim.
Tanto quanto os editores e tais go - emacs e vim são populares como sempre. Eu nunca aprendi a usá-lo (embora eu realmente deva ...) e não ligo para a maioria dos IDEs, então geralmente fico com o SciTE - é um invólucro fino em torno de um widget de editor chamado Scintilla, que você pode saber como sendo o que O Notepad ++ usa.
fonte
Em vez de escolher um sistema operacional, deixe-me abordar isso do ângulo do IDE. Se você estiver interessado em Scheme, eu o incentivaria a experimentar o DrRacket, que surgiu da selva de Scheme há alguns anos atrás. O IDE funciona bem no Windows, OS X e Linux.
Agora, você só precisa escolher o sistema operacional certo para executar todas as suas outras linguagens funcionais.
fonte
Simon Peyton-Jones, um dos criadores de Haskell é um usuário do Windows e, pelo que entendi, Haskell tem excelente suporte ao Windows.
Sua pergunta é um pouco vaga para ser honesta, sua escolha do SO não está ligada ao paradigma da linguagem que você está usando.
Pessoalmente, acredito que fora do mundo C # e Java (onde o ambiente de desenvolvimento é ditado pelo seu IDE), um ambiente de desenvolvimento deve sempre ser uma versão do Unix, seja BSD, Linux ou OSX.
fonte