Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revisionPrevious revision
Next revision
Previous revision
teaching:cc4101:tareas:2025-1:tarea2:parte3 [2025/05/11 21:20] – [3.2 Chequeo de tipos] msegurteaching:cc4101:tareas:2025-1:tarea2:parte3 [2025/05/11 22:38] (current) – [3.3 Transformación a CL] msegur
Line 75: Line 75:
  
 <note important> <note important>
-La función ''compatible?'' sólo debe comprobar la compatibilidad //top-level//, es decir, fuera el modificador exterior, los tipos deben ser iguales.  +La función ''compatible?'' sólo debe comprobar la compatibilidad //top-level//, es decir, fuera el modificador exterior, los tipos deben ser iguales. \\  
- +Por ejemplo, ''{lazy Num} -> Num'' **no** es compatible con ''Num -> Num'', pero \\ 
-Por ejemplo, ''{lazy Num} -> Num'' **no** es compatible con ''Num -> Num'', pero+
 ''{lazy {Num -> Num}}'' sí es compatible con ''Num -> Num''. ''{lazy {Num -> Num}}'' sí es compatible con ''Num -> Num''.
 </note> </note>
Line 90: Line 89:
 Ahora que el lenguaje soporta tipos con modificadores, es necesario implementar las semánticas correspondientes. Esto se va a realizar en la transformación de un programa SL a un programa CL. Ahora que el lenguaje soporta tipos con modificadores, es necesario implementar las semánticas correspondientes. Esto se va a realizar en la transformación de un programa SL a un programa CL.
   * (1.0 pto) Modifique la función de transformación para que se apliquen los ajustes necesarios.   * (1.0 pto) Modifique la función de transformación para que se apliquen los ajustes necesarios.
 +
 +<note important>
 +Asegúrese de realizar los ajustes apropiados en el caso ''if''
 +</note>
 +
   * (0.3 ptos) Escriba tests, usando lo implementado en la Parte 1, que evidencien la nueva funcionalidad. Considere todos los casos posibles (incluyendo con funciones de orden superior!).   * (0.3 ptos) Escriba tests, usando lo implementado en la Parte 1, que evidencien la nueva funcionalidad. Considere todos los casos posibles (incluyendo con funciones de orden superior!).