Inizio della pagina -
Logo DISCO
|
Visita la Versione ad elevata leggibilità
|
Vai al Contenuto della pagina
|
Vai alla Fine dei contenuti
|
Vai al Menu Principale
|
Vai alla Barra di navigazione (sei in)
|
Vai al Menu di navigazione (albero)
|
Vai alla Lista dei comandi
|
Vai alla Lista degli approfondimenti
|
Vai al Menu inferiore
|
Logo Ateneo
   
Per gli Studenti
Linguaggi di programmazione

Codice ins.

Insegnamento

CFU ins.

Tipo ins.

Anno

Sem.

SSD ins.

Responsabile insegnamento

E3101Q108

Linguaggi di programmazione

8

OBB

2

1

INF/01

ANTONIOTTI Marco

 

Programming Languages

 

 

 

 

 

 

Docente turno A-L: Pasi Gabriella
Docente turno M-Z: Antoniotti Marco

Contenuti:
L’insegnamento ha l’obiettivo di mostrare il panorama dei paradigmi di programmazione secondo la tradizionale suddivisione tra paradigma imperativo, paradigma logico (dichiarativo) e paradigma funzionale.

Risultati di apprendimento previsti:
Gli studenti avranno familiarizzato con i vari stili di programmazione e con gli strumenti usati per i principali linguaggi presentati nell'insieme dei moduli del corso.  Gli studenti saranno in grado di sviluppare progetti di piccole e medie dimensioni in C, (Common) Lisp e Prolog utilizzando gli ambienti di programmazione tipici dei tre linguaggi presentati.

Prerequisiti:
Concetti di base di programmazione ricorsiva, logica matematica e di architetture hardware e software.

Metodi Didattici:
Il corso si svolgerà mediante lezioni frontali in presenza e con l’ausilio di sistemi di e-learning per la distribuzione del materiale didattico e di esercizi e progetti.

Programma:

  • I paradigmi di programmazione: imperativo, logico (dichiarativo) e funzionale.  Richiami delle nozioni di “run-time” e di esecuzione di un programma su un’architettura idealizzata a pila (stack).  Nozioni base degli ambienti di programmazione per i diversi sistemi presentati.
  • Il paradigma di programmazione funzionale.
    • Introduzione al linguaggio di programmazione LISP (Common Lisp).
  • Il paradigma di programmazione logico.
    • Introduzione al linguaggio di programmazione Prolog.
  • Il paradigma di programmazione imperativo.
    • Introduzione al linguaggio di programmazione C.
  • Utilizzo dei vari paradigmi in situazioni e contesti diversi.


Modalità di verifica dell’apprendimento:
Tipo esame
:
Scritto e orale (facoltativo)

Tipo valutazione:
Voto finale

Aims and contents:
The course will provide students with a panoramic view of the main programming language paradigms: imperative, logic (declarative) and functional.

Learning outcomes:
The students will familiarize themselves with various programming stiles and with the most common programming environments for the languages presented during the course.  The students will acquire the ability to develop small and medium sized projects in C, (Common) Lisp and Prolog, while using the programming environments presented.

Prerequisites:
Basic concepts of recursive programming, mathematical logic and hardware/software architecture.

Teaching methodologies
:
The course will be offered as a set of standard lectures during the term.  “e-Learning” support will also be provided for the distribution of course material, exercises and project descriptions.

Syllabus:

  • Programming languages paradigms: imperative, logical (declarative) and functional.  Notions recall of “run-time”, program execution on an idealized stack architecture.  Basic notions about programming environment for the different systems presented.
  • The functional programming paradigm.
    • Introduction to the (Common) Lisp programming language.
  • The logic programming paradigm.
    • Introduction to the Prolog programming language.
  • The imperative programming paradigm.
    • Introduction to the C programming language.
  • Using the different paradigms in a variety of contexts.

Learning Verification Modalities:
Exam type: 

Written and oral (optional)

Evaluation type:
Final grade

Approfondimenti

Google Translate
Translate to English Translate to French Translate to German Translate to Spanish Translate to Chinese Translate to Portuguese Translate to Arabic
Translate to Albanian Translate to Bulgarian Translate to Croatian Translate to Czech Translate to Danish Translate to Dutch Translate to Finnish Translate to Greek Translate to Hindi
Translate to Hungarian Translate to Irish Translate to Japanese Translate to Korean Translate to Norwegian Translate to Polish Translate to Romanian Translate to Russian Translate to Serbian
Translate to Slovenian Translate to Swedish Translate to Thai Translate to Turkish

(C) Copyright 2016 - Dipartimento Informatica Sistemistica e Comunicazione - Viale Sarca, 336
20126 Milano - Edificio U14
redazioneweb@disco.unimib.it - ultimo aggiornamento di questa pagina 11/11/2013