Un sistema de tipos gradual con semántica de casts para el lenguaje Elixir
Supervisor(es): Pardo, Alberto - Viera, Marcos
Resumen:
En este proyecto se desarrolla un sistema de tipos para un fragmento importante de Elixir, un lenguaje de programación funcional de uso industrial con tipado dinámico que se ejecuta sobre la máquina virtual de Erlang. El sistema propuesto tiene la característica de ser algorítmico y estar basado en subtipado estructural. Además, incorpora a su diseño la filosofía del gradual typing, con lo que se hace posible restringir los chequeos de tipo a las porciones anotadas del programa. En el trabajo también se introduce una nueva semántica de evaluación para los programas chequeados con la que se consigue garantizar que el comportamiento de las porciones anotadas del código se preserva durante la ejecución sin cambios con respecto al sistema estático. La semántica se basa en una etapa de inserción de casts de tipo en posiciones críticas del código fuente, que ocurre a posteriori del chequeo de tipos y previo a la compilación. Se presenta también una implementación concreta del sistema de tipos. El proceso de inserción de casts es implementado como una traducción al mismo lenguaje ahora enriquecido con una nueva directiva para casts de tipo, que se consigue representar dentro del lenguaje utilizando las herramientas nativas que Elixir provee para la metaprogramación.
2023 | |
Elixir Gradual typing Type systems |
|
Español | |
Universidad de la República | |
COLIBRI | |
https://hdl.handle.net/20.500.12008/37628 | |
Acceso abierto | |
Licencia Creative Commons Atribución (CC - By 4.0) |
_version_ | 1807523229330309120 |
---|---|
author | Ferencz Cohn, Damián |
author_facet | Ferencz Cohn, Damián |
author_role | author |
bitstream.checksum.fl_str_mv | 6429389a7df7277b72b7924fdc7d47a9 a0ebbeafb9d2ec7cbb19d7137ebc392c 2fc523bba4df4b71d4fa008ef2dea84b 9fdbed07f52437945402c4e70fa4773e f04dd88d1312da65c65d85c499b21032 |
bitstream.checksumAlgorithm.fl_str_mv | MD5 MD5 MD5 MD5 MD5 |
bitstream.url.fl_str_mv | http://localhost:8080/xmlui/bitstream/20.500.12008/37628/5/license.txt http://localhost:8080/xmlui/bitstream/20.500.12008/37628/2/license_url http://localhost:8080/xmlui/bitstream/20.500.12008/37628/3/license_text http://localhost:8080/xmlui/bitstream/20.500.12008/37628/4/license_rdf http://localhost:8080/xmlui/bitstream/20.500.12008/37628/1/Fer23.pdf |
collection | COLIBRI |
dc.contributor.filiacion.none.fl_str_mv | Ferencz Cohn Damián, Universidad de la República (Uruguay). Facultad de Ingeniería |
dc.creator.advisor.none.fl_str_mv | Pardo, Alberto Viera, Marcos |
dc.creator.none.fl_str_mv | Ferencz Cohn, Damián |
dc.date.accessioned.none.fl_str_mv | 2023-06-20T17:28:05Z |
dc.date.available.none.fl_str_mv | 2023-06-20T17:28:05Z |
dc.date.issued.none.fl_str_mv | 2023 |
dc.description.abstract.none.fl_txt_mv | En este proyecto se desarrolla un sistema de tipos para un fragmento importante de Elixir, un lenguaje de programación funcional de uso industrial con tipado dinámico que se ejecuta sobre la máquina virtual de Erlang. El sistema propuesto tiene la característica de ser algorítmico y estar basado en subtipado estructural. Además, incorpora a su diseño la filosofía del gradual typing, con lo que se hace posible restringir los chequeos de tipo a las porciones anotadas del programa. En el trabajo también se introduce una nueva semántica de evaluación para los programas chequeados con la que se consigue garantizar que el comportamiento de las porciones anotadas del código se preserva durante la ejecución sin cambios con respecto al sistema estático. La semántica se basa en una etapa de inserción de casts de tipo en posiciones críticas del código fuente, que ocurre a posteriori del chequeo de tipos y previo a la compilación. Se presenta también una implementación concreta del sistema de tipos. El proceso de inserción de casts es implementado como una traducción al mismo lenguaje ahora enriquecido con una nueva directiva para casts de tipo, que se consigue representar dentro del lenguaje utilizando las herramientas nativas que Elixir provee para la metaprogramación. |
dc.format.extent.es.fl_str_mv | 143 p. |
dc.format.mimetype.es.fl_str_mv | application/pdf |
dc.identifier.citation.es.fl_str_mv | Ferencz Cohn, D. Un sistema de tipos gradual con semántica de casts para el lenguaje Elixir [en línea] Tesis de grado. Montevideo : Udelar. FI. INCO, 2023. |
dc.identifier.uri.none.fl_str_mv | https://hdl.handle.net/20.500.12008/37628 |
dc.language.iso.none.fl_str_mv | es spa |
dc.publisher.es.fl_str_mv | Udelar. FI. |
dc.rights.license.none.fl_str_mv | Licencia Creative Commons Atribución (CC - By 4.0) |
dc.rights.none.fl_str_mv | info:eu-repo/semantics/openAccess |
dc.source.none.fl_str_mv | reponame:COLIBRI instname:Universidad de la República instacron:Universidad de la República |
dc.subject.es.fl_str_mv | Elixir Gradual typing Type systems |
dc.title.none.fl_str_mv | Un sistema de tipos gradual con semántica de casts para el lenguaje Elixir |
dc.type.es.fl_str_mv | Tesis de grado |
dc.type.none.fl_str_mv | info:eu-repo/semantics/bachelorThesis |
dc.type.version.none.fl_str_mv | info:eu-repo/semantics/acceptedVersion |
description | En este proyecto se desarrolla un sistema de tipos para un fragmento importante de Elixir, un lenguaje de programación funcional de uso industrial con tipado dinámico que se ejecuta sobre la máquina virtual de Erlang. El sistema propuesto tiene la característica de ser algorítmico y estar basado en subtipado estructural. Además, incorpora a su diseño la filosofía del gradual typing, con lo que se hace posible restringir los chequeos de tipo a las porciones anotadas del programa. En el trabajo también se introduce una nueva semántica de evaluación para los programas chequeados con la que se consigue garantizar que el comportamiento de las porciones anotadas del código se preserva durante la ejecución sin cambios con respecto al sistema estático. La semántica se basa en una etapa de inserción de casts de tipo en posiciones críticas del código fuente, que ocurre a posteriori del chequeo de tipos y previo a la compilación. Se presenta también una implementación concreta del sistema de tipos. El proceso de inserción de casts es implementado como una traducción al mismo lenguaje ahora enriquecido con una nueva directiva para casts de tipo, que se consigue representar dentro del lenguaje utilizando las herramientas nativas que Elixir provee para la metaprogramación. |
eu_rights_str_mv | openAccess |
format | bachelorThesis |
id | COLIBRI_8375f25f50439ee749147bd92c422c73 |
identifier_str_mv | Ferencz Cohn, D. Un sistema de tipos gradual con semántica de casts para el lenguaje Elixir [en línea] Tesis de grado. Montevideo : Udelar. FI. INCO, 2023. |
instacron_str | Universidad de la República |
institution | Universidad de la República |
instname_str | Universidad de la República |
language | spa |
language_invalid_str_mv | es |
network_acronym_str | COLIBRI |
network_name_str | COLIBRI |
oai_identifier_str | oai:colibri.udelar.edu.uy:20.500.12008/37628 |
publishDate | 2023 |
reponame_str | COLIBRI |
repository.mail.fl_str_mv | mabel.seroubian@seciu.edu.uy |
repository.name.fl_str_mv | COLIBRI - Universidad de la República |
repository_id_str | 4771 |
rights_invalid_str_mv | Licencia Creative Commons Atribución (CC - By 4.0) |
spelling | Ferencz Cohn Damián, Universidad de la República (Uruguay). Facultad de Ingeniería2023-06-20T17:28:05Z2023-06-20T17:28:05Z2023Ferencz Cohn, D. Un sistema de tipos gradual con semántica de casts para el lenguaje Elixir [en línea] Tesis de grado. Montevideo : Udelar. FI. INCO, 2023.https://hdl.handle.net/20.500.12008/37628En este proyecto se desarrolla un sistema de tipos para un fragmento importante de Elixir, un lenguaje de programación funcional de uso industrial con tipado dinámico que se ejecuta sobre la máquina virtual de Erlang. El sistema propuesto tiene la característica de ser algorítmico y estar basado en subtipado estructural. Además, incorpora a su diseño la filosofía del gradual typing, con lo que se hace posible restringir los chequeos de tipo a las porciones anotadas del programa. En el trabajo también se introduce una nueva semántica de evaluación para los programas chequeados con la que se consigue garantizar que el comportamiento de las porciones anotadas del código se preserva durante la ejecución sin cambios con respecto al sistema estático. La semántica se basa en una etapa de inserción de casts de tipo en posiciones críticas del código fuente, que ocurre a posteriori del chequeo de tipos y previo a la compilación. Se presenta también una implementación concreta del sistema de tipos. El proceso de inserción de casts es implementado como una traducción al mismo lenguaje ahora enriquecido con una nueva directiva para casts de tipo, que se consigue representar dentro del lenguaje utilizando las herramientas nativas que Elixir provee para la metaprogramación.Submitted by Cabrera Gabriela (gfcabrerarossi@gmail.com) on 2023-06-20T15:06:37Z No. of bitstreams: 2 license_rdf: 19875 bytes, checksum: 9fdbed07f52437945402c4e70fa4773e (MD5) Fer23.pdf: 1370927 bytes, checksum: f04dd88d1312da65c65d85c499b21032 (MD5)Approved for entry into archive by Berón Cecilia (cberon@fing.edu.uy) on 2023-06-20T17:21:53Z (GMT) No. of bitstreams: 2 license_rdf: 19875 bytes, checksum: 9fdbed07f52437945402c4e70fa4773e (MD5) Fer23.pdf: 1370927 bytes, checksum: f04dd88d1312da65c65d85c499b21032 (MD5)Made available in DSpace by Luna Fabiana (fabiana.luna@seciu.edu.uy) on 2023-06-20T17:28:05Z (GMT). No. of bitstreams: 2 license_rdf: 19875 bytes, checksum: 9fdbed07f52437945402c4e70fa4773e (MD5) Fer23.pdf: 1370927 bytes, checksum: f04dd88d1312da65c65d85c499b21032 (MD5) Previous issue date: 2023143 p.application/pdfesspaUdelar. FI.Las obras depositadas en el Repositorio se rigen por la Ordenanza de los Derechos de la Propiedad Intelectual de la Universidad de la República.(Res. Nº 91 de C.D.C. de 8/III/1994 – D.O. 7/IV/1994) y por la Ordenanza del Repositorio Abierto de la Universidad de la República (Res. Nº 16 de C.D.C. de 07/10/2014)info:eu-repo/semantics/openAccessLicencia Creative Commons Atribución (CC - By 4.0)ElixirGradual typingType systemsUn sistema de tipos gradual con semántica de casts para el lenguaje ElixirTesis de gradoinfo:eu-repo/semantics/bachelorThesisinfo:eu-repo/semantics/acceptedVersionreponame:COLIBRIinstname:Universidad de la Repúblicainstacron:Universidad de la RepúblicaFerencz Cohn, DamiánPardo, AlbertoViera, MarcosUniversidad de la República (Uruguay). Facultad de Ingeniería.Ingeniero en Computación.LICENSElicense.txtlicense.txttext/plain; charset=utf-84267http://localhost:8080/xmlui/bitstream/20.500.12008/37628/5/license.txt6429389a7df7277b72b7924fdc7d47a9MD55CC-LICENSElicense_urllicense_urltext/plain; charset=utf-844http://localhost:8080/xmlui/bitstream/20.500.12008/37628/2/license_urla0ebbeafb9d2ec7cbb19d7137ebc392cMD52license_textlicense_texttext/html; charset=utf-838552http://localhost:8080/xmlui/bitstream/20.500.12008/37628/3/license_text2fc523bba4df4b71d4fa008ef2dea84bMD53license_rdflicense_rdfapplication/rdf+xml; charset=utf-819875http://localhost:8080/xmlui/bitstream/20.500.12008/37628/4/license_rdf9fdbed07f52437945402c4e70fa4773eMD54ORIGINALFer23.pdfFer23.pdfapplication/pdf1370927http://localhost:8080/xmlui/bitstream/20.500.12008/37628/1/Fer23.pdff04dd88d1312da65c65d85c499b21032MD5120.500.12008/376282024-04-12 14:06:40.613oai:colibri.udelar.edu.uy:20.500.12008/37628VGVybWlub3MgeSBjb25kaWNpb25lcyByZWxhdGl2YXMgYWwgZGVwb3NpdG8gZGUgb2JyYXMKCgpMYXMgb2JyYXMgZGVwb3NpdGFkYXMgZW4gZWwgUmVwb3NpdG9yaW8gc2UgcmlnZW4gcG9yIGxhIE9yZGVuYW56YSBkZSBsb3MgRGVyZWNob3MgZGUgbGEgUHJvcGllZGFkIEludGVsZWN0dWFsICBkZSBsYSBVbml2ZXJzaWRhZCBEZSBMYSBSZXDDumJsaWNhLiAoUmVzLiBOwrogOTEgZGUgQy5ELkMuIGRlIDgvSUlJLzE5OTQg4oCTIEQuTy4gNy9JVi8xOTk0KSB5ICBwb3IgbGEgT3JkZW5hbnphIGRlbCBSZXBvc2l0b3JpbyBBYmllcnRvIGRlIGxhIFVuaXZlcnNpZGFkIGRlIGxhIFJlcMO6YmxpY2EgKFJlcy4gTsK6IDE2IGRlIEMuRC5DLiBkZSAwNy8xMC8yMDE0KS4gCgpBY2VwdGFuZG8gZWwgYXV0b3IgZXN0b3MgdMOpcm1pbm9zIHkgY29uZGljaW9uZXMgZGUgZGVww7NzaXRvIGVuIENPTElCUkksIGxhIFVuaXZlcnNpZGFkIGRlIFJlcMO6YmxpY2EgcHJvY2VkZXLDoSBhOiAgCgphKSBhcmNoaXZhciBtw6FzIGRlIHVuYSBjb3BpYSBkZSBsYSBvYnJhIGVuIGxvcyBzZXJ2aWRvcmVzIGRlIGxhIFVuaXZlcnNpZGFkIGEgbG9zIGVmZWN0b3MgZGUgZ2FyYW50aXphciBhY2Nlc28sIHNlZ3VyaWRhZCB5IHByZXNlcnZhY2nDs24KYikgY29udmVydGlyIGxhIG9icmEgYSBvdHJvcyBmb3JtYXRvcyBzaSBmdWVyYSBuZWNlc2FyaW8gIHBhcmEgZmFjaWxpdGFyIHN1IHByZXNlcnZhY2nDs24geSBhY2Nlc2liaWxpZGFkIHNpbiBhbHRlcmFyIHN1IGNvbnRlbmlkby4KYykgcmVhbGl6YXIgbGEgY29tdW5pY2FjacOzbiBww7pibGljYSB5IGRpc3BvbmVyIGVsIGFjY2VzbyBsaWJyZSB5IGdyYXR1aXRvIGEgdHJhdsOpcyBkZSBJbnRlcm5ldCBtZWRpYW50ZSBsYSBwdWJsaWNhY2nDs24gZGUgbGEgb2JyYSBiYWpvIGxhIGxpY2VuY2lhIENyZWF0aXZlIENvbW1vbnMgc2VsZWNjaW9uYWRhIHBvciBlbCBwcm9waW8gYXV0b3IuCgoKRW4gY2FzbyBxdWUgZWwgYXV0b3IgaGF5YSBkaWZ1bmRpZG8geSBkYWRvIGEgcHVibGljaWRhZCBhIGxhIG9icmEgZW4gZm9ybWEgcHJldmlhLCAgcG9kcsOhIHNvbGljaXRhciB1biBwZXLDrW9kbyBkZSBlbWJhcmdvIHNvYnJlIGxhIGRpc3BvbmliaWxpZGFkIHDDumJsaWNhIGRlIGxhIG1pc21hLCBlbCBjdWFsIGNvbWVuemFyw6EgYSBwYXJ0aXIgZGUgbGEgYWNlcHRhY2nDs24gZGUgZXN0ZSBkb2N1bWVudG8geSBoYXN0YSBsYSBmZWNoYSBxdWUgaW5kaXF1ZSAuCgpFbCBhdXRvciBhc2VndXJhIHF1ZSBsYSBvYnJhIG5vIGluZnJpZ2UgbmluZ8O6biBkZXJlY2hvIHNvYnJlIHRlcmNlcm9zLCB5YSBzZWEgZGUgcHJvcGllZGFkIGludGVsZWN0dWFsIG8gY3VhbHF1aWVyIG90cm8uCgpFbCBhdXRvciBnYXJhbnRpemEgcXVlIHNpIGVsIGRvY3VtZW50byBjb250aWVuZSBtYXRlcmlhbGVzIGRlIGxvcyBjdWFsZXMgbm8gdGllbmUgbG9zIGRlcmVjaG9zIGRlIGF1dG9yLCAgaGEgb2J0ZW5pZG8gZWwgcGVybWlzbyBkZWwgcHJvcGlldGFyaW8gZGUgbG9zIGRlcmVjaG9zIGRlIGF1dG9yLCB5IHF1ZSBlc2UgbWF0ZXJpYWwgY3V5b3MgZGVyZWNob3Mgc29uIGRlIHRlcmNlcm9zIGVzdMOhIGNsYXJhbWVudGUgaWRlbnRpZmljYWRvIHkgcmVjb25vY2lkbyBlbiBlbCB0ZXh0byBvIGNvbnRlbmlkbyBkZWwgZG9jdW1lbnRvIGRlcG9zaXRhZG8gZW4gZWwgUmVwb3NpdG9yaW8uCgpFbiBvYnJhcyBkZSBhdXRvcsOtYSBtw7psdGlwbGUgL3NlIHByZXN1bWUvIHF1ZSBlbCBhdXRvciBkZXBvc2l0YW50ZSBkZWNsYXJhIHF1ZSBoYSByZWNhYmFkbyBlbCBjb25zZW50aW1pZW50byBkZSB0b2RvcyBsb3MgYXV0b3JlcyBwYXJhIHB1YmxpY2FybGEgZW4gZWwgUmVwb3NpdG9yaW8sIHNpZW5kbyDDqXN0ZSBlbCDDum5pY28gcmVzcG9uc2FibGUgZnJlbnRlIGEgY3VhbHF1aWVyIHRpcG8gZGUgcmVjbGFtYWNpw7NuIGRlIGxvcyBvdHJvcyBjb2F1dG9yZXMuCgpFbCBhdXRvciBzZXLDoSByZXNwb25zYWJsZSBkZWwgY29udGVuaWRvIGRlIGxvcyBkb2N1bWVudG9zIHF1ZSBkZXBvc2l0YS4gTGEgVURFTEFSIG5vIHNlcsOhIHJlc3BvbnNhYmxlIHBvciBsYXMgZXZlbnR1YWxlcyB2aW9sYWNpb25lcyBhbCBkZXJlY2hvIGRlIHByb3BpZWRhZCBpbnRlbGVjdHVhbCBlbiBxdWUgcHVlZGEgaW5jdXJyaXIgZWwgYXV0b3IuCgpBbnRlIGN1YWxxdWllciBkZW51bmNpYSBkZSB2aW9sYWNpw7NuIGRlIGRlcmVjaG9zIGRlIHByb3BpZWRhZCBpbnRlbGVjdHVhbCwgbGEgVURFTEFSICBhZG9wdGFyw6EgdG9kYXMgbGFzIG1lZGlkYXMgbmVjZXNhcmlhcyBwYXJhIGV2aXRhciBsYSBjb250aW51YWNpw7NuIGRlIGRpY2hhIGluZnJhY2Npw7NuLCBsYXMgcXVlIHBvZHLDoW4gaW5jbHVpciBlbCByZXRpcm8gZGVsIGFjY2VzbyBhIGxvcyBjb250ZW5pZG9zIHkvbyBtZXRhZGF0b3MgZGVsIGRvY3VtZW50byByZXNwZWN0aXZvLgoKTGEgb2JyYSBzZSBwb25kcsOhIGEgZGlzcG9zaWNpw7NuIGRlbCBww7pibGljbyBhIHRyYXbDqXMgZGUgbGFzIGxpY2VuY2lhcyBDcmVhdGl2ZSBDb21tb25zLCBlbCBhdXRvciBwb2Ryw6Egc2VsZWNjaW9uYXIgdW5hIGRlIGxhcyA2IGxpY2VuY2lhcyBkaXNwb25pYmxlczoKCgpBdHJpYnVjacOzbiAoQ0MgLSBCeSk6IFBlcm1pdGUgdXNhciBsYSBvYnJhIHkgZ2VuZXJhciBvYnJhcyBkZXJpdmFkYXMsIGluY2x1c28gY29uIGZpbmVzIGNvbWVyY2lhbGVzLCBzaWVtcHJlIHF1ZSBzZSByZWNvbm96Y2EgYWwgYXV0b3IuCgpBdHJpYnVjacOzbiDigJMgQ29tcGFydGlyIElndWFsIChDQyAtIEJ5LVNBKTogUGVybWl0ZSB1c2FyIGxhIG9icmEgeSBnZW5lcmFyIG9icmFzIGRlcml2YWRhcywgaW5jbHVzbyBjb24gZmluZXMgY29tZXJjaWFsZXMsIHBlcm8gbGEgZGlzdHJpYnVjacOzbiBkZSBsYXMgb2JyYXMgZGVyaXZhZGFzIGRlYmUgaGFjZXJzZSBtZWRpYW50ZSB1bmEgbGljZW5jaWEgaWTDqW50aWNhIGEgbGEgZGUgbGEgb2JyYSBvcmlnaW5hbCwgcmVjb25vY2llbmRvIGEgbG9zIGF1dG9yZXMuCgpBdHJpYnVjacOzbiDigJMgTm8gQ29tZXJjaWFsIChDQyAtIEJ5LU5DKTogUGVybWl0ZSB1c2FyIGxhIG9icmEgeSBnZW5lcmFyIG9icmFzIGRlcml2YWRhcywgc2llbXByZSB5IGN1YW5kbyBlc29zIHVzb3Mgbm8gdGVuZ2FuIGZpbmVzIGNvbWVyY2lhbGVzLCByZWNvbm9jaWVuZG8gYWwgYXV0b3IuCgpBdHJpYnVjacOzbiDigJMgU2luIERlcml2YWRhcyAoQ0MgLSBCeS1ORCk6IFBlcm1pdGUgZWwgdXNvIGRlIGxhIG9icmEsIGluY2x1c28gY29uIGZpbmVzIGNvbWVyY2lhbGVzLCBwZXJvIG5vIHNlIHBlcm1pdGUgZ2VuZXJhciBvYnJhcyBkZXJpdmFkYXMsIGRlYmllbmRvIHJlY29ub2NlciBhbCBhdXRvci4KCkF0cmlidWNpw7NuIOKAkyBObyBDb21lcmNpYWwg4oCTIENvbXBhcnRpciBJZ3VhbCAoQ0Mg4oCTIEJ5LU5DLVNBKTogUGVybWl0ZSB1c2FyIGxhIG9icmEgeSBnZW5lcmFyIG9icmFzIGRlcml2YWRhcywgc2llbXByZSB5IGN1YW5kbyBlc29zIHVzb3Mgbm8gdGVuZ2FuIGZpbmVzIGNvbWVyY2lhbGVzIHkgbGEgZGlzdHJpYnVjacOzbiBkZSBsYXMgb2JyYXMgZGVyaXZhZGFzIHNlIGhhZ2EgbWVkaWFudGUgbGljZW5jaWEgaWTDqW50aWNhIGEgbGEgZGUgbGEgb2JyYSBvcmlnaW5hbCwgcmVjb25vY2llbmRvIGEgbG9zIGF1dG9yZXMuCgpBdHJpYnVjacOzbiDigJMgTm8gQ29tZXJjaWFsIOKAkyBTaW4gRGVyaXZhZGFzIChDQyAtIEJ5LU5DLU5EKTogUGVybWl0ZSB1c2FyIGxhIG9icmEsIHBlcm8gbm8gc2UgcGVybWl0ZSBnZW5lcmFyIG9icmFzIGRlcml2YWRhcyB5IG5vIHNlIHBlcm1pdGUgdXNvIGNvbiBmaW5lcyBjb21lcmNpYWxlcywgZGViaWVuZG8gcmVjb25vY2VyIGFsIGF1dG9yLgoKTG9zIHVzb3MgcHJldmlzdG9zIGVuIGxhcyBsaWNlbmNpYXMgaW5jbHV5ZW4gbGEgZW5hamVuYWNpw7NuLCByZXByb2R1Y2Npw7NuLCBjb211bmljYWNpw7NuLCBwdWJsaWNhY2nDs24sIGRpc3RyaWJ1Y2nDs24geSBwdWVzdGEgYSBkaXNwb3NpY2nDs24gZGVsIHDDumJsaWNvLiBMYSBjcmVhY2nDs24gZGUgb2JyYXMgZGVyaXZhZGFzIGluY2x1eWUgbGEgYWRhcHRhY2nDs24sIHRyYWR1Y2Npw7NuIHkgZWwgcmVtaXguCgpDdWFuZG8gc2Ugc2VsZWNjaW9uZSB1bmEgbGljZW5jaWEgcXVlIGhhYmlsaXRlIHVzb3MgY29tZXJjaWFsZXMsIGVsIGRlcMOzc2l0byBkZWJlcsOhIHNlciBhY29tcGHDsWFkbyBkZWwgYXZhbCBkZWwgamVyYXJjYSBtw6F4aW1vIGRlbCBTZXJ2aWNpbyBjb3JyZXNwb25kaWVudGUuCg==Universidadhttps://udelar.edu.uy/https://www.colibri.udelar.edu.uy/oai/requestmabel.seroubian@seciu.edu.uyUruguayopendoar:47712024-07-25T14:46:28.517600COLIBRI - Universidad de la Repúblicafalse |
spellingShingle | Un sistema de tipos gradual con semántica de casts para el lenguaje Elixir Ferencz Cohn, Damián Elixir Gradual typing Type systems |
status_str | acceptedVersion |
title | Un sistema de tipos gradual con semántica de casts para el lenguaje Elixir |
title_full | Un sistema de tipos gradual con semántica de casts para el lenguaje Elixir |
title_fullStr | Un sistema de tipos gradual con semántica de casts para el lenguaje Elixir |
title_full_unstemmed | Un sistema de tipos gradual con semántica de casts para el lenguaje Elixir |
title_short | Un sistema de tipos gradual con semántica de casts para el lenguaje Elixir |
title_sort | Un sistema de tipos gradual con semántica de casts para el lenguaje Elixir |
topic | Elixir Gradual typing Type systems |
url | https://hdl.handle.net/20.500.12008/37628 |