• Non ci sono risultati.

Progetti di Paradigmi dott. Ivano Salvo Universit`a di Roma ”La Sapienza” email: salvo@dsi.uniroma1.it Anno Accademico 2002-03

N/A
N/A
Protected

Academic year: 2021

Condividi "Progetti di Paradigmi dott. Ivano Salvo Universit`a di Roma ”La Sapienza” email: salvo@dsi.uniroma1.it Anno Accademico 2002-03"

Copied!
1
0
0

Testo completo

(1)

Progetti di Paradigmi

dott. Ivano Salvo

Universit` a di Roma ”La Sapienza”

email: salvo@dsi.uniroma1.it Anno Accademico 2002-03

Il progetto di Paradigmi consiste nell’implementazione in LISP di uno dei due seguenti moduli. La data di consegna `e il 3 giugno 2003.

1. (MicroLisp)

(a) Implementare una funzione LISP mylisp che attiva un micro-interprete LISP interattivo. Il linguaggio interpretato dal micro-interprete dovr` a almeno con- tenere le espressioni: mydefun, mysetq, myquote, myif, le costanti numeriche e mynil, mytrue, e i predicati mynull, myatom, mynumberp, mylistp.

Facoltativi sono: mylet, mylambda, ... e le funzioni predefinite sulle liste.

(b) (Facoltativo) Implementare pi` u di un interprete, tra le quattro possibilit` a of- ferte dalle scelte: lazy/eager evaluation e static/dynamic binding, esibendo per ciascuna coppia di interpreti almeno un esempio di espressione che viene valutata in modo diverso.

2. (Type Inference)

(a) Implementare in LISP un algortimo di type inference per F1, che interattivamente accetta una espressione di F1 e restituisce in output il tipo principale. I termini di F1 vengono scritti in sintassi LISP-like, e cio`e sono termini generati dalla seguente sintassi:

exp = x | (lambda x exp) | (exp exp)

(b) (Facoltativo) Implementare l’algoritmo W di Milner di type inference sul core calculus di ML, cio`e su F1 arricchito con un’espressione:

exp = (let (x exp) exp)

(c) (Facoltativo) Estendere la sintassi con la possibilit` a di avere definizioni simul- tanee (da trattarsi come ML tratta le definizioni legate dalla parola chiave and:

exp = (let ((x

1

exp

1

) . . . (x

n

exp

n

)) exp)

Riferimenti

Documenti correlati

che abbiamo frequentato più volte in relazione allo studio della storia e delle fonti. Hanno saputo, perché lo hanno conosciuto in diverse occasioni , come si é evoluta ed é

Questo da un lato ci tranquillizza, perch´ e il sistema ` e molto pi` u facile da gestire, ma non possiamo negare che la presenza della terza equazione ci avrebbe aiutato a trovare

Ad esempio, dovendo scrivere una procedura risolutiva per il problema della moltiplicazione tra due numeri, converr` a utilizzare il fatto che un esecutore che sa solo sommare 1,

Domanda 3: Facoltativo: Scrivere una funzione ricorsiva che risolve lo stes- so problema con un’unica scansione del vettore [Sugg: scrivere una funzione ausi- liaria con

Vorrei, inoltre, ringraziare anche tutti coloro che mi hanno fatto compagnia in questo periodo passato al Centrospazio, per i loro consigli, ma anche, e sopratutto per il

Domenico Di Salvo è conferito l’incarico di funzione dirigenziale di livello non generale per l’espletamento della funzione ispettiva (Unità organica semplice) presso il

La descrizione dell’habitat 3280 nel manuale europeo di interpretazione degli habitat rileva l’eterogeneità della vegetazione e caratterizza questo tipo di habitat costituito

Il sistema di controllo e protezione della sottostazione, installato all’interno della cabina elettrica di sottostazione, è necessario per il buon funzionamento degli organi di alta