afyonkarahisar afyonkarahisar haber afyonkarahisar haber zonguldak haberler zonguldak zonguldak haber yozgat yeni haber yozgat haberler yozgat haberler

BCC111 - Programação Funcional - 2026-2

Carga horária da disciplina: 4 horas/aula


Professor(es) em 2026-2

Turma 21 Professor:
José Romildo Malaquias - www | e-mail

Horários:
Segunda-feira (08h20 - 10h00)
Quarta-feira (08h20 - 10h00)

Turma 22 Professor:
José Romildo Malaquias - www | e-mail

Horários:
Segunda-feira (08h20 - 10h00)
Quarta-feira (10h10 - 11h50)

Objetivos

Ementa

Características dos principais paradigmas de programação; princípios do paradigma de programação funcional; principais características de linguagens de programação funcional: recursão, abstração funcional, funções de ordem superior, tipos de dados algébricos, polimorfismo, inferência de tipos, avaliação estrita e avaliação lazy, sobrecarga; demonstração de correção de programas funcionais.

Conteúdo Programático

- ● Introdução
- ● Paradigmas de programação
- ● Definindo funções
- ● Funções recursivas
- ● Tuplas, listas e polimorfismo paramétrico e de sobrecarga.
- ● Casamento de padrão
- ● Entrada e saída
- ● Funções anônimas e de ordem superior
- ● Tipos de dados algébricos.
- ● Functores e Mônadas.
- ● Teste baseado em propriedades.
- ● Raciocínio sobre programas funcionais.
- ● Noções sobre tipos dependentes em linguagens de programação.

Bibliografia

- ● Lipovaca, Miran - Learn you a Haskell for the great good! No Starch Press. Disponível gratuitamente
- on-line:http://learnyouahaskell.com
- ● O'Sullivan, Bryan; Stewart, Don ; Goerzen, John - Real World Haskell. Disponível gratuitamente
- on-line:http://book.realworldhaskell.org
- ● WADLER, Philip; KOKKE, Wen; SIEK, Jeremy. Programming Languages Foundations in Agda.Disponível gratuitamente on-line: https://plfa.github.io
- ● MARLOW, Simon. Parallel and Concurrent Programming in Haskell. Disponível gratuitamente on-line: https://simonmar.github.io/pages/pcph.html

Bibliografia complementar

- ● Jhala, Ranjit; Seidel, Eric ; Vazou, Niki - Programming with Refinement Types: An introduction to Liquid Haskell.Disponível gratuitamente
- on-line:http://ucsd-progsys.github.io/liquidhaskell-tutorial/
- ● BIRD, Richard. Introduction to Functional Programming using Haskell. 2. ed. London: Prentice Hall Press, 1998.
- ● MILNER, R.; TOFTE, Mads; HARPER, Robert. The definition of standard ML. Cambridge: MIT, 1997.
- ● ULLMAN, Jeffrey D. Elements of ML programming. New Jersey: Prentice-Hall. 1998.
- ● PAULSON, Laurence C. ML for the working programming. 2. ed. Cambridge: Cambridge University, 1996.
- ● PEYTON JONES, Simon L. The implementation of functional programming languages. New York: Prentice-Hall. 1987.

Departamento de Computação  |  ICEB  |  Universidade Federal de Ouro Preto
Campus Universitário Morro do Cruzeiro  |  CEP 35400-000  |  Ouro Preto - MG, Brasil
Telefone: +55 31 3559-1692  |  decom@ufop.edu.br


escort bahçelievler