Differences
This shows you the differences between two versions of the page.
| Next revision | Previous revision | ||
| teaching:cc4101:tareas:2022-1:tarea2:parte3 [2022/05/04 15:58] – created tdiaz | teaching:cc4101:tareas:2022-1:tarea2:parte3 [2023/05/08 16:03] (current) – [3.1 Modificadores] tvallejos | ||
|---|---|---|---|
| Line 41: | Line 41: | ||
| | <id> | | <id> | ||
| | {<SL> <SL>} | | {<SL> <SL>} | ||
| - | | {fun < | + | | {fun {<sym> : <mtype>} : < |
| | {printn <SL>} | | {printn <SL>} | ||
| Line 53: | Line 53: | ||
| | {< | | {< | ||
| </ | </ | ||
| - | (Note la definición mutuamente recursiva entre ''< | ||
| * (0.1 ptos) Modifique la definición de '' | * (0.1 ptos) Modifique la definición de '' | ||
| Line 60: | Line 59: | ||
| **Hint**: si bien en la sintaxis solo existen dos modificadores, | **Hint**: si bien en la sintaxis solo existen dos modificadores, | ||
| + | |||
| + | **Observaciones**: | ||
| + | * Note la definición mutuamente recursiva entre ''< | ||
| + | * Se puede pensar '' | ||
| + | * Note también que los modificadores solo se pueden aplicar al dominio y al codominio. Por lo que una funcion no puede tener tipo '' | ||
| ---- | ---- | ||
| Line 82: | Line 86: | ||
| Para una correcta transformación, | Para una correcta transformación, | ||
| * Si se requiere un argumento con estrategia lazy o by-name, y se usa un argumento que tiene evaluación temprana, entonces hay que ajustar la expresión de tal manera que se retrase su evaluación. | * Si se requiere un argumento con estrategia lazy o by-name, y se usa un argumento que tiene evaluación temprana, entonces hay que ajustar la expresión de tal manera que se retrase su evaluación. | ||
| + | * Una forma de retrasar la evaluación de una expresión '' | ||
| * Si se requiere una evaluación temprana y el argumento fue declarado lazy o by-name, entonces es necesario ajustarlo para que efectivamente se evalúe en ese punto. | * Si se requiere una evaluación temprana y el argumento fue declarado lazy o by-name, entonces es necesario ajustarlo para que efectivamente se evalúe en ese punto. | ||
| * Si tanto la función como el argumento calzan en la estrategia, entonces no es necesario hacer cambios. | * Si tanto la función como el argumento calzan en la estrategia, entonces no es necesario hacer cambios. | ||

