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:2021:presentaciones [2021/11/23 19:37] – [Type Systems] smalewskiteaching:cc7110:2021:presentaciones [2021/12/23 11:26] (current) – [CC7110 - Workshop Final] smalewski
Line 1: Line 1:
 ====== CC7110 - Workshop Final  ====== ====== CC7110 - Workshop Final  ======
 +
  
 ===Workshop=== ===Workshop===
   * el día 23 de Diciembre, se organizará un seminario donde todos tienen que participar.    * el día 23 de Diciembre, se organizará un seminario donde todos tienen que participar. 
   * horarios:    * horarios: 
-      * Bloque 110h-12h30 +      * Bloque 1 [10h-12h30]  
 +        * Enzo: Rust ([[https://drive.google.com/file/d/144_uDbXPxJPnQLogY7S5ZiI2oWFUzXDQ/view?usp=drive_web|video]]) 
 +        * José: Ownership Types  
 +        * Andrés: Linear Types  
 +        * Cristián: Liquid Types ([[https://drive.google.com/file/d/1uFlfgIG2Hp52sFsOx6BKjAOnW0kyK-AP/view?usp=sharing|slides]]) 
 +        * Gaspar: Types and effects
       * almuerzo juntos con los que quieren       * almuerzo juntos con los que quieren
-      * Bloque 214h00-16h30+      * Bloque 2 [14h00-16h30]  
 +        * Tomás V: Implicits 1 ([[https://docs.google.com/presentation/d/17llqaj5WkTHA15CWpULB7elJwDgCjqXk/edit?usp=sharing&ouid=100382086267036499345&rtpof=true&sd=true|slides]]) 
 +        * Tomás D: Implicits 2  
 +        * Stefano: Gradual Types ([[https://drive.google.com/file/d/1V05KF6RC5c2u-xn1Y3jHYQ1RT80tQzmw/view?usp=sharing|slides]]) 
 +        * Francisco: Gradual Security Typing ([[https://drive.google.com/file/d/1ujFNc8O8N7hKnHC5P2DEIyZiA5ByMPX6/view?usp=sharing|slides]]) 
  
 ===Presentaciones=== ===Presentaciones===
Line 18: Line 29:
 ===Evaluación=== ===Evaluación===
   * se considerará su presentación (50%), manejo de las preguntas (25%), y su participación general en el workshop (25%)   * se considerará su presentación (50%), manejo de las preguntas (25%), y su participación general en el workshop (25%)
- 
  
 ---- ----
Line 36: Line 46:
  
  
-===Linear types===+===Linear types (Andrés)===
   
 Los sistemas de tipos lineales pertenecen a la familia de sistemas de tipo subesctructurales donde una o más reglas estructurales están ausentes. En particular los sistemas de tipos lineales permiten "exchange", pero no "weakening" o "contraction". Esto quiere decir que cada variable de un programa debe ser usada exactamente una vez.  Los sistemas de tipos lineales pertenecen a la familia de sistemas de tipo subesctructurales donde una o más reglas estructurales están ausentes. En particular los sistemas de tipos lineales permiten "exchange", pero no "weakening" o "contraction". Esto quiere decir que cada variable de un programa debe ser usada exactamente una vez. 
Line 95: Line 105:
  
     * The implicit calculus: a new foundation for generic programming: https://dl.acm.org/doi/10.1145/2345156.2254070     * The implicit calculus: a new foundation for generic programming: https://dl.acm.org/doi/10.1145/2345156.2254070
 +    * Simplicitly: Foundations and Applications of Implicit Function Types: https://dl.acm.org/doi/pdf/10.1145/3158130
  
 ===Variational programming=== ===Variational programming===
Line 109: Line 120:
  
  
-===Rust===+===Rust (Enzo)===
   
 Rust es un lenguaje de programación de software de sistemas que se focaliza en "safety", especialmente para concurrencia segura. Rust es sintácticamente muy parecido a C++, pero esta designado con un rico sistema de tipos que permite un manejo seguro de la memoria y a la vez muy buen desempeño al no contar con un recolector de basura. Rust es un lenguaje de programación de software de sistemas que se focaliza en "safety", especialmente para concurrencia segura. Rust es sintácticamente muy parecido a C++, pero esta designado con un rico sistema de tipos que permite un manejo seguro de la memoria y a la vez muy buen desempeño al no contar con un recolector de basura.