Intérprete funcional para OCL : HaskellOCL

Vaz, Leticia - Sintas, Gonzalo

Supervisor(es): Calegari, Daniel - Viera, Marcos

Resumen:

El paradigma de Ingeniería Dirigida por Modelos (MDE por sus siglas en inglés) propone la construcción de software basado en una abstracción de su complejidad a través de la definición de modelos y en un proceso de construcción (semi)automático guiado por transformaciones de estos modelos. El Object Constraint Language (OCL), un lenguaje formal que permite expresar restricciones que se deben cumplir para asegurar la corrección semántica de un modelo. El lenguaje se define como un lenguaje sin efectos secundarios que combina aspectos funcionales (ej. composición de funciones) y orientados a modelos (ej. herencia de tipos). Sus intérpretes se enfocan principalmente en aspectos orientados a modelos, proveyendo una representación directa de construcciones como herencia y navegación a través de propiedades de los elementos de los modelos. Sin embargo, en los últimos años se han propuesto diversas extensiones funcionales al lenguaje, por ejemplo: pattern matching, expresiones lambda y evaluación perezosa. En un trabajo previo se propuso la construcción de un intérprete de OCL basado en el paradigma funcional (usando Haskell), que incluye además la interpretación de modelos, metamodelos y transformaciones. El objetivo de este proyecto es continuar desarrollando las capacidades del intérprete, particularmente definiendo una transformación que permita generar la infraestructura funcional necesaria para interpretar expresiones OCL (OCL2Haskell), así como adaptar un editor de OCL (en Eclipse) para permitir ejecutar automáticamente la transformación y realizar la validación de dichas expresiones OCL haciendo que la infraestructura funcional sea transparente para el usuario final.


