Implementación Básica de Typestates en Rust
- Autores
- Arroyo, Marcelo; Gutiérrez Brida, Simón; Ponzio, Pablo Daniel
- Año de publicación
- 2019
- Idioma
- español castellano
- Tipo de recurso
- documento de conferencia
- Estado
- versión publicada
- Descripción
- Generalmente la API de un módulo describe las operaciones disponibles, aunque el orden lícito de aplicación de las mismas queda implícito o documentado externamente debido a que los lenguajes de programación generalmente no proveen mecanismos de especificación del protocolo de uso. Typestates permite especificar estados de objetos de un determinado tipo. Cada estado habilita ciertas operaciones y prohíbe otras, permitiendo especificar el protocolo de uso de una API determinada. En este trabajo se presenta un patrón de implementación de typestates en el lenguaje de programación Rust y se analiza su sistema de tipos y mecanismos que permiten la verificación del typestate en tiempo de compilación, mostrando que cumple con las propiedades requeridas por las propuestas de verificación modular descriptas en la bibliografía especializada.
XVI Workshop Ingeniería de Software.
Red de Universidades con Carreras en Informática - Materia
-
Ciencias Informáticas
Typestates
Rust - Nivel de accesibilidad
- acceso abierto
- Condiciones de uso
- http://creativecommons.org/licenses/by-nc-sa/4.0/
- Repositorio
- Institución
- Universidad Nacional de La Plata
- OAI Identificador
- oai:sedici.unlp.edu.ar:10915/91094
Ver los metadatos del registro completo
id |
SEDICI_0cb0dd6cccf69a535e97898b747a763c |
---|---|
oai_identifier_str |
oai:sedici.unlp.edu.ar:10915/91094 |
network_acronym_str |
SEDICI |
repository_id_str |
1329 |
network_name_str |
SEDICI (UNLP) |
spelling |
Implementación Básica de Typestates en RustArroyo, MarceloGutiérrez Brida, SimónPonzio, Pablo DanielCiencias InformáticasTypestatesRustGeneralmente la API de un módulo describe las operaciones disponibles, aunque el orden lícito de aplicación de las mismas queda implícito o documentado externamente debido a que los lenguajes de programación generalmente no proveen mecanismos de especificación del protocolo de uso. Typestates permite especificar estados de objetos de un determinado tipo. Cada estado habilita ciertas operaciones y prohíbe otras, permitiendo especificar el protocolo de uso de una API determinada. En este trabajo se presenta un patrón de implementación de typestates en el lenguaje de programación Rust y se analiza su sistema de tipos y mecanismos que permiten la verificación del typestate en tiempo de compilación, mostrando que cumple con las propiedades requeridas por las propuestas de verificación modular descriptas en la bibliografía especializada.XVI Workshop Ingeniería de Software.Red de Universidades con Carreras en Informática2019-10info:eu-repo/semantics/conferenceObjectinfo:eu-repo/semantics/publishedVersionObjeto de conferenciahttp://purl.org/coar/resource_type/c_5794info:ar-repo/semantics/documentoDeConferenciaapplication/pdf727-736http://sedici.unlp.edu.ar/handle/10915/91094spainfo:eu-repo/semantics/altIdentifier/isbn/978-987-688-377-1info:eu-repo/semantics/reference/hdl/10915/90359info:eu-repo/semantics/openAccesshttp://creativecommons.org/licenses/by-nc-sa/4.0/Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International (CC BY-NC-SA 4.0)reponame:SEDICI (UNLP)instname:Universidad Nacional de La Platainstacron:UNLP2025-09-29T11:19:03Zoai:sedici.unlp.edu.ar:10915/91094Institucionalhttp://sedici.unlp.edu.ar/Universidad públicaNo correspondehttp://sedici.unlp.edu.ar/oai/snrdalira@sedici.unlp.edu.arArgentinaNo correspondeNo correspondeNo correspondeopendoar:13292025-09-29 11:19:03.535SEDICI (UNLP) - Universidad Nacional de La Platafalse |
dc.title.none.fl_str_mv |
Implementación Básica de Typestates en Rust |
title |
Implementación Básica de Typestates en Rust |
spellingShingle |
Implementación Básica de Typestates en Rust Arroyo, Marcelo Ciencias Informáticas Typestates Rust |
title_short |
Implementación Básica de Typestates en Rust |
title_full |
Implementación Básica de Typestates en Rust |
title_fullStr |
Implementación Básica de Typestates en Rust |
title_full_unstemmed |
Implementación Básica de Typestates en Rust |
title_sort |
Implementación Básica de Typestates en Rust |
dc.creator.none.fl_str_mv |
Arroyo, Marcelo Gutiérrez Brida, Simón Ponzio, Pablo Daniel |
author |
Arroyo, Marcelo |
author_facet |
Arroyo, Marcelo Gutiérrez Brida, Simón Ponzio, Pablo Daniel |
author_role |
author |
author2 |
Gutiérrez Brida, Simón Ponzio, Pablo Daniel |
author2_role |
author author |
dc.subject.none.fl_str_mv |
Ciencias Informáticas Typestates Rust |
topic |
Ciencias Informáticas Typestates Rust |
dc.description.none.fl_txt_mv |
Generalmente la API de un módulo describe las operaciones disponibles, aunque el orden lícito de aplicación de las mismas queda implícito o documentado externamente debido a que los lenguajes de programación generalmente no proveen mecanismos de especificación del protocolo de uso. Typestates permite especificar estados de objetos de un determinado tipo. Cada estado habilita ciertas operaciones y prohíbe otras, permitiendo especificar el protocolo de uso de una API determinada. En este trabajo se presenta un patrón de implementación de typestates en el lenguaje de programación Rust y se analiza su sistema de tipos y mecanismos que permiten la verificación del typestate en tiempo de compilación, mostrando que cumple con las propiedades requeridas por las propuestas de verificación modular descriptas en la bibliografía especializada. XVI Workshop Ingeniería de Software. Red de Universidades con Carreras en Informática |
description |
Generalmente la API de un módulo describe las operaciones disponibles, aunque el orden lícito de aplicación de las mismas queda implícito o documentado externamente debido a que los lenguajes de programación generalmente no proveen mecanismos de especificación del protocolo de uso. Typestates permite especificar estados de objetos de un determinado tipo. Cada estado habilita ciertas operaciones y prohíbe otras, permitiendo especificar el protocolo de uso de una API determinada. En este trabajo se presenta un patrón de implementación de typestates en el lenguaje de programación Rust y se analiza su sistema de tipos y mecanismos que permiten la verificación del typestate en tiempo de compilación, mostrando que cumple con las propiedades requeridas por las propuestas de verificación modular descriptas en la bibliografía especializada. |
publishDate |
2019 |
dc.date.none.fl_str_mv |
2019-10 |
dc.type.none.fl_str_mv |
info:eu-repo/semantics/conferenceObject info:eu-repo/semantics/publishedVersion Objeto de conferencia http://purl.org/coar/resource_type/c_5794 info:ar-repo/semantics/documentoDeConferencia |
format |
conferenceObject |
status_str |
publishedVersion |
dc.identifier.none.fl_str_mv |
http://sedici.unlp.edu.ar/handle/10915/91094 |
url |
http://sedici.unlp.edu.ar/handle/10915/91094 |
dc.language.none.fl_str_mv |
spa |
language |
spa |
dc.relation.none.fl_str_mv |
info:eu-repo/semantics/altIdentifier/isbn/978-987-688-377-1 info:eu-repo/semantics/reference/hdl/10915/90359 |
dc.rights.none.fl_str_mv |
info:eu-repo/semantics/openAccess http://creativecommons.org/licenses/by-nc-sa/4.0/ Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International (CC BY-NC-SA 4.0) |
eu_rights_str_mv |
openAccess |
rights_invalid_str_mv |
http://creativecommons.org/licenses/by-nc-sa/4.0/ Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International (CC BY-NC-SA 4.0) |
dc.format.none.fl_str_mv |
application/pdf 727-736 |
dc.source.none.fl_str_mv |
reponame:SEDICI (UNLP) instname:Universidad Nacional de La Plata instacron:UNLP |
reponame_str |
SEDICI (UNLP) |
collection |
SEDICI (UNLP) |
instname_str |
Universidad Nacional de La Plata |
instacron_str |
UNLP |
institution |
UNLP |
repository.name.fl_str_mv |
SEDICI (UNLP) - Universidad Nacional de La Plata |
repository.mail.fl_str_mv |
alira@sedici.unlp.edu.ar |
_version_ |
1844616064382533632 |
score |
13.070432 |