Introduzir os conceitos básicos de programação funcional aos alunos de graduação. Desenvolver as habilidades necessárias para que o futuro desenvolvedor de tais programas possa criar soluções adequadas, com alto desempenho e qualidade.
Histórico, conceitos básicos e situação atual do paradigma funcional. Linguagens funcionais modernas. Exemplos de extensões funcionais de linguagens tradicionais. Funções de alta ordem, e closure. Avaliação de expressões: exemplos sequencial, concorrente e distribuído. Tópicos avançados em programação funcional.
Histórico, conceitos básicos e situação atual do paradigma funcional: introdução ao paradigma funcional, compreendendo funções e expressões lambda, funções de ordem superior, e demais conceitos funcionais aplicados em linguagens funcionais modernas. Desenvolvimento de programas em linguagens funcionais modernas. Exemplos de programas em linguagens que incorporam aspectos funcionais. Tópicos avançados em linguagens funcionais: aplicação de linguagens funcionais na solução de problemas.
Livro Texto Ford, Neal. Functional Thinking: Paradigm Over Syntax. O’Reilly Media, 2014. Bibliografia Complementar Backfield, Joshua. Functional: Steps for Transforming Into a Functional Programmer. O’ Reilly Media, 2014. Laurent, Simon St.; Introducing Erlang, 2nd Edition, O’Reilly Media., 2017, ISBN: 9781491973370 Juric, Sasa; Elixir in Action, Second Edition, Manning Publications, 2019, ISBN: 9781617295027 Kurt, Will; Get Programming with Haskell, Manning Publications, 2018