Detalles Bibliográficos
2018
MDE
OCL
Haskell
Eclipse
Español
Universidad de la República
COLIBRI
http://hdl.handle.net/20.500.12008/20219
Acceso abierto
Licencia Creative Commons Atribución – No Comercial – Sin Derivadas (CC - By-NC-ND)
_version_ 1807523224071700480
author Vaz, Leticia
author2 Sintas, Gonzalo
author2_role author
author_facet Vaz, Leticia
Sintas, Gonzalo
author_role author
bitstream.checksum.fl_str_mv 6429389a7df7277b72b7924fdc7d47a9
4afdbb8c545fd630ea7db775da747b2f
d41d8cd98f00b204e9800998ecf8427e
d41d8cd98f00b204e9800998ecf8427e
8781eed0e60083ae4ad5c9e7fd255a26
bitstream.checksumAlgorithm.fl_str_mv MD5
MD5
MD5
MD5
MD5
bitstream.url.fl_str_mv http://localhost:8080/xmlui/bitstream/20.500.12008/20219/5/license.txt
http://localhost:8080/xmlui/bitstream/20.500.12008/20219/2/license_url
http://localhost:8080/xmlui/bitstream/20.500.12008/20219/3/license_text
http://localhost:8080/xmlui/bitstream/20.500.12008/20219/4/license_rdf
http://localhost:8080/xmlui/bitstream/20.500.12008/20219/1/tg-vaz-sinta.pdf
collection COLIBRI
dc.contributor.filiacion.none.fl_str_mv Vaz Leticia, Universidad de la República (Uruguay). Facultad de Ingeniería
Sintas Gonzalo, Universidad de la República (Uruguay). Facultad de Ingeniería
dc.creator.advisor.none.fl_str_mv Calegari, Daniel
Viera, Marcos
dc.creator.none.fl_str_mv Vaz, Leticia
Sintas, Gonzalo
dc.date.accessioned.none.fl_str_mv 2019-02-25T15:55:33Z
dc.date.available.none.fl_str_mv 2019-02-25T15:55:33Z
dc.date.issued.none.fl_str_mv 2018
dc.description.abstract.none.fl_txt_mv El paradigma de Ingeniería Dirigida por Modelos (MDE por sus siglas en inglés) propone la construcción de software basado en una abstracción de su complejidad a través de la definición de modelos y en un proceso de construcción (semi)automático guiado por transformaciones de estos modelos. El Object Constraint Language (OCL), un lenguaje formal que permite expresar restricciones que se deben cumplir para asegurar la corrección semántica de un modelo. El lenguaje se define como un lenguaje sin efectos secundarios que combina aspectos funcionales (ej. composición de funciones) y orientados a modelos (ej. herencia de tipos). Sus intérpretes se enfocan principalmente en aspectos orientados a modelos, proveyendo una representación directa de construcciones como herencia y navegación a través de propiedades de los elementos de los modelos. Sin embargo, en los últimos años se han propuesto diversas extensiones funcionales al lenguaje, por ejemplo: pattern matching, expresiones lambda y evaluación perezosa. En un trabajo previo se propuso la construcción de un intérprete de OCL basado en el paradigma funcional (usando Haskell), que incluye además la interpretación de modelos, metamodelos y transformaciones. El objetivo de este proyecto es continuar desarrollando las capacidades del intérprete, particularmente definiendo una transformación que permita generar la infraestructura funcional necesaria para interpretar expresiones OCL (OCL2Haskell), así como adaptar un editor de OCL (en Eclipse) para permitir ejecutar automáticamente la transformación y realizar la validación de dichas expresiones OCL haciendo que la infraestructura funcional sea transparente para el usuario final.
dc.format.extent.es.fl_str_mv 129 h.
dc.format.mimetype.en.fl_str_mv application/pdf
dc.identifier.citation.es.fl_str_mv Vaz, L y Sintas, G. Intérprete funcional para OCL : HaskellOCL [en línea] Tesis de grado. Montevideo : UR.FI.INCO, 2018.
dc.identifier.uri.none.fl_str_mv http://hdl.handle.net/20.500.12008/20219
dc.language.iso.none.fl_str_mv es
spa
dc.publisher.es.fl_str_mv UR.FI.INCO
dc.rights.license.none.fl_str_mv Licencia Creative Commons Atribución – No Comercial – Sin Derivadas (CC - By-NC-ND)
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 MDE
OCL
Haskell
Eclipse
dc.title.none.fl_str_mv Intérprete funcional para OCL : HaskellOCL
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 El paradigma de Ingeniería Dirigida por Modelos (MDE por sus siglas en inglés) propone la construcción de software basado en una abstracción de su complejidad a través de la definición de modelos y en un proceso de construcción (semi)automático guiado por transformaciones de estos modelos. El Object Constraint Language (OCL), un lenguaje formal que permite expresar restricciones que se deben cumplir para asegurar la corrección semántica de un modelo. El lenguaje se define como un lenguaje sin efectos secundarios que combina aspectos funcionales (ej. composición de funciones) y orientados a modelos (ej. herencia de tipos). Sus intérpretes se enfocan principalmente en aspectos orientados a modelos, proveyendo una representación directa de construcciones como herencia y navegación a través de propiedades de los elementos de los modelos. Sin embargo, en los últimos años se han propuesto diversas extensiones funcionales al lenguaje, por ejemplo: pattern matching, expresiones lambda y evaluación perezosa. En un trabajo previo se propuso la construcción de un intérprete de OCL basado en el paradigma funcional (usando Haskell), que incluye además la interpretación de modelos, metamodelos y transformaciones. El objetivo de este proyecto es continuar desarrollando las capacidades del intérprete, particularmente definiendo una transformación que permita generar la infraestructura funcional necesaria para interpretar expresiones OCL (OCL2Haskell), así como adaptar un editor de OCL (en Eclipse) para permitir ejecutar automáticamente la transformación y realizar la validación de dichas expresiones OCL haciendo que la infraestructura funcional sea transparente para el usuario final.
eu_rights_str_mv openAccess
format bachelorThesis
id COLIBRI_b079cb4b5ec8de8c1b5f286ddc967258
identifier_str_mv Vaz, L y Sintas, G. Intérprete funcional para OCL : HaskellOCL [en línea] Tesis de grado. Montevideo : UR.FI.INCO, 2018.
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/20219
publishDate 2018
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 – No Comercial – Sin Derivadas (CC - By-NC-ND)
spelling Vaz Leticia, Universidad de la República (Uruguay). Facultad de IngenieríaSintas Gonzalo, Universidad de la República (Uruguay). Facultad de Ingeniería2019-02-25T15:55:33Z2019-02-25T15:55:33Z2018Vaz, L y Sintas, G. Intérprete funcional para OCL : HaskellOCL [en línea] Tesis de grado. Montevideo : UR.FI.INCO, 2018.http://hdl.handle.net/20.500.12008/20219El paradigma de Ingeniería Dirigida por Modelos (MDE por sus siglas en inglés) propone la construcción de software basado en una abstracción de su complejidad a través de la definición de modelos y en un proceso de construcción (semi)automático guiado por transformaciones de estos modelos. El Object Constraint Language (OCL), un lenguaje formal que permite expresar restricciones que se deben cumplir para asegurar la corrección semántica de un modelo. El lenguaje se define como un lenguaje sin efectos secundarios que combina aspectos funcionales (ej. composición de funciones) y orientados a modelos (ej. herencia de tipos). Sus intérpretes se enfocan principalmente en aspectos orientados a modelos, proveyendo una representación directa de construcciones como herencia y navegación a través de propiedades de los elementos de los modelos. Sin embargo, en los últimos años se han propuesto diversas extensiones funcionales al lenguaje, por ejemplo: pattern matching, expresiones lambda y evaluación perezosa. En un trabajo previo se propuso la construcción de un intérprete de OCL basado en el paradigma funcional (usando Haskell), que incluye además la interpretación de modelos, metamodelos y transformaciones. El objetivo de este proyecto es continuar desarrollando las capacidades del intérprete, particularmente definiendo una transformación que permita generar la infraestructura funcional necesaria para interpretar expresiones OCL (OCL2Haskell), así como adaptar un editor de OCL (en Eclipse) para permitir ejecutar automáticamente la transformación y realizar la validación de dichas expresiones OCL haciendo que la infraestructura funcional sea transparente para el usuario final.Submitted by Seroubian Mabel (mabel.seroubian@seciu.edu.uy) on 2019-02-25T15:55:33Z No. of bitstreams: 2 license_rdf: 0 bytes, checksum: d41d8cd98f00b204e9800998ecf8427e (MD5) tg-vaz-sinta.pdf: 4498062 bytes, checksum: 8781eed0e60083ae4ad5c9e7fd255a26 (MD5)Made available in DSpace on 2019-02-25T15:55:33Z (GMT). No. of bitstreams: 2 license_rdf: 0 bytes, checksum: d41d8cd98f00b204e9800998ecf8427e (MD5) tg-vaz-sinta.pdf: 4498062 bytes, checksum: 8781eed0e60083ae4ad5c9e7fd255a26 (MD5) Previous issue date: 2018129 h.application/pdfesspaUR.FI.INCOLas 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 – No Comercial – Sin Derivadas (CC - By-NC-ND)MDEOCLHaskellEclipseIntérprete funcional para OCL : HaskellOCLTesis de gradoinfo:eu-repo/semantics/bachelorThesisinfo:eu-repo/semantics/acceptedVersionreponame:COLIBRIinstname:Universidad de la Repúblicainstacron:Universidad de la RepúblicaVaz, LeticiaSintas, GonzaloCalegari, DanielViera, MarcosUniversidad de la República (Uruguay). Facultad de IngenieríaIngeniero en ComputaciónLICENSElicense.txtlicense.txttext/plain; charset=utf-84267http://localhost:8080/xmlui/bitstream/20.500.12008/20219/5/license.txt6429389a7df7277b72b7924fdc7d47a9MD55CC-LICENSElicense_urllicense_urltext/plain; charset=utf-849http://localhost:8080/xmlui/bitstream/20.500.12008/20219/2/license_url4afdbb8c545fd630ea7db775da747b2fMD52license_textlicense_texttext/html; charset=utf-80http://localhost:8080/xmlui/bitstream/20.500.12008/20219/3/license_textd41d8cd98f00b204e9800998ecf8427eMD53license_rdflicense_rdfapplication/rdf+xml; charset=utf-80http://localhost:8080/xmlui/bitstream/20.500.12008/20219/4/license_rdfd41d8cd98f00b204e9800998ecf8427eMD54ORIGINALtg-vaz-sinta.pdftg-vaz-sinta.pdfapplication/pdf4498062http://localhost:8080/xmlui/bitstream/20.500.12008/20219/1/tg-vaz-sinta.pdf8781eed0e60083ae4ad5c9e7fd255a26MD5120.500.12008/202192024-04-12 14:06:40.238oai:colibri.udelar.edu.uy:20.500.12008/20219VGVybWlub3MgeSBjb25kaWNpb25lcyByZWxhdGl2YXMgYWwgZGVwb3NpdG8gZGUgb2JyYXMKCgpMYXMgb2JyYXMgZGVwb3NpdGFkYXMgZW4gZWwgUmVwb3NpdG9yaW8gc2UgcmlnZW4gcG9yIGxhIE9yZGVuYW56YSBkZSBsb3MgRGVyZWNob3MgZGUgbGEgUHJvcGllZGFkIEludGVsZWN0dWFsICBkZSBsYSBVbml2ZXJzaWRhZCBEZSBMYSBSZXDDumJsaWNhLiAoUmVzLiBOwrogOTEgZGUgQy5ELkMuIGRlIDgvSUlJLzE5OTQg4oCTIEQuTy4gNy9JVi8xOTk0KSB5ICBwb3IgbGEgT3JkZW5hbnphIGRlbCBSZXBvc2l0b3JpbyBBYmllcnRvIGRlIGxhIFVuaXZlcnNpZGFkIGRlIGxhIFJlcMO6YmxpY2EgKFJlcy4gTsK6IDE2IGRlIEMuRC5DLiBkZSAwNy8xMC8yMDE0KS4gCgpBY2VwdGFuZG8gZWwgYXV0b3IgZXN0b3MgdMOpcm1pbm9zIHkgY29uZGljaW9uZXMgZGUgZGVww7NzaXRvIGVuIENPTElCUkksIGxhIFVuaXZlcnNpZGFkIGRlIFJlcMO6YmxpY2EgcHJvY2VkZXLDoSBhOiAgCgphKSBhcmNoaXZhciBtw6FzIGRlIHVuYSBjb3BpYSBkZSBsYSBvYnJhIGVuIGxvcyBzZXJ2aWRvcmVzIGRlIGxhIFVuaXZlcnNpZGFkIGEgbG9zIGVmZWN0b3MgZGUgZ2FyYW50aXphciBhY2Nlc28sIHNlZ3VyaWRhZCB5IHByZXNlcnZhY2nDs24KYikgY29udmVydGlyIGxhIG9icmEgYSBvdHJvcyBmb3JtYXRvcyBzaSBmdWVyYSBuZWNlc2FyaW8gIHBhcmEgZmFjaWxpdGFyIHN1IHByZXNlcnZhY2nDs24geSBhY2Nlc2liaWxpZGFkIHNpbiBhbHRlcmFyIHN1IGNvbnRlbmlkby4KYykgcmVhbGl6YXIgbGEgY29tdW5pY2FjacOzbiBww7pibGljYSB5IGRpc3BvbmVyIGVsIGFjY2VzbyBsaWJyZSB5IGdyYXR1aXRvIGEgdHJhdsOpcyBkZSBJbnRlcm5ldCBtZWRpYW50ZSBsYSBwdWJsaWNhY2nDs24gZGUgbGEgb2JyYSBiYWpvIGxhIGxpY2VuY2lhIENyZWF0aXZlIENvbW1vbnMgc2VsZWNjaW9uYWRhIHBvciBlbCBwcm9waW8gYXV0b3IuCgoKRW4gY2FzbyBxdWUgZWwgYXV0b3IgaGF5YSBkaWZ1bmRpZG8geSBkYWRvIGEgcHVibGljaWRhZCBhIGxhIG9icmEgZW4gZm9ybWEgcHJldmlhLCAgcG9kcsOhIHNvbGljaXRhciB1biBwZXLDrW9kbyBkZSBlbWJhcmdvIHNvYnJlIGxhIGRpc3BvbmliaWxpZGFkIHDDumJsaWNhIGRlIGxhIG1pc21hLCBlbCBjdWFsIGNvbWVuemFyw6EgYSBwYXJ0aXIgZGUgbGEgYWNlcHRhY2nDs24gZGUgZXN0ZSBkb2N1bWVudG8geSBoYXN0YSBsYSBmZWNoYSBxdWUgaW5kaXF1ZSAuCgpFbCBhdXRvciBhc2VndXJhIHF1ZSBsYSBvYnJhIG5vIGluZnJpZ2UgbmluZ8O6biBkZXJlY2hvIHNvYnJlIHRlcmNlcm9zLCB5YSBzZWEgZGUgcHJvcGllZGFkIGludGVsZWN0dWFsIG8gY3VhbHF1aWVyIG90cm8uCgpFbCBhdXRvciBnYXJhbnRpemEgcXVlIHNpIGVsIGRvY3VtZW50byBjb250aWVuZSBtYXRlcmlhbGVzIGRlIGxvcyBjdWFsZXMgbm8gdGllbmUgbG9zIGRlcmVjaG9zIGRlIGF1dG9yLCAgaGEgb2J0ZW5pZG8gZWwgcGVybWlzbyBkZWwgcHJvcGlldGFyaW8gZGUgbG9zIGRlcmVjaG9zIGRlIGF1dG9yLCB5IHF1ZSBlc2UgbWF0ZXJpYWwgY3V5b3MgZGVyZWNob3Mgc29uIGRlIHRlcmNlcm9zIGVzdMOhIGNsYXJhbWVudGUgaWRlbnRpZmljYWRvIHkgcmVjb25vY2lkbyBlbiBlbCB0ZXh0byBvIGNvbnRlbmlkbyBkZWwgZG9jdW1lbnRvIGRlcG9zaXRhZG8gZW4gZWwgUmVwb3NpdG9yaW8uCgpFbiBvYnJhcyBkZSBhdXRvcsOtYSBtw7psdGlwbGUgL3NlIHByZXN1bWUvIHF1ZSBlbCBhdXRvciBkZXBvc2l0YW50ZSBkZWNsYXJhIHF1ZSBoYSByZWNhYmFkbyBlbCBjb25zZW50aW1pZW50byBkZSB0b2RvcyBsb3MgYXV0b3JlcyBwYXJhIHB1YmxpY2FybGEgZW4gZWwgUmVwb3NpdG9yaW8sIHNpZW5kbyDDqXN0ZSBlbCDDum5pY28gcmVzcG9uc2FibGUgZnJlbnRlIGEgY3VhbHF1aWVyIHRpcG8gZGUgcmVjbGFtYWNpw7NuIGRlIGxvcyBvdHJvcyBjb2F1dG9yZXMuCgpFbCBhdXRvciBzZXLDoSByZXNwb25zYWJsZSBkZWwgY29udGVuaWRvIGRlIGxvcyBkb2N1bWVudG9zIHF1ZSBkZXBvc2l0YS4gTGEgVURFTEFSIG5vIHNlcsOhIHJlc3BvbnNhYmxlIHBvciBsYXMgZXZlbnR1YWxlcyB2aW9sYWNpb25lcyBhbCBkZXJlY2hvIGRlIHByb3BpZWRhZCBpbnRlbGVjdHVhbCBlbiBxdWUgcHVlZGEgaW5jdXJyaXIgZWwgYXV0b3IuCgpBbnRlIGN1YWxxdWllciBkZW51bmNpYSBkZSB2aW9sYWNpw7NuIGRlIGRlcmVjaG9zIGRlIHByb3BpZWRhZCBpbnRlbGVjdHVhbCwgbGEgVURFTEFSICBhZG9wdGFyw6EgdG9kYXMgbGFzIG1lZGlkYXMgbmVjZXNhcmlhcyBwYXJhIGV2aXRhciBsYSBjb250aW51YWNpw7NuIGRlIGRpY2hhIGluZnJhY2Npw7NuLCBsYXMgcXVlIHBvZHLDoW4gaW5jbHVpciBlbCByZXRpcm8gZGVsIGFjY2VzbyBhIGxvcyBjb250ZW5pZG9zIHkvbyBtZXRhZGF0b3MgZGVsIGRvY3VtZW50byByZXNwZWN0aXZvLgoKTGEgb2JyYSBzZSBwb25kcsOhIGEgZGlzcG9zaWNpw7NuIGRlbCBww7pibGljbyBhIHRyYXbDqXMgZGUgbGFzIGxpY2VuY2lhcyBDcmVhdGl2ZSBDb21tb25zLCBlbCBhdXRvciBwb2Ryw6Egc2VsZWNjaW9uYXIgdW5hIGRlIGxhcyA2IGxpY2VuY2lhcyBkaXNwb25pYmxlczoKCgpBdHJpYnVjacOzbiAoQ0MgLSBCeSk6IFBlcm1pdGUgdXNhciBsYSBvYnJhIHkgZ2VuZXJhciBvYnJhcyBkZXJpdmFkYXMsIGluY2x1c28gY29uIGZpbmVzIGNvbWVyY2lhbGVzLCBzaWVtcHJlIHF1ZSBzZSByZWNvbm96Y2EgYWwgYXV0b3IuCgpBdHJpYnVjacOzbiDigJMgQ29tcGFydGlyIElndWFsIChDQyAtIEJ5LVNBKTogUGVybWl0ZSB1c2FyIGxhIG9icmEgeSBnZW5lcmFyIG9icmFzIGRlcml2YWRhcywgaW5jbHVzbyBjb24gZmluZXMgY29tZXJjaWFsZXMsIHBlcm8gbGEgZGlzdHJpYnVjacOzbiBkZSBsYXMgb2JyYXMgZGVyaXZhZGFzIGRlYmUgaGFjZXJzZSBtZWRpYW50ZSB1bmEgbGljZW5jaWEgaWTDqW50aWNhIGEgbGEgZGUgbGEgb2JyYSBvcmlnaW5hbCwgcmVjb25vY2llbmRvIGEgbG9zIGF1dG9yZXMuCgpBdHJpYnVjacOzbiDigJMgTm8gQ29tZXJjaWFsIChDQyAtIEJ5LU5DKTogUGVybWl0ZSB1c2FyIGxhIG9icmEgeSBnZW5lcmFyIG9icmFzIGRlcml2YWRhcywgc2llbXByZSB5IGN1YW5kbyBlc29zIHVzb3Mgbm8gdGVuZ2FuIGZpbmVzIGNvbWVyY2lhbGVzLCByZWNvbm9jaWVuZG8gYWwgYXV0b3IuCgpBdHJpYnVjacOzbiDigJMgU2luIERlcml2YWRhcyAoQ0MgLSBCeS1ORCk6IFBlcm1pdGUgZWwgdXNvIGRlIGxhIG9icmEsIGluY2x1c28gY29uIGZpbmVzIGNvbWVyY2lhbGVzLCBwZXJvIG5vIHNlIHBlcm1pdGUgZ2VuZXJhciBvYnJhcyBkZXJpdmFkYXMsIGRlYmllbmRvIHJlY29ub2NlciBhbCBhdXRvci4KCkF0cmlidWNpw7NuIOKAkyBObyBDb21lcmNpYWwg4oCTIENvbXBhcnRpciBJZ3VhbCAoQ0Mg4oCTIEJ5LU5DLVNBKTogUGVybWl0ZSB1c2FyIGxhIG9icmEgeSBnZW5lcmFyIG9icmFzIGRlcml2YWRhcywgc2llbXByZSB5IGN1YW5kbyBlc29zIHVzb3Mgbm8gdGVuZ2FuIGZpbmVzIGNvbWVyY2lhbGVzIHkgbGEgZGlzdHJpYnVjacOzbiBkZSBsYXMgb2JyYXMgZGVyaXZhZGFzIHNlIGhhZ2EgbWVkaWFudGUgbGljZW5jaWEgaWTDqW50aWNhIGEgbGEgZGUgbGEgb2JyYSBvcmlnaW5hbCwgcmVjb25vY2llbmRvIGEgbG9zIGF1dG9yZXMuCgpBdHJpYnVjacOzbiDigJMgTm8gQ29tZXJjaWFsIOKAkyBTaW4gRGVyaXZhZGFzIChDQyAtIEJ5LU5DLU5EKTogUGVybWl0ZSB1c2FyIGxhIG9icmEsIHBlcm8gbm8gc2UgcGVybWl0ZSBnZW5lcmFyIG9icmFzIGRlcml2YWRhcyB5IG5vIHNlIHBlcm1pdGUgdXNvIGNvbiBmaW5lcyBjb21lcmNpYWxlcywgZGViaWVuZG8gcmVjb25vY2VyIGFsIGF1dG9yLgoKTG9zIHVzb3MgcHJldmlzdG9zIGVuIGxhcyBsaWNlbmNpYXMgaW5jbHV5ZW4gbGEgZW5hamVuYWNpw7NuLCByZXByb2R1Y2Npw7NuLCBjb211bmljYWNpw7NuLCBwdWJsaWNhY2nDs24sIGRpc3RyaWJ1Y2nDs24geSBwdWVzdGEgYSBkaXNwb3NpY2nDs24gZGVsIHDDumJsaWNvLiBMYSBjcmVhY2nDs24gZGUgb2JyYXMgZGVyaXZhZGFzIGluY2x1eWUgbGEgYWRhcHRhY2nDs24sIHRyYWR1Y2Npw7NuIHkgZWwgcmVtaXguCgpDdWFuZG8gc2Ugc2VsZWNjaW9uZSB1bmEgbGljZW5jaWEgcXVlIGhhYmlsaXRlIHVzb3MgY29tZXJjaWFsZXMsIGVsIGRlcMOzc2l0byBkZWJlcsOhIHNlciBhY29tcGHDsWFkbyBkZWwgYXZhbCBkZWwgamVyYXJjYSBtw6F4aW1vIGRlbCBTZXJ2aWNpbyBjb3JyZXNwb25kaWVudGUuCg==Universidadhttps://udelar.edu.uy/https://www.colibri.udelar.edu.uy/oai/requestmabel.seroubian@seciu.edu.uyUruguayopendoar:47712024-07-25T14:46:16.005680COLIBRI - Universidad de la Repúblicafalse
spellingShingle Intérprete funcional para OCL : HaskellOCL
Vaz, Leticia
MDE
OCL
Haskell
Eclipse
status_str acceptedVersion
title Intérprete funcional para OCL : HaskellOCL
title_full Intérprete funcional para OCL : HaskellOCL
title_fullStr Intérprete funcional para OCL : HaskellOCL
title_full_unstemmed Intérprete funcional para OCL : HaskellOCL
title_short Intérprete funcional para OCL : HaskellOCL
title_sort Intérprete funcional para OCL : HaskellOCL
topic MDE
OCL
Haskell
Eclipse
url http://hdl.handle.net/20.500.12008/20219