Difference between revisions of "Pt/Introdução"

From HaskellWiki
Jump to navigation Jump to search
Line 24: Line 24:
 
* menor "gap semântico" entre o programador e a linguagem.
 
* menor "gap semântico" entre o programador e a linguagem.
 
* menor tempo de codificação.
 
* menor tempo de codificação.
  +
  +
Haskell é uma línguagem do largo-spectrum, apropriada para uma variedade das aplicações. É particularmente apropriado para os programas que necessitam ser altamente modificáveis e de fácil manutenção.
  +
  +
Muito do ciclo de vida do software é gasto em '' especificação '', '' design '', ,'' manutenção '', do projeto e não na '' programação ''. As línguagens funcionais são superb para as especificações da escrita que podem realmente ser executadas (e daqui testado e eliminado erros). Tal '' da especificação então é '' o primeiro protótipo do final programa.
  +
  +
Linguagens funcionais são soberbas para as especificações da escrita que podem realmente ser executadas (e assim testado e eliminado erros). Tal especificação então '' é '' o primeiro protótipo do programa final.
  +
  +
Programas funcionais são também relativamente fáceis de manter, porque o código é menor, mais claro, e o controle rigoroso de efeitos laterais elimina uma classe enorme de interações desnecessárias.
  +
  +
==O que é programação funcional?==
  +
  +
C, Java, Pascal, Ada, e assim por diante, são linguagens ''imperativas''. São e "imperativas" no sentido em que consistem em uma sequencia de comandos, que são executados estritamente um após o outro. Haskell é uma linguagem ''funcional''. Uma linguagem funcional é uma única expressão, que é executada avaliando essa expressão.

Revision as of 18:34, 31 May 2007


Haskell é uma linguagem de programação para computadores. Em particular, ela é uma linguagem polimórfica tipada, preguiçosa e puramente funcional, completamente difrente da maioria das outras linguagens. A linguagem foi batizada por Haskell Brooks Curry, que trabalha em expressões lógicas matemáticas em uma fundação para linguagens funcionais. Haskell é baseada em cálculo lambda, por isso o lambda é usado como logo.

Por quê usar Haskell?

Escrever grandes softwares é um trabalho difícil e dispendioso. Dar manutenção nesses sistemas é mais difícil e dispendioso ainda. Linguagens de programação funcional, como Haskell, podem torná-lo mais fácil e mais barato. Por exemplo, um novo usuário que escreve um pequeno banco de dados relacional em Haskell dirá:

Uau! Eu basicamente escrevi o programa sem testar nada em termos de transformação entre tipos. Eu escrevi o teste/código do exemplo e não teve quase nenhum erro da execução no código! O compilador/sistema é realmente realmente bons em impedi-lo de fazer erros de codificação! Nunca em minha vida tive um bloco do código tão grande executar corretamente na primeira tentativa. Estou realmente impressionado.

Mesmo se você não estiver em uma posição para usar Haskell em seus projetos de programação, aprender Haskell pode tornar-lhe um programador melhor em qualquer linguagem.

Eu aprendi Haskell há alguns anos atrás, programando anteriormente em Python e (muitos) outras linguagens. Recentemente, eu tenho usado o Python para um projeto (a escolha que está sendo determinada por critérios técnico e por não técnicos), e encontro em meu estilo de programação Python agora pesada influência (para o melhor, eu espero; -) por minha experiência em programação Haskell.

Graham Klyne

Haskell oferece a você:

  • aumento substancial da produtividade do programador (Ericsson mediu um fator da melhoria entre 9 e 25% utilizando Erlang, uma língua de programação funcional similar a Haskell, em um conjunto de experimentos em software de telefonia).
  • código menor, mais limpo e mais fácil de dar manutenção.
  • menos erros e maior confiabilidade.
  • menor "gap semântico" entre o programador e a linguagem.
  • menor tempo de codificação.

Haskell é uma línguagem do largo-spectrum, apropriada para uma variedade das aplicações. É particularmente apropriado para os programas que necessitam ser altamente modificáveis e de fácil manutenção.

Muito do ciclo de vida do software é gasto em especificação , design , , manutenção , do projeto e não na programação . As línguagens funcionais são superb para as especificações da escrita que podem realmente ser executadas (e daqui testado e eliminado erros). Tal da especificação então é o primeiro protótipo do final programa.

Linguagens funcionais são soberbas para as especificações da escrita que podem realmente ser executadas (e assim testado e eliminado erros). Tal especificação então é o primeiro protótipo do programa final.

Programas funcionais são também relativamente fáceis de manter, porque o código é menor, mais claro, e o controle rigoroso de efeitos laterais elimina uma classe enorme de interações desnecessárias.

O que é programação funcional?

C, Java, Pascal, Ada, e assim por diante, são linguagens imperativas. São e "imperativas" no sentido em que consistem em uma sequencia de comandos, que são executados estritamente um após o outro. Haskell é uma linguagem funcional. Uma linguagem funcional é uma única expressão, que é executada avaliando essa expressão.