Type Soundness for Path Polymorphism

Autores
Viso, Andrés Ezequiel; Bonelli, Eduardo Augusto; Ayala Rincón, Mauricio
Año de publicación
2016
Idioma
inglés
Tipo de recurso
artículo
Estado
versión publicada
Descripción
Path polymorphism is the ability to define functions that can operate uniformly over arbitrary recursively specified data structures. Its essence is captured by patterns of the form xy which decompose a compound data structure into its parts. Typing these kinds of patterns is challenging since the type of a compound should determine the type of its components. We propose a static type system (i.e. no run-time analysis) for a pattern calculus that captures this feature. Our solution combines type application, constants as types, union types and recursive types. We address the fundamental properties of Subject Reduction and Progress that guarantee a well-behaved dynamics. Both these results rely crucially on a notion of pattern compatibility and also on a coinductive characterisation of subtyping.
Fil: Viso, Andrés Ezequiel. Universidad de Buenos Aires. Facultad de Ciencias Exactas y Naturales. Departamento de Computación; Argentina. Consejo Nacional de Investigaciones Científicas y Técnicas; Argentina
Fil: Bonelli, Eduardo Augusto. Universidad Nacional de Quilmes; Argentina. Consejo Nacional de Investigaciones Científicas y Técnicas; Argentina
Fil: Ayala Rincón, Mauricio. Universidade do Brasília; Brasil
Materia
PATH POLYMORPHISM
PATTERN MATCHING
STATIC TYPING
Λ-CALCULUS
Nivel de accesibilidad
acceso abierto
Condiciones de uso
https://creativecommons.org/licenses/by-nc-nd/2.5/ar/
Repositorio
CONICET Digital (CONICET)
Institución
Consejo Nacional de Investigaciones Científicas y Técnicas
OAI Identificador
oai:ri.conicet.gov.ar:11336/178946

