Please use this identifier to cite or link to this item:
https://hdl.handle.net/20.500.12008/26407
How to cite
Title: | Un sistema de tipos gradual para el lenguaje funcional Elixir |
Authors: | Cassola, Mauricio Talagorría, Agustín |
Obtained title: | Ingeniero en Computación |
University or service that grants the title: | Universidad de la República (Uruguay). Facultad de Ingeniería |
Tutor: | Pardo, Alberto Viera, Marcos |
Type: | Tesis de grado |
Keywords: | Programación funcional, Elixir, Sistema de tipos, Gradual typing |
Issue Date: | 2020 |
Abstract: | Elixir es un lenguaje funcional, relativamente nuevo, con tipado dinámico, que busca ser muy potente y tener una sintaxis moderna. Además, es un lenguaje open source, lo que permite el estudio de su código fuente y la colaboración de la comunidad en su crecimiento. En este proyecto se propone un sistema de tipos que haga posible ejecutar un chequeo de tipos de forma estática para un fragmento significativo de Elixir, sin perder su esencia y flexibilidad. El sistema de tipos que se presenta no requiere ningún tipo de cambios en la sintaxis del lenguaje. Está basado en el concepto de tipado gradual, donde el programador decide el grado de chequeos estáticos que quiere que se realicen en su programa. La información de los tipos es proporcionada mediante firmas de funciones con la notación que Elixir provee, a diferencia de otras soluciones donde las colisiones de tipos son detectadas por inferencia. Este enfoque busca combinar los beneficios que el tipado estático y dinámico ofrecen. Se implementa un prototipo, también en Elixir, de un analizador de tipos basado en el sistema de tipos definido. Además, se realizan experimentos de uso de la biblioteca así como de aceptación del enfoque del sistema de tipos. El trabajo deriva en un paper presentado en SBLP 2020: 24th Brazilian Symposium on Programming Languages. |
Publisher: | Udelar.FI |
Citation: | Cassola, M. y Talagorría, A. Un sistema de tipos gradual para el lenguaje funcional Elixir [en línea]. Tesis de grado. Montevideo : Udelar. FI. INCO, 2020. |
License: | Licencia Creative Commons Atribución - No Comercial - Sin Derivadas (CC - By-NC-ND 4.0) |
Appears in Collections: | Tesis de grado - Instituto de Computación |
This item is licensed under a Creative Commons License