• Non ci sono risultati.

Linguaggi di Programmazione I: Paradigmi secondo “esonero” data di assegnazione

N/A
N/A
Protected

Academic year: 2021

Condividi "Linguaggi di Programmazione I: Paradigmi secondo “esonero” data di assegnazione"

Copied!
1
0
0

Testo completo

(1)

A.A. 2002-03

Linguaggi di Programmazione I: Paradigmi

secondo “esonero”

data di assegnazione: 24 aprile 2003 data di consegna: 5 maggio 2003

Indichiamo con n la codifica di Church di un numero naturale n. Ricordiamo che in ML n ha tipo (’a -> ’a) -> (’a -> ’a). Abbiamo visto che, dati due numeri di Church n ed m, il termine n(m) denota il numero di Church m

n

. Una funzione ML che dato n calcolasse n

n

avrebbe dunque la forma fn x ⇒ x x.

Sappiamo tuttavia che tale termine non ` e tipabile in ML. Ci` o ` e invece possibile in F 2! Sia strip la funzione definita induttivamente sui termini di F 2 che elimina le annotazioni sui tipi:

strip (k) = k strip (x) = x

strip (λ x : A . M ) = fn x ⇒ strip (M) strip (M N ) = strip (M ) strip (N ) strip (Λ X . M ) = strip (M )

strip (M A) = strip (M )

Trovare un termine M di F 2 tale che strip (M ) = fn x ⇒ x x.

Per la lode. Dunque, usando un tale termine, si dovrebbe poter scrivere in F 2

un termine che, se strippato ed eseguito con la semantica del lambda calcolo, va

in loop . . . o no?

Riferimenti

Documenti correlati

[r]

1 Si consiglia la lettura del capitolo 5

Definire in SML un datatype term che implementi la sintassi del linguag- gio Fun con annotazioni esplicite dei tipi.. Scrivere un programma SML che esegua il type checking dei

Si ritiene che l’Apatosauro mangiasse principalmente piante basse ma, se il suo collo fosse stato davvero flessibile, potrebbe aver mangiato anche le foglie tenere in cima

• Richiede tuttavia di un processo di traduzione da Assembly a linguaggio macchina, ma a differenza dei linguaggi ad alto livello la corrispondenza è 1:1 (ad ogni istruzione

Selezionare un disegno di studio qualitativo adeguato al tipo di quesito di ricerca individuato.. Fornire una spiegazione razionale per stabilire la dimensione del campione di uno

 Atipici: es: i fogli elettronici possono essere considerati linguaggi di programmazione in cui, in una certa misura, le relazioni temporali sono sostituite da relazioni spaziali

La scelta di un simile sistema di riferimento fa sì che la funzione peso, in ogni punto, sia un vettore avente componente nulla lungo l’asse z.. 1.B), mentre il primo ed il