Page begin -
Logo DISCO
|
Go to the Highly accessible area
|
Go to the Content page
|
Go to the End of content
|
Go to the Main menu
|
Go to the Navigation Bar (location)
|
Go to the Navigation menu (tree)
|
Go to the Commands list
|
Go to the Further readings
|
Go to the Bottom Menu
|
Logo Ateneo
   
Education
Linguaggi di programmazione I

Docente: M. Antoniotti, G. Pasi, L. Pomello, G. Vizzari, C. Simone

Crediti: 12 CFU

Obiettivi dell'insegnamento:

L'insegnamento è articolato in tre moduli.
Il primo presenta i paradigmi di programmazione dichiarativa (funzionale, logico e a regole); il secondo introduce i concetti di base dei linguaggi formali e della computabilità; il terzo prevede attività di programmazione in laboratorio.
 

Descrizione e Programma dell'insegnamento:

  • Linguaggi e Computabilità 4 CFU


Obiettivi:

Mettere in relazione elementi della teoria dei linguaggi formali con 
le basi dell'analisi lessicale e sintattica dei linguaggi di 
programmazione.
Introdurre elementi di base della teoria della computabilità.

Programma:

Automi a stati finiti, linguaggi regolari e espressioni regolari.Linguaggi e grammatiche libere da contesto e automi a pila.
Verso i modelli concorrenti: il prodotto di automi.
Elementi di computabilità: la macchina di Turing e le funzioni 
parziali ricorsive; la tesi di Church-Turin. La macchina di Turing 
universale. Problemi non risolvibili.

  • Paradigmi di Programmazione 4 CFU


Obiettivi:

Presentare alcuni paradigmi alla base dei linguaggi di programmazione.

Introduzione al paradigma funzionale e a quello logico.

Programmazione ricorsiva.

 

Programma:

Il paradigma di programmazione funzionale.

Introduzione al linguaggio di programmazione LISP.

Il paradigma di programmazione logico.

Introduzione al linguaggio di programmazione Prolog.

Introduzione ai linguaggi di programmazione basati su regole;

JESS (linguaggio a regole per la piattaforma JAVA).

  • Laboratorio di linguaggi di programmazione 4 CFU


Obiettivi:
Familiarizzare gli studenti con i vari stili di programmazione e con gli strumenti usati per i principali linguaggi presentati nell'insieme dei moduli del corso.  Gli studenti svolgeranno esercizi e progetti di piccole dimensioni in (Common) Lisp, Prolog e Jess, al fine di approfondire la loro comprensione dei vari paradigmi di programmazione.

Programma:
Ambienti LISP.
Programmazione LISP: esercizi e progetti.
Ambienti Prolog.
Programmazione Prolog: esercizi e progetti.
Ambiente Jess.
Programmazione Jess: esercizi e progetti.

Further readings
(C) Copyright 2016 - Dipartimento Informatica Sistemistica e Comunicazione - Viale Sarca, 336
20126 Milano - Edificio U14
redazioneweb@disco.unimib.it - last update of this page 25/03/2011