La presentazione è in caricamento. Aspetta per favore

La presentazione è in caricamento. Aspetta per favore

1 Invocazione di metodi Com := Path Id (Expr_list) 4 path trattati come nelle variabili  path p’ 4 Risoluzione del nome: Ide * (Ide | Loc) * Cenv * Heap.

Presentazioni simili


Presentazione sul tema: "1 Invocazione di metodi Com := Path Id (Expr_list) 4 path trattati come nelle variabili  path p’ 4 Risoluzione del nome: Ide * (Ide | Loc) * Cenv * Heap."— Transcript della presentazione:

1 1 Invocazione di metodi Com := Path Id (Expr_list) 4 path trattati come nelle variabili  path p’ 4 Risoluzione del nome: Ide * (Ide | Loc) * Cenv * Heap  fmet Ide * Blocco * (Ide | Loc)

2 2 Risoluzione del nome (nella classe) Ide * (Ide | Loc) * Cenv * Heap  fmet Ide * Blocco * (Ide | Loc)  (c) = (c1, _, , _, _) mdefined(f,   ) _____________________________________________  fmet  (f)  (c) = (c1, _, , _, _) not mdefined(f,   )  fmet md _____________________________________________  fmet md

3 3 Risoluzione del nome (nell’oggetto) Ide * (Ide | Loc) * Cenv * Heap  fmet Ide * Blocco * (Ide | Loc)  (l) = (c, _,  ) mdefined(f,   ) _____________________________________________  fmet  (f)  (l) = (c, _,  ) not mdefined(f,   )  fmet md _____________________________________________  fmet md

4 4 Invocazione di metodi Com := Id (Expr)  un solo argomento Com * Cenv * Heap * Astack  com Heap * Astack * Cenv Ide * (Ide | Loc) * Cenv * Heap  fmet Ide * Blocco * (Ide | Loc) top(  ) = (x, _)  path p’  fmet (par, b, y)  expr  = bind(newframe(), par, v)  ’ = push( , (y, push(emptystack(),  )))  com ________________________________________________  com

5 5 Invocazione di metodi: commenti top(  ) = (x, _)  path p’  fmet (par, b, y)  expr  = bind(newframe(), par, v)  ’ = push( , (y, push(emptystack(),  )))  com ________________________________________________  com 4 si effettua la ricerca del metodo a partire dalla classe o dall’oggetto contenuti nella testa della pila 4 si valuta il parametro attuale 4 si crea un nuovo stack di frames, il cui unico frame contiene l’associazione tra parametro formale e valore del parametro attuale 4 si pusha sulla pila il record che contiene la classe o l’oggetto associato al metodo e la pila di frames 4 si valuta il corpo del metodo


Scaricare ppt "1 Invocazione di metodi Com := Path Id (Expr_list) 4 path trattati come nelle variabili  path p’ 4 Risoluzione del nome: Ide * (Ide | Loc) * Cenv * Heap."

Presentazioni simili


Annunci Google