Programmazione Funzionale
Introduzione alla programmazione funzionale attraverso OCaml
Ingegneria Informatica, Università Roma Tre, anno accademico 2024/25 (Roma, Italia).
Orario delle lezioni: lunedì e martedì, dalle 12:00 alle 14:00, in aula N11.
Calendario delle lezioni: dal 3 marzo 2025 al 14 giugno 2025.
Docente: Giulio Guerrieri.
Posta elettronica: g.guerrieri[at]sussex.ac.uk
Ricevimento: lunedì e martedì, 14:00-15:00. Altri orari possono essere concordati contattando il docente.
Avvisi:
- Il primo esonero si terrà martedì 29 aprile.
Testo.
Soluzione.
Risultati.
- Le lezioni del 19 e 20 maggio non si terranno.
- Le lezioni del 26 e 27 maggio sono posticipate a:
- giovedì 29 maggio dalle 16:00 alle 18:00, in aula N8;
- venerdì 30 maggio dalle 12:00 alle 14:00, in aula N13.
- Il secondo esonero si terrà martedì 10 giugno.
Testo.
Soluzione.
Risultati.
- Il primo appello d'esame della sessione estiva si terrà martedì 17 giugno.
Testo.
Soluzione.
- Il secondo appello d'esame della sessione estiva si terrà martedì 8 luglio.
Testo.
Soluzione.
- L'appello d'esame della sessione autunnale si terrà martedì 9 settembre.
Testo.
Soluzione.
- L'esame orale è obbligatorio. Possono accedere all'orale chi ha superato l'esame scritto o gli esoneri. L'esame orale si terrà lo stesso giorno dell'esame scritto. Gli studenti esonerati devono comunque iscriversi all'esame scritto (in giugno o luglio), anche se saranno ammessi direttamente all'esame orale.
Lezioni:
Esercitazioni:
Riferimenti bibliografici:
Valutazione anonima del corso da parte degli studenti:
- Del corso mi è piaciuto lo svolgimento delle esercitazioni in aula dove si ragionava insieme per arrivare alla soluzione.
Non mi è piaciuta la spiegazione troppo rapida della parte sui grafi.
-
Il corso è adatto al numero di CFU assegnati, il professore spiega bene e ci mette passione.
Alcune volte durante il corso a mio parere è mancata professionalità.
- Mi è piaciuto che si siano svolti tanti esercizi alla lavagna, si è fatto molto ragionamento in classe ad alta voce, con incoraggiamento al ragionamento e all'ottimizzazione degli algoritmi, senza imparare a memoria. Il materiale è quasi sempre reperibile e esaustivo per lo studio. Mi sono piaciute la materia e la possibilità di portare schemi all'esame.
Non mi è piaciuto il poco uso del compilatore.
- Mi è piaciuta la chiarezza nella spiegazione.
Non mi è piaciuto che siano saltate alcune lezioni e quindi si siano fatti meno esercizi in classe.
-
Ho apprezzato che durante il corso si siano state tante esercitazioni, che il materiale fosse sempre disponibile, comprese le soluzioni. Mi è piaciuta la materia in generale, perché permette di vedere la programmazione sotto un altro punto di vista.
Non mi è piaciuto fare l'esame su carta, avrei preferito usare il compilatore.
- Mi è piaciuta la passione messa durante le spiegazioni e la disponibilità verso ulteriori chiarimenti.
Non mi è piaciuto che talvolta gli orari non sono stati rispettati.
-
Mi è piaciuto l'argomento trattato e la quantità di materiale disponibile per esercitarsi.
Non mi è piaciuto come è stato gestito il tempo dedicato ad ogni argomento, penso che ad alcuni sia stato dedicato troppo tempo ed ad altri troppo poco.
- Mi è piaciuta la disponibilità al chiarimento dei dubbi e la semplicità nelle varie spiegazioni.
Talvolta le comunicazioni sul sito del professore sono state un po' tardive per gli studenti non frequentanti assiduamente le lezioni.
-
L'argomento presentato è molto intrigante e si discosta da certi linguaggi affrontati in passato, il che, una volta comprese le basi permette di scoprire un metodo diverso di approcciarsi alla programmazione. Inoltre il tono amichevole del professore ha reso tutto più leggero.
A volte i materiali didattici risultano scarni.
-
Ho trovato il corso molto stimolante. Inizialmente non è stato semplice approcciarsi a questo nuovo linguaggio. Fare molti esercizi e esercitazioni in aula è stato fondamentale per capire il suo funzionamento e la logica che c'è dietro.
-
Ho apprezzato il coinvolgimento alla materia da parte del professore e l'attenzione nel vedere se uno studente ha capito.
A volte è mancata la puntualità anche se capisco che possa essere dovuto a fattori esterni.
-
Una cosa che ho sicuramente apprezzato del corso è il tempo dedicato alla risoluzione di esercizi (che ho verificato ogni volta a casa, confrontando con le mie soluzioni).
Questo mi ha permesso di apprendere stili di programmazione diversi dal mio e correggere i miei errori.
Invece mi sarebbe piaciuto che le lezioni fosseero registrate, perché purtroppo lavorando ho dovuto studiare solo utilizzanzo il materiale pubblicato sul sito del corso.
Nel complesso la materia è stata molto interessante. È un vero peccato che non esista un corso di Programmazione Funzionale 2.