Estudio de un lenguaje gradual con subtipos nominales
Professor Advisor
dc.contributor.advisor
Toro Ipinza, Matías
Professor Advisor
dc.contributor.advisor
Tanter, Éric
Author
dc.contributor.author
Castillo Morales, Enzo Miguel
Associate professor
dc.contributor.other
Mosso Chávez, Fabián
Associate professor
dc.contributor.other
Olmedo Berón, Federico
Admission date
dc.date.accessioned
2025-04-25T17:16:46Z
Available date
dc.date.available
2025-04-25T17:16:46Z
Publication date
dc.date.issued
2024
Identifier
dc.identifier.uri
https://repositorio.uchile.cl/handle/2250/204567
Abstract
dc.description.abstract
En el mundo de la programación existen diversas formas de clasificar
a los lenguajes de programación, una de estas clasificaciones
corresponde al tratamiento que realiza el lenguaje respecto a los
sistemas de tipos, clasificándolos en sistemas estáticos y dinámicos.
Los sistemas estáticos reducen errores y tiempo de ejecución, pero
son más restringidos y toman más tiempo para aprender y desarrollar.
Por otro lado, los sistemas dinámicos son fáciles de aprender y utilizar,
pero no ofrecen muchas garantías y son más difíciles de optimizar. Ambos
sistemas tienen sus ventajas y son adecuados para diversas situaciones y
propósitos.
Bajo este contexto surge la búsqueda de un sistema que permita
mezclar las ventajas de ambos sistemas, permitiéndole al programador
elegir que enfoque utilizar a cada momento. Esto produce la creación de
nuevos sistemas de tipos, entre ellos los tipos graduales, que cumplen
con este objetivo. Pero la creación de un lenguaje gradual es complicado,
en muchos casos realizados de manera ad hoc, lo que dificulta el proceso
de creación de un lenguaje gradual o gradualización de un lenguaje estático.
Esto motiva el desarrollo de distintas formas para estandarizar la
gradualización de un lenguaje, entre las cuales destacamos a AGT.
AGT entrega una fundación teórica para el desarrollo de lenguajes graduales
y ha sido utilizado para el desarrollo de diversos lenguajes graduales.
Sin embargo la mayoría de estos lenguajes consisten en lenguajes funcionales
o lenguajes con subtipado estructural, lo que abre la puerta para
realizar una investigación sobre el uso de AGT en un lenguaje orientado
a objetos con subtipos nominales. El objetivo de este estudio consiste
en utilizar AGT para gradualizar un lenguaje con subtipos nominales,
clases y objetos, y examinar cuáles son las dificultades o problemas que surgen
al realizar este proceso.
Inicialmente se buscó gradualizar un lenguaje completo, si bien pequeño,
pero durante el desarrollo de la investigación se descubrió que la
mayoría de los problemas se encuentran al momento de lidiar con la
herencia y subtipado entre clases, entonces se buscó modelar este
problema de forma más minimalista, concentrándose en este aspecto. A
partir de esto se logró desarrollar una teoría y construir un modelo sobre
dicho problema, el cual puede ser aplicado a un lenguaje con subtipado
nominal para asistir en su gradualización. Este modelo puede ser
expandido y explorado más a fondo, motivando así futuras investigaciones
en el área.
es_ES
Lenguage
dc.language.iso
es
es_ES
Publisher
dc.publisher
Universidad de Chile
es_ES
Type of license
dc.rights
Attribution-NonCommercial-NoDerivs 3.0 United States