Título: | TYPING DYNAMIC LANGUAGES: A REVIEW | ||||||||||||
Autor: |
HUGO MUSSO GUALANDI |
||||||||||||
Colaborador(es): |
ROBERTO IERUSALIMSCHY - Orientador |
||||||||||||
Catalogação: | 25/JUL/2016 | Língua(s): | ENGLISH - UNITED STATES |
||||||||||
Tipo: | TEXT | Subtipo: | THESIS | ||||||||||
Notas: |
[pt] Todos os dados constantes dos documentos são de inteira responsabilidade de seus autores. Os dados utilizados nas descrições dos documentos estão em conformidade com os sistemas da administração da PUC-Rio. [en] All data contained in the documents are the sole responsibility of the authors. The data used in the descriptions of the documents are in conformity with the systems of the administration of PUC-Rio. |
||||||||||||
Referência(s): |
[pt] https://www.maxwell.vrac.puc-rio.br/projetosEspeciais/ETDs/consultas/conteudo.php?strSecao=resultado&nrSeq=26999&idi=1 [en] https://www.maxwell.vrac.puc-rio.br/projetosEspeciais/ETDs/consultas/conteudo.php?strSecao=resultado&nrSeq=26999&idi=2 |
||||||||||||
DOI: | https://doi.org/10.17771/PUCRio.acad.26999 | ||||||||||||
Resumo: | |||||||||||||
Programming languages have traditionally been classified as either statically
typed or dynamically typed, the latter often being known as scripting
languages. Dynamically typed languages are very popular for writing smaller
programs, a setting where ease of use and flexibility of the language are highly
valued. However, with time, small scripts tend to evolve into large systems
and the flexibility of the dynamic language may become a source of program
defects. For these larger systems, static typing, which offers compile-time
error detection, improved documentation and optimization opportunities, becomes
more attractive. Since rewriting the whole system in a statically typed
language is not ideal from a software engineering point of view, investigating
ways of adding static types to existing dynamically typed programs has been
a thriving research area. In this work, we present a historical overview of this
research. We focus on general approaches that apply to multiple programming
languages, such as the Type Hints of Common LISP, the Soft Typing of
Fagan et al and the Gradual Typing of Siek et al, contrasting these different
solutions from a modern perspective.
|
|||||||||||||
|