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:cc7110 [2019/06/07 16:10] mtoroteaching:cc7110 [2023/12/18 15:45] (current) etanter
Line 3: Line 3:
 **Objetivo general** **Objetivo general**
  
-El curso entrega los elementos técnicos y formales necesarios para entender la problemática de garantizar que los programas cumplen con sus objetivos, limitando efectos indeseados, lo más temprano posible. Se estudian las nociones de programas válidos, errores y excepciones, contratos, y sobre todo, tipos. En particular, se describen los conceptos fundamentales de los sistemas de tipos, permitiendo entender porque los lenguajes de hoy siguen evolucionando en ese aspecto (por ejemplo, el sistema de tipos de Java), y porque no existe una respuesta única y definitiva al problema. El alumno será capaz además de relacionar un sistema de tipo con la semántica del lenguaje, demostrando su coherencia. Además de proveer un entendimiento más profundo de los lenguajes de programación, el curso habilita a los alumnos para diseñar (extensiones de) lenguajes que proveen garantías fuertes de buen comportamiento.+El curso entrega los elementos técnicos y formales necesarios para entender la problemática de garantizar que los programas cumplen con sus objetivos, limitando efectos indeseados, lo más temprano posible. Se estudian las nociones de programas válidos, errores y excepciones, contratos, y sobre todo, tipos. En particular, se describen los conceptos fundamentales de los sistemas de tipos, permitiendo entender porque los lenguajes de hoy siguen evolucionando en ese aspecto, y porque no existe una respuesta única y definitiva al problema. El alumno será capaz además de relacionar un sistema de tipo con la semántica del lenguaje, demostrando formalmente su coherencia. Además de proveer un entendimiento más profundo de los lenguajes de programación, el curso habilita a los alumnos para diseñar (extensiones de) lenguajes que proveen garantías fuertes de buen comportamiento.
  
 //Este curso es parte de los grupos de cursos recomendados para las lineas de especialización en Ciencia de la Computación y en Ingeniería de Software.// //Este curso es parte de los grupos de cursos recomendados para las lineas de especialización en Ciencia de la Computación y en Ingeniería de Software.//
Line 41: Line 41:
 El curso termina con una mini-conferencia donde los estudiantes presentan temas estudiados en base a artículos y/o capítulos de libros. El curso termina con una mini-conferencia donde los estudiantes presentan temas estudiados en base a artículos y/o capítulos de libros.
  
-** Horario ** +[[teaching:cc7110:2023:presentaciones|Presentaciones 2023]]
- +
-2019/11.4-3.4 +
- +
-** Trail 2019/1 ** +
-    * 18/03Intro +
-    * 20/03PFPL Cap 1 +
-    * 25/03: PFPL Cap 2 +
-    * 27/03: PFPL Cap 3 + ejercicios +
-    * **mini-tarea 1** (27/03-07/04) +
-    * 01/04: PFPL Cap 4 +
-    * 03/04: PFPL Cap 5 (hasta 5.2) +
-    * 08/04: PFPL Cap 5 y Cap 6 (hasta 6.1) +
-    * 10/04: PFPL Cap 6 + corrección mini tarea 1 +
-    * 15/04: **mini-control 1** + PFPL Cap 7 +
-    * 17/04: PFPL Cap 8 +
-    * 22/04: PFPL Cap 10 (menos 10.3), intro Cap 11 +
-    * **mini-tarea 2** (23/04-30/04) +
-    * 24/04: PFPL Cap 11 +
-    * 29/04: PFPL Cap 12 (statics) +
-    * 06/05: PFPL Cap 12 (dynamics) + PFPL Cap 9 +
-    * 08/05: //paro// +
-    * 13/05: **mini-control 2** + Coq demo +
-    * 15/05: //paro// +
-    * 20/05-22/05: //vacaciones// +
-    * 27/05: PFPL Cap 16 (hasta 16.2) +
-    * 29/05: PFPL Cap 16 y Cap 17 (intro) +
-    * 03/06: PFPL Cap 17 +
-    * 05/06: TAPL Cap 13  +
- +
- +