-
*
MATR - Macchine Astratte e Tecniche per la Realizzazione dei linguaggi di programmazione
+
PL-LTE - Language Translation and Execution
Linguaggi di programmazione. Macchina di Turing. Tesi di ChurchTuring. Traduzione: compilazione ed interpretazione. La Macchina di Turing come interprete. Gerarchia di linguaggi di programmazione e di macchine astratte: linguaggi macchina, linguaggi assembler, linguaggi di alto livello.
-
*
LF - Linguaggi Formali
+
PL-LTE - Language Translation and Execution
Linguaggi: Definizioni preliminari (alfabeto, parola, stringa, uguaglianza tra parole, concatenazione di parole, potenza di parole, sottostringa, prefisso, suffisso, monoide libero generato da un insieme). Linguaggi formali. Inquadramento della teoria dei linguaggi formali nell'informatica teorica.
-
*
LF - Linguaggi Formali
+
PL-LTE - Language Translation and Execution
Classificazione di Chomsky. Operazioni sui linguaggi (unione, concatenazione, iterazione, complemento, intersezione, potenza e riflessione) e proprietà di chiusura delle classi di linguaggi rispetto alle operazioni.
-
*
LF - Linguaggi Formali
+
PL-LTE - Language Translation and Execution
Generazione di linguaggi: un'introduzione alle grammatiche. Carte sintattiche e BackusNaur Form, grammatiche generative o a struttura di frase, derivazione diretta, derivazione, linguaggio generato da una grammatica, forma di frase, frase, equivalenza tra grammatiche, relazione tra grammatiche e linguaggi, non determinismo, correttezza di una grammatica: indecidibilità del problema. Linguaggi liberi dal contesto e dipendenti dal contesto.
-
*
LF - Linguaggi Formali
+
AL-BACC - Basic Automata, Computability and Complexity
Linguaggi regolari, espressioni regolari, automi e linguaggi a stati finiti. Teorema di equivalenza delle classi di linguaggi riconosciuti da automi a stati finiti deterministici e non deterministici, teorema di equivalenza delle classi di linguaggi regolari, a stati finiti e lineari destri (teorema di Kleene).
-
*
TTCI - Tecniche di Traduzione: Compilatori e Interpreti
*
PL-SyA - Syntax Analysis
Compilazione e Interpretazione. Il modello di un compilatore: fase di analisi.
-
*
TTCI - Tecniche di Traduzione: Compilatori e Interpreti
*
PL-RS - Runtime Systems
Compilazione e Interpretazione. Il modello di un compilatore: fase di sintesi. Tabella dei simboli: costruzione ed interazione, contenuti, operazioni, organizzazione per linguaggi a blocchi e non, rappresentazione.
-
*
S - Semantica
PL-FS - Formal Semantics
Semantica denotazionale, semantica operazionale e cenni di semantica assiomatica. Analisi di programmi.
-
MP - Metodologie di Programmazione
+
PL-PP - Programming paradigms (Imperative, Functional, ?)
Paradigmi di programmazione ed evoluzione dei linguaggi di programmazione.