Temas Subtemas
Programación Declarativa: Programación Funcional Tipos e valores. Expresións e definicións.

"Pattern-matching".

Funcións. Funcións recursivas. Terminación. Recursividade terminal. "Currying". Funcións de orde superior.

Tipos parametrizados. Tipos recursivos. Polimorfismo.

Transparencia referencial.

Excepcións.
Programación imperativa Estado da máquina. Variables. Asignación.

Programación estructurada. Estructuras de control: Composición secuencial, alternativa e iterativa.

Procedimentos e funcións. Paso de parámetros por referencia e por valor. Efectos colaterais.

Programación imperativa vs. declarativa.
Programación Orientada a Obxectos Obxectos, atributos e métodos.

Clases e herdanza.

Polimorfismo.

Programación Orientada a Obxectos vs. imperativa.

Programación Orientada a Obxectos vs. declarativa.
A linguaxe de programación Objective Caml Programación funcional, imperativa e orientada a obxectos en Ocaml.

Os compiladores de Ocaml.

Entrada / Saída.

Módulos e librerías.

Abstracción, encapsulación e compilación separada. Módulos, interfaces e signaturas.