Functions should travel first-class

Simão Melo de Sousa
Departamento de Informática
Universidade da Beira Interior

This document in pdf (link).

Abstract

Propomos nesta apresentação uma viagem em torno de uns conceitos fundamentais no desenho de linguagens de programação e dos seus programas.

A nossa viagem de hoje leva-nos para a exploração da noção de função como um valor qualquer no cálculo realizado pelos programas que possamos escrever. Em programação, esta noção de função como cidadã de primeira classe, ao mesmo título que os inteiros, ou quaisquer outros elementos de tipos de dados de uma linguagem de programação, designa-se de expressão lambda em referência ao cálculo-lambda, a mãe de todas as linguagens de programação.

As expressões lambda, originalmente mecanismo de base das linguagens funcionais, popularizaram-se em linguagens de programação maintream.

O programador, mesmo em Java, não escapará ao paradigma funcional!

Para poder lidar verdadeiramente com funções como valores quaisquer, as linguagens de programação e os seus compiladores devem dispôr de alguns mecanismos que exploraremos aqui.

Ilustraremos nesta apresentação estes conceitos usando várias linguagens de programação, das quais destacamos OCaml e Java. Mas poderemos ocasionalmente passear pelo JavaScript ou ainda Python

Exploraremos assim os pontos seguintes:

Slides

Slides for the talk "As funções podem viajar em primeira classe" (link)




any comments are welcomed and appreciated: (please make the obvious changes to the email address) : desousa_ @ _di.ubi.pt


This document was translated from LATEX by HEVEA.