Análisis estático de tipos para lenguajes de tipado dinámico

Los sistemas de tipos son una herramienta formal que permiten clasificar las distintas construcciones de un lenguaje de programación (valores, expresiones, etc.) en distintas categorías, llamadas tipos. Con ello se pretende detectar posibles inconsistencias entre las distintas variables y expresione...

Full description

Bibliographic Details
Author: Suárez García, Gorka
Format: doctoral thesis
Publication Date:2022
Country:España
Repository:Docta Complutense
Language:Spanish
OAI Identifier:oai:docta.ucm.es:20.500.14352/3743
Online Access:https://hdl.handle.net/20.500.14352/3743
Access Level:Open access
Keyword:004.421(043.2)
004.438Erlang (043.2)
004.43(043.2)
Algoritmos computacionales
ERLANG (Lenguaje de programación)
Computer Algorithms
ERLANG (Computer program language
Programming languages (Electronic computers)
Sistemas expertos
Description
Summary:Los sistemas de tipos son una herramienta formal que permiten clasificar las distintas construcciones de un lenguaje de programación (valores, expresiones, etc.) en distintas categorías, llamadas tipos. Con ello se pretende detectar posibles inconsistencias entre las distintas variables y expresiones de un programa. Existen distintos enfoques en la aplicación de un sistema de tipos. Por un lado tenemos lenguajes como C++ con tipado estático, donde la comprobación de tipos se realiza en tiempo de compilación, y por el otro tenemos los lenguajes con tipado dinámico como Erlang, donde la comprobación de tipos se realiza en tiempo de ejecución. Como consecuencia de la naturaleza de los lenguajes de tipado dinámico, la detección de errores en los programas se realiza durante las fases de prueba y depuración. No obstante, existen herramientas que permiten la detección automática de errores de tipo en un programa sin necesidad de ejecutarlo. Estas herramientas aplican metodologías propias de análisis estático de tipos a lenguajes de tipado dinámico...