Betovsky Posted May 4, 2009 at 09:39 PM Report #261410 Posted May 4, 2009 at 09:39 PM Bem deparei-me com este artigo e foi bastante agradável. Basicamente é o sujeito a falar da sua experiência em ter usado Haskell para uma aplicação web. http://jekor.com/article/is-haskell-a-good-choice-for-web-applications Digo desde já que não estava a espera de uma resposta daquelas. Apesar de nunca ter experimentado, de vez em quando dou uma olhadela por artigos que vão surgindo, e Haskell nesse departamento ainda me parece muito verde... Mas se calhar não, ou então o gajo ficou com o cérebro comido e já não diz nada de jeito 🙂 "Give a man a fish and he will eat for a day; Teach a man to fish and he will eat for a lifetime. The moral? READ THE MANUAL !" Sign on a computer system consultant's desk
HugoDaniel Posted October 18, 2009 at 12:17 AM Report #292133 Posted October 18, 2009 at 12:17 AM Nunca experimentei usar o FastCGI ou outro tipo de interfaces com servidores http existentes com o haskell, como ele o fez. Sei que existem algumas libs para isso, nomeadamente: http://hackage.haskell.org/package/cgi-3001.1.7.1 www.turbinado.org/ Tenho, no entanto, alguma experiência com o application server do haskell, o anteriormente conhecido por HAppS, e agora conhecido por HAppStack. Como application server está ao nível do tomcat (java), utiliza uma descrição de funcionalidades através de um conceito muito interessante chamado "monoid" (http://en.wikipedia.org/wiki/Monoid#Relation_to_category_theory). A sua utilização é simples para quem entende monoids em haskell (para quem não entende é necessário alguma adaptação inicial...). A lib de JSON também é muito valente em haskell, e para interagir com bases de dados recomendo o Takusen para acessos rápidos e elegantes em tudo o que não seja MSSQL. E o HDBC para tudo o resto. Para mais informações acerca destas libs (e todas as outras também disponíveis no Haskell), consultem este link: http://hackage.haskell.org/packages/archive/pkg-list.html
Betovsky Posted October 19, 2009 at 07:43 PM Author Report #292410 Posted October 19, 2009 at 07:43 PM Nice. Parece teres alguma experiência nessa área. Era muito porreiro sair um artigo a falar do HAppStack na revista a programar. Não estás interessado? "Give a man a fish and he will eat for a day; Teach a man to fish and he will eat for a lifetime. The moral? READ THE MANUAL !" Sign on a computer system consultant's desk
pedrotuga Posted October 19, 2009 at 10:44 PM Report #292452 Posted October 19, 2009 at 10:44 PM Carago! Artigo de topo! Sem tentar armar aos cágados com referencias fáceis a tecnologias com nomes esotéricos, bem exposta a opinião e muito bem fundamentada. É o tipo de leitura que gosto! Haja mais blogueiros assim! De salientar que o artigo aborda o tema da viabilidade do haskell analisando a solidez das bibliotecas e tecnologias que o rodeiam e que podem ser usadas numa situação de produção em vez de caír no ridículo de referir pequenos preciosismos de sintaxe que verdade seja dita pouco interessam sequer ao menino jesus. Só não gostei deste chavão But more importantly, using Haskell has forced me to keep my code clear and simple. 1. Eu não preciso que me obriguem a fazer uma coisa bem para a fazer bem. 2. Soa muito a "bem, não sei de outro ponto positivo, tenho sempre este". Não havia necessidade, o artigo tem bem conteúdo que supera esta frase. De resto tambem costumo ver as coisas pelo mesmo prisma que o autor. Em particular a conclusão que ele tida de que, por muito boa que seja a tecnologia, não vai fazer milagres por quem quer que seja. Vou subscrever o blog.
HugoDaniel Posted October 22, 2009 at 10:35 AM Report #292851 Posted October 22, 2009 at 10:35 AM 1. Eu não preciso que me obriguem a fazer uma coisa bem para a fazer bem. Tens razão, um bom programador tem disciplina, no entanto, as coisas podem ficar caóticas se estivermos a trabalhar numa equipa com vários programadores e a linguagem de programação escolhida for demasiado liberal com a sintaxe (como é o caso com o C/C++/Java). Ainda que todos sejam bem disciplinados e façam-no da melhor forma possível, vão existir variações na escrita de código (há quem goste de abrir block '{' após o nome das funções, há quem goste de dar uma linha, há quem goste de...). O que pode criar sérias dificuldades na leitura do código, e, inclusive, originar bugs. O que é feito habitualmente em equipas grandes é criar-se um conjunto de regras extra de sintaxe e formatação e obrigar os programadores a segui-las. O Haskell deixa muita margem de manobra ao programador para poder organizar o código como quiser, no entanto, por omissão, obriga a utilização de indentação e regras de nomeação de variáveis e tipos (por exemplo, os tipos de dados têm de começar com letra maiúscula). Tal como o Python (e julgo que esta foi também uma das áreas que o Python foi buscar ao Haskell), o espaçamento no código tem influência para a sua interpretação. Isto é um compromisso na liberdade de escrita de código em prol da sua uniformização. A grande vantagem, a meu ver, é que consigo ler mais facilmente e rapidamente o código (tanto Python como Haskell) de outras pessoas, visto que independentemente da sua nacionalidade ou região do mundo onde se encontram, o seu código irá seguir as regras de formatação às quais a linguagem obriga.
Rui Carlos Posted October 22, 2009 at 10:52 AM Report #292856 Posted October 22, 2009 at 10:52 AM Acho que há muitas mais regras no Java que no Haskell, por exemplo, ao obrigar a estruturar a aplicação em classes (embora possas sempre usar métodos estáticos, e programar como em C). Isto provavelmente devido ao facto do Java ser controlado por uma empresa. A vantagem do Haskell está na simplicidade do código. Rui Carlos Gonçalves
HugoDaniel Posted October 22, 2009 at 11:20 AM Report #292868 Posted October 22, 2009 at 11:20 AM Sim, e mesmo com essas regras ainda deixa muita ponta solta para falhanços épicos... 😉 Em todo o caso, escrevi apenas a respeito das regras de sintaxe, mas agora que reli o post do blog, julgo que a linha de pensamento do autor esteja mais na ordem da semântica.
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now