Differences
This shows you the differences between two versions of the page.
Next revision | Previous revision | ||
teaching:cc4101:tareas:2021-1:tarea3 [2021/06/17 14:20] – created tvallejos | teaching:cc4101:tareas:2021-1:tarea3 [2021/07/06 16:01] (current) – [Objetos como valores (3,0 ptos.)] bortiz | ||
---|---|---|---|
Line 17: | Line 17: | ||
En esta tarea extenderemos un lenguaje base para soportar objetos y delegación. El lenguaje base tiene números, booleanos y operaciones sobre ellos. Además contiene expressiones '' | En esta tarea extenderemos un lenguaje base para soportar objetos y delegación. El lenguaje base tiene números, booleanos y operaciones sobre ellos. Además contiene expressiones '' | ||
+ | |||
+ | <note warning> | ||
+ | * la tarea se debe realizar SIN usar macros | ||
+ | * los objetos NO deben ser codificados como lambdas: un objectV es una estructura que agrega campos y métodos (y de alguna forma, el ambiente para las variables libres), así como su padre en el caso de la delegación. (*) | ||
+ | |||
+ | En resumen, del OOPLAI, tienen que reusar *los conceptos*, no el código. | ||
+ | Además, pueden usar OBJECT-DEL del OOPLAI como semántica de referencia, para consultar como se debe comportar su lenguaje. | ||
+ | |||
+ | (*) nada de '' | ||
+ | </ | ||
===== Objetos como valores (3,0 ptos.) ===== | ===== Objetos como valores (3,0 ptos.) ===== | ||
Line 39: | Line 49: | ||
* '' | * '' | ||
* '' | * '' | ||
- | * una definición de campo ('' | + | * una definición de campo ('' |
* una definición de método ('' | * una definición de método ('' | ||