28 DEZEMBRO / SÁBADO / 11:08
FCUP PT 
 EN
 
 
APRESENTAÇÃO
PESSOAS
ENSINO
INVESTIGAÇÃO
BIBLIOTECA
NOTÍCIAS
CONTACTOS

Implementação duma Linguagem Funcional usando Combinadores Compactos

Pedro Baltazar Vasconcelos

Mestrado em Ciência de Computadores
Departamento em Ciência de Computadores
Faculdade de Ciências da Universidade do Porto

Outubro 1998


Resumo

A implementação de linguagens funcionais com semântica não-estrita (i.e., "lazy-evaluation") pode ser efectuada de forma eficiente usando redução de grafos de combinadores.

Nesta dissertação apresentamos uma implementação duma linguagem funcional minimal com semântica não-estrita usando uma nova tradução para uma família de combinadores designados-Cl(K).

Esta tradução apresenta algumas vantagens em relação à tradução clássica para combinadores-SK, nomeadamente reduzindo o número de combinadores introduzidos e tornando a redução em combinadores compactos particularmente eficiente. É também conceptualmente mais simples do que a tradução em super-combinadores e preserva propriedades do programa original, nomeadamente o número de reduções-beta.

Tomando partido desta tradução em combinadores apresentamos um esquema de compilação dum programa funcional que gera código em linguagem C para redução de grafos. Este esquema foi implementado num protótipo de compilador escrito em Prolog.


FCUP 2024