Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Programação Functional com Haskell

Programação Functional com Haskell

Felipe de Morais

February 18, 2016
Tweet

More Decks by Felipe de Morais

Other Decks in Programming

Transcript

  1. O que é programação funcional A programação funcional baseia-se no

    conceito matemático de função, em que para cada elemento do seu conjunto domínio (entrada) há apenas um elemento no seu conjunto contra-domínio (saída).
  2. História do Haskell Na conferência Linguagens de Programação Funcional e

    Arquitetura da Computação em 1987, Portland, Oregon, os participantes formaram um comitê para definir um padrão aberto para linguagens de programação funcional.
  3. Usos de Haskell • Facebook, backend para frontenders • Google

    Ganeti, gerenciamento de clusters • Intel, compilador para Haskell em estudos sobre paralelismo
  4. ◦ Funções puras ◦ Funções de alta ordem ◦ Pattern

    Matching ◦ Recursão ◦ Guards ◦ Composição de Funções As propriedades mais amadas
  5. Funções puras Funções de verdade • Sempre retornam o mesmo

    resultado • Sem estado Exemplos: • sqrt • product • sum
  6. Funções de alta ordem Funções solidarias recebem outras funções como

    parâmetro Exemplos: • map • reduce a.k.a foldr
  7. Composição de Funções Aplicando uma sequência de funções, sem um

    mundo de parênteses. Exemplos: • cifra de cesar • reverse words
  8. Como Começar? Aprendendo a ver por outra perspectiva • GHCI

    • Learn You a Haskell for Great Good!