id CONICETDig_cd4dc80e03a42bb4ab34ac41ffd1929b
oai_identifier_str oai:ri.conicet.gov.ar:11336/178946
network_acronym_str CONICETDig
repository_id_str 3498
network_name_str CONICET Digital (CONICET)
spelling Type Soundness for Path PolymorphismViso, Andrés EzequielBonelli, Eduardo AugustoAyala Rincón, MauricioPATH POLYMORPHISMPATTERN MATCHINGSTATIC TYPINGΛ-CALCULUShttps://purl.org/becyt/ford/1.2https://purl.org/becyt/ford/1Path polymorphism is the ability to define functions that can operate uniformly over arbitrary recursively specified data structures. Its essence is captured by patterns of the form xy which decompose a compound data structure into its parts. Typing these kinds of patterns is challenging since the type of a compound should determine the type of its components. We propose a static type system (i.e. no run-time analysis) for a pattern calculus that captures this feature. Our solution combines type application, constants as types, union types and recursive types. We address the fundamental properties of Subject Reduction and Progress that guarantee a well-behaved dynamics. Both these results rely crucially on a notion of pattern compatibility and also on a coinductive characterisation of subtyping.Fil: Viso, Andrés Ezequiel. Universidad de Buenos Aires. Facultad de Ciencias Exactas y Naturales. Departamento de Computación; Argentina. Consejo Nacional de Investigaciones Científicas y Técnicas; ArgentinaFil: Bonelli, Eduardo Augusto. Universidad Nacional de Quilmes; Argentina. Consejo Nacional de Investigaciones Científicas y Técnicas; ArgentinaFil: Ayala Rincón, Mauricio. Universidade do Brasília; BrasilElsevier2016-11info:eu-repo/semantics/articleinfo:eu-repo/semantics/publishedVersionhttp://purl.org/coar/resource_type/c_6501info:ar-repo/semantics/articuloapplication/pdfapplication/pdfhttp://hdl.handle.net/11336/178946Viso, Andrés Ezequiel; Bonelli, Eduardo Augusto; Ayala Rincón, Mauricio; Type Soundness for Path Polymorphism; Elsevier; Electronic Notes in Theoretical Computer Science; 323; 11-2016; 235-2511571-0661CONICET DigitalCONICETenginfo:eu-repo/semantics/altIdentifier/doi/10.1016/j.entcs.2016.06.015info:eu-repo/semantics/openAccesshttps://creativecommons.org/licenses/by-nc-nd/2.5/ar/reponame:CONICET Digital (CONICET)instname:Consejo Nacional de Investigaciones Científicas y Técnicas2025-10-22T11:19:19Zoai:ri.conicet.gov.ar:11336/178946instacron:CONICETInstitucionalhttp://ri.conicet.gov.ar/Organismo científico-tecnológicoNo correspondehttp://ri.conicet.gov.ar/oai/requestdasensio@conicet.gov.ar; lcarlino@conicet.gov.arArgentinaNo correspondeNo correspondeNo correspondeopendoar:34982025-10-22 11:19:19.811CONICET Digital (CONICET) - Consejo Nacional de Investigaciones Científicas y Técnicasfalse
dc.title.none.fl_str_mv Type Soundness for Path Polymorphism
title Type Soundness for Path Polymorphism
spellingShingle Type Soundness for Path Polymorphism
Viso, Andrés Ezequiel
PATH POLYMORPHISM
PATTERN MATCHING
STATIC TYPING
Λ-CALCULUS
title_short Type Soundness for Path Polymorphism
title_full Type Soundness for Path Polymorphism
title_fullStr Type Soundness for Path Polymorphism
title_full_unstemmed Type Soundness for Path Polymorphism
title_sort Type Soundness for Path Polymorphism
dc.creator.none.fl_str_mv Viso, Andrés Ezequiel
Bonelli, Eduardo Augusto
Ayala Rincón, Mauricio
author Viso, Andrés Ezequiel
author_facet Viso, Andrés Ezequiel
Bonelli, Eduardo Augusto
Ayala Rincón, Mauricio
author_role author
author2 Bonelli, Eduardo Augusto
Ayala Rincón, Mauricio
author2_role author
author
dc.subject.none.fl_str_mv PATH POLYMORPHISM
PATTERN MATCHING
STATIC TYPING
Λ-CALCULUS
topic PATH POLYMORPHISM
PATTERN MATCHING
STATIC TYPING
Λ-CALCULUS
purl_subject.fl_str_mv https://purl.org/becyt/ford/1.2
https://purl.org/becyt/ford/1
dc.description.none.fl_txt_mv Path polymorphism is the ability to define functions that can operate uniformly over arbitrary recursively specified data structures. Its essence is captured by patterns of the form xy which decompose a compound data structure into its parts. Typing these kinds of patterns is challenging since the type of a compound should determine the type of its components. We propose a static type system (i.e. no run-time analysis) for a pattern calculus that captures this feature. Our solution combines type application, constants as types, union types and recursive types. We address the fundamental properties of Subject Reduction and Progress that guarantee a well-behaved dynamics. Both these results rely crucially on a notion of pattern compatibility and also on a coinductive characterisation of subtyping.
Fil: Viso, Andrés Ezequiel. Universidad de Buenos Aires. Facultad de Ciencias Exactas y Naturales. Departamento de Computación; Argentina. Consejo Nacional de Investigaciones Científicas y Técnicas; Argentina
Fil: Bonelli, Eduardo Augusto. Universidad Nacional de Quilmes; Argentina. Consejo Nacional de Investigaciones Científicas y Técnicas; Argentina
Fil: Ayala Rincón, Mauricio. Universidade do Brasília; Brasil
description Path polymorphism is the ability to define functions that can operate uniformly over arbitrary recursively specified data structures. Its essence is captured by patterns of the form xy which decompose a compound data structure into its parts. Typing these kinds of patterns is challenging since the type of a compound should determine the type of its components. We propose a static type system (i.e. no run-time analysis) for a pattern calculus that captures this feature. Our solution combines type application, constants as types, union types and recursive types. We address the fundamental properties of Subject Reduction and Progress that guarantee a well-behaved dynamics. Both these results rely crucially on a notion of pattern compatibility and also on a coinductive characterisation of subtyping.
publishDate 2016
dc.date.none.fl_str_mv 2016-11
dc.type.none.fl_str_mv info:eu-repo/semantics/article
info:eu-repo/semantics/publishedVersion
http://purl.org/coar/resource_type/c_6501
info:ar-repo/semantics/articulo
format article
status_str publishedVersion
dc.identifier.none.fl_str_mv http://hdl.handle.net/11336/178946
Viso, Andrés Ezequiel; Bonelli, Eduardo Augusto; Ayala Rincón, Mauricio; Type Soundness for Path Polymorphism; Elsevier; Electronic Notes in Theoretical Computer Science; 323; 11-2016; 235-251
1571-0661
CONICET Digital
CONICET
url http://hdl.handle.net/11336/178946
identifier_str_mv Viso, Andrés Ezequiel; Bonelli, Eduardo Augusto; Ayala Rincón, Mauricio; Type Soundness for Path Polymorphism; Elsevier; Electronic Notes in Theoretical Computer Science; 323; 11-2016; 235-251
1571-0661
CONICET Digital
CONICET
dc.language.none.fl_str_mv eng
language eng
dc.relation.none.fl_str_mv info:eu-repo/semantics/altIdentifier/doi/10.1016/j.entcs.2016.06.015
dc.rights.none.fl_str_mv info:eu-repo/semantics/openAccess
https://creativecommons.org/licenses/by-nc-nd/2.5/ar/
eu_rights_str_mv openAccess
rights_invalid_str_mv https://creativecommons.org/licenses/by-nc-nd/2.5/ar/
dc.format.none.fl_str_mv application/pdf
application/pdf
dc.publisher.none.fl_str_mv Elsevier
publisher.none.fl_str_mv Elsevier
dc.source.none.fl_str_mv reponame:CONICET Digital (CONICET)
instname:Consejo Nacional de Investigaciones Científicas y Técnicas
reponame_str CONICET Digital (CONICET)
collection CONICET Digital (CONICET)
instname_str Consejo Nacional de Investigaciones Científicas y Técnicas
repository.name.fl_str_mv CONICET Digital (CONICET) - Consejo Nacional de Investigaciones Científicas y Técnicas
repository.mail.fl_str_mv dasensio@conicet.gov.ar; lcarlino@conicet.gov.ar
_version_ 1846781669076369408
score 12.982451