A.A. 2000-01

Linguaggi di Programmazione I: Paradigmi Prova scritta del 26 settembre 2001: soluzioni

Esercizio 1. Nell’invocazione this.nnn(), la pseudovariabile this fa riferimento (dinamicamente) all’oggetto di tipo D “puntato” dalla variabile x al momento della sua esecuzione. Invece, nell’invocazione super.nnn(), la pseudovariabile super si riferisce (staticamente) all’oggetto in x come membro della superclasse di B, ovvero della classe il cui metodo mmm() contiene testualmente l’invocazione. Il risultato è dunque:

   DDD
   AAA

Esercizio 2.

– Scoping statico: • per valore: 1

• per riferimento: 3

• per nome: 3

– scoping dinamico: • per valore: 0

• per riferimento: 0

• per nome: 3

Esercizio 3. Il tipo dei naturali pari è isomorfo a quello dei naturali “tout court”. Dunque può essere adottata la stessa definizione che per questi ultimi. Basta poi ricotdarsi che il successore del successore di zero rappresenta il quattro, il suo successore il sei, e così via.