Simulando operadores disfijos

La extensibilidad en lenguajes de programación se refiere a la posibilidad de tener un lenguaje donde el programador puede añadir sus propias construcciones sintácticas. Dicha propiedad permite trasladar muchas construcciones del lenguaje de programación a librerías. Este trabajo muestra algunos pro...

Full description

Autores:
Echeverri Saldarriaga, Diego
Tipo de recurso:
Fecha de publicación:
2010
Institución:
Universidad EAFIT
Repositorio:
Repositorio EAFIT
Idioma:
spa
OAI Identifier:
oai:repository.eafit.edu.co:10784/414
Acceso en línea:
http://hdl.handle.net/10784/414
Palabra clave:
Proyecto de Grado. Ingeniería de Sistemas
Desarrollo de software
Programación declarativa
Operadores disfijos
Computer programming, programs, data
Programming languages
Specific programming languages
INGENIERIA DE SOFTWARE
TECNOLOGIA DE LA INFORMACION
PROGRAMACION FUNCIONAL (COMPUTADORES)
LENGUAJES DE PROGRAMACION (COMPUTADORES ELECTRONICOS)
DESARROLLO DE PROGRAMAS PARA COMPUTADOR
Degree Project. Systems Engineering
Software development
Declarative programming
Disfix operators
Rights
License
Acceso abierto
id REPOEAFIT2_096712dae98b365f0d1c44442e749f34
oai_identifier_str oai:repository.eafit.edu.co:10784/414
network_acronym_str REPOEAFIT2
network_name_str Repositorio EAFIT
repository_id_str
dc.title.spa.fl_str_mv Simulando operadores disfijos
title Simulando operadores disfijos
spellingShingle Simulando operadores disfijos
Proyecto de Grado. Ingeniería de Sistemas
Desarrollo de software
Programación declarativa
Operadores disfijos
Computer programming, programs, data
Programming languages
Specific programming languages
INGENIERIA DE SOFTWARE
TECNOLOGIA DE LA INFORMACION
PROGRAMACION FUNCIONAL (COMPUTADORES)
LENGUAJES DE PROGRAMACION (COMPUTADORES ELECTRONICOS)
DESARROLLO DE PROGRAMAS PARA COMPUTADOR
Degree Project. Systems Engineering
Software development
Declarative programming
Disfix operators
title_short Simulando operadores disfijos
title_full Simulando operadores disfijos
title_fullStr Simulando operadores disfijos
title_full_unstemmed Simulando operadores disfijos
title_sort Simulando operadores disfijos
dc.creator.fl_str_mv Echeverri Saldarriaga, Diego
dc.contributor.author.spa.fl_str_mv Echeverri Saldarriaga, Diego
dc.subject.spa.fl_str_mv Proyecto de Grado. Ingeniería de Sistemas
Desarrollo de software
Programación declarativa
Operadores disfijos
topic Proyecto de Grado. Ingeniería de Sistemas
Desarrollo de software
Programación declarativa
Operadores disfijos
Computer programming, programs, data
Programming languages
Specific programming languages
INGENIERIA DE SOFTWARE
TECNOLOGIA DE LA INFORMACION
PROGRAMACION FUNCIONAL (COMPUTADORES)
LENGUAJES DE PROGRAMACION (COMPUTADORES ELECTRONICOS)
DESARROLLO DE PROGRAMAS PARA COMPUTADOR
Degree Project. Systems Engineering
Software development
Declarative programming
Disfix operators
dc.subject.ddc.spa.fl_str_mv Computer programming, programs, data
Programming languages
Specific programming languages
dc.subject.lemb.spa.fl_str_mv INGENIERIA DE SOFTWARE
TECNOLOGIA DE LA INFORMACION
PROGRAMACION FUNCIONAL (COMPUTADORES)
LENGUAJES DE PROGRAMACION (COMPUTADORES ELECTRONICOS)
DESARROLLO DE PROGRAMAS PARA COMPUTADOR
dc.subject.keyword.eng.fl_str_mv Degree Project. Systems Engineering
Software development
Declarative programming
Disfix operators
description La extensibilidad en lenguajes de programación se refiere a la posibilidad de tener un lenguaje donde el programador puede añadir sus propias construcciones sintácticas. Dicha propiedad permite trasladar muchas construcciones del lenguaje de programación a librerías. Este trabajo muestra algunos problemas en la implementación de un lenguaje con características objetuales a partir de un lenguaje funcional, perezoso que utiliza un subconjunto de operadores disfijos como mecanismo de extensibilidad.
publishDate 2010
dc.date.issued.none.fl_str_mv 2010-05-03
dc.date.available.none.fl_str_mv 2013-02-15T15:38:03Z
dc.date.accessioned.none.fl_str_mv 2013-02-15T15:38:03Z
dc.type.none.fl_str_mv info:eu-repo/semantics/bachelorThesis
dc.type.eng.fl_str_mv bachelorThesis
dc.type.coar.fl_str_mv http://purl.org/coar/resource_type/c_7a1f
dc.type.local.spa.fl_str_mv Trabajo de grado
dc.type.hasVersion.eng.fl_str_mv acceptedVersion
dc.identifier.uri.none.fl_str_mv http://hdl.handle.net/10784/414
dc.identifier.local.none.fl_str_mv 005.133 E184
url http://hdl.handle.net/10784/414
identifier_str_mv 005.133 E184
dc.language.iso.spa.fl_str_mv spa
language spa
dc.rights.coar.fl_str_mv http://purl.org/coar/access_right/c_abf2
dc.rights.local.spa.fl_str_mv Acceso abierto
rights_invalid_str_mv Acceso abierto
http://purl.org/coar/access_right/c_abf2
dc.coverage.spatial.eng.fl_str_mv Medellín de: Lat: 06 15 00 N degrees minutes Lat: 6.2500 decimal degrees Long: 075 36 00 W degrees minutes Long: -75.6000 decimal degrees
dc.publisher.spa.fl_str_mv Universidad EAFIT
dc.publisher.program.spa.fl_str_mv Ingeniería de Sistemas
dc.publisher.department.spa.fl_str_mv Escuela de Ingeniería. Departamento de Ingeniería de Sistemas
institution Universidad EAFIT
bitstream.url.fl_str_mv https://repository.eafit.edu.co/bitstreams/1182763d-f4a2-400e-bebc-b8388390f13f/download
https://repository.eafit.edu.co/bitstreams/a276a13a-95f6-45d4-8984-7e9f90c7584b/download
bitstream.checksum.fl_str_mv 35bd4773536ce18ee7664293c24be4e7
8a4605be74aa9ea9d79846c1fba20a33
bitstream.checksumAlgorithm.fl_str_mv MD5
MD5
repository.name.fl_str_mv Repositorio Institucional Universidad EAFIT
repository.mail.fl_str_mv repositorio@eafit.edu.co
_version_ 1808498871783915520
spelling Medellín de: Lat: 06 15 00 N degrees minutes Lat: 6.2500 decimal degrees Long: 075 36 00 W degrees minutes Long: -75.6000 decimal degrees2013-02-15T15:38:03Z2010-05-032013-02-15T15:38:03Zhttp://hdl.handle.net/10784/414005.133 E184La extensibilidad en lenguajes de programación se refiere a la posibilidad de tener un lenguaje donde el programador puede añadir sus propias construcciones sintácticas. Dicha propiedad permite trasladar muchas construcciones del lenguaje de programación a librerías. Este trabajo muestra algunos problemas en la implementación de un lenguaje con características objetuales a partir de un lenguaje funcional, perezoso que utiliza un subconjunto de operadores disfijos como mecanismo de extensibilidad.005.133 E184Extensibility in programming language design is about the possibility of letting the programmer add it's own syntactic constructions. This property allows to transfer some built-in functions to libraries. This thesis shows some problems implementing a programming language with object oriented features starting from a lazy, functional language that uses a subset of disfix operators as an extensibility mechanism.Contenido parcial: Conceptos de diseño de lenguajes de programación -- Sintaxis concreta versus sintaxis abstracta -- Gramáticas independientes del contexto, notación y ambigüedad -- Lambda Cálculo -- Expresiones lambda -- Parsing, análisis y evaluación -- Jugando con los operadores disfijos.spaUniversidad EAFITIngeniería de SistemasEscuela de Ingeniería. Departamento de Ingeniería de SistemasProyecto de Grado. Ingeniería de SistemasDesarrollo de softwareProgramación declarativaOperadores disfijosComputer programming, programs, dataProgramming languagesSpecific programming languagesINGENIERIA DE SOFTWARETECNOLOGIA DE LA INFORMACIONPROGRAMACION FUNCIONAL (COMPUTADORES)LENGUAJES DE PROGRAMACION (COMPUTADORES ELECTRONICOS)DESARROLLO DE PROGRAMAS PARA COMPUTADORDegree Project. Systems EngineeringSoftware developmentDeclarative programmingDisfix operatorsSimulando operadores disfijosinfo:eu-repo/semantics/bachelorThesisbachelorThesisTrabajo de gradoacceptedVersionhttp://purl.org/coar/resource_type/c_7a1fAcceso abiertohttp://purl.org/coar/access_right/c_abf2Echeverri Saldarriaga, DiegoIngeniero de SistemasORIGINALDiego_EcheverriSaldarriaga_2010.pdfDiego_EcheverriSaldarriaga_2010.pdfapplication/pdf384671https://repository.eafit.edu.co/bitstreams/1182763d-f4a2-400e-bebc-b8388390f13f/download35bd4773536ce18ee7664293c24be4e7MD51LICENSElicense.txtlicense.txttext/plain; charset=utf-81748https://repository.eafit.edu.co/bitstreams/a276a13a-95f6-45d4-8984-7e9f90c7584b/download8a4605be74aa9ea9d79846c1fba20a33MD5210784/414oai:repository.eafit.edu.co:10784/4142013-02-15 10:38:03.581open.accesshttps://repository.eafit.edu.coRepositorio Institucional Universidad EAFITrepositorio@eafit.edu.coTk9URTogUExBQ0UgWU9VUiBPV04gTElDRU5TRSBIRVJFClRoaXMgc2FtcGxlIGxpY2Vuc2UgaXMgcHJvdmlkZWQgZm9yIGluZm9ybWF0aW9uYWwgcHVycG9zZXMgb25seS4KCk5PTi1FWENMVVNJVkUgRElTVFJJQlVUSU9OIExJQ0VOU0UKCkJ5IHNpZ25pbmcgYW5kIHN1Ym1pdHRpbmcgdGhpcyBsaWNlbnNlLCB5b3UgKHRoZSBhdXRob3Iocykgb3IgY29weXJpZ2h0Cm93bmVyKSBncmFudHMgdG8gRFNwYWNlIFVuaXZlcnNpdHkgKERTVSkgdGhlIG5vbi1leGNsdXNpdmUgcmlnaHQgdG8gcmVwcm9kdWNlLAp0cmFuc2xhdGUgKGFzIGRlZmluZWQgYmVsb3cpLCBhbmQvb3IgZGlzdHJpYnV0ZSB5b3VyIHN1Ym1pc3Npb24gKGluY2x1ZGluZwp0aGUgYWJzdHJhY3QpIHdvcmxkd2lkZSBpbiBwcmludCBhbmQgZWxlY3Ryb25pYyBmb3JtYXQgYW5kIGluIGFueSBtZWRpdW0sCmluY2x1ZGluZyBidXQgbm90IGxpbWl0ZWQgdG8gYXVkaW8gb3IgdmlkZW8uCgpZb3UgYWdyZWUgdGhhdCBEU1UgbWF5LCB3aXRob3V0IGNoYW5naW5nIHRoZSBjb250ZW50LCB0cmFuc2xhdGUgdGhlCnN1Ym1pc3Npb24gdG8gYW55IG1lZGl1bSBvciBmb3JtYXQgZm9yIHRoZSBwdXJwb3NlIG9mIHByZXNlcnZhdGlvbi4KCllvdSBhbHNvIGFncmVlIHRoYXQgRFNVIG1heSBrZWVwIG1vcmUgdGhhbiBvbmUgY29weSBvZiB0aGlzIHN1Ym1pc3Npb24gZm9yCnB1cnBvc2VzIG9mIHNlY3VyaXR5LCBiYWNrLXVwIGFuZCBwcmVzZXJ2YXRpb24uCgpZb3UgcmVwcmVzZW50IHRoYXQgdGhlIHN1Ym1pc3Npb24gaXMgeW91ciBvcmlnaW5hbCB3b3JrLCBhbmQgdGhhdCB5b3UgaGF2ZQp0aGUgcmlnaHQgdG8gZ3JhbnQgdGhlIHJpZ2h0cyBjb250YWluZWQgaW4gdGhpcyBsaWNlbnNlLiBZb3UgYWxzbyByZXByZXNlbnQKdGhhdCB5b3VyIHN1Ym1pc3Npb24gZG9lcyBub3QsIHRvIHRoZSBiZXN0IG9mIHlvdXIga25vd2xlZGdlLCBpbmZyaW5nZSB1cG9uCmFueW9uZSdzIGNvcHlyaWdodC4KCklmIHRoZSBzdWJtaXNzaW9uIGNvbnRhaW5zIG1hdGVyaWFsIGZvciB3aGljaCB5b3UgZG8gbm90IGhvbGQgY29weXJpZ2h0LAp5b3UgcmVwcmVzZW50IHRoYXQgeW91IGhhdmUgb2J0YWluZWQgdGhlIHVucmVzdHJpY3RlZCBwZXJtaXNzaW9uIG9mIHRoZQpjb3B5cmlnaHQgb3duZXIgdG8gZ3JhbnQgRFNVIHRoZSByaWdodHMgcmVxdWlyZWQgYnkgdGhpcyBsaWNlbnNlLCBhbmQgdGhhdApzdWNoIHRoaXJkLXBhcnR5IG93bmVkIG1hdGVyaWFsIGlzIGNsZWFybHkgaWRlbnRpZmllZCBhbmQgYWNrbm93bGVkZ2VkCndpdGhpbiB0aGUgdGV4dCBvciBjb250ZW50IG9mIHRoZSBzdWJtaXNzaW9uLgoKSUYgVEhFIFNVQk1JU1NJT04gSVMgQkFTRUQgVVBPTiBXT1JLIFRIQVQgSEFTIEJFRU4gU1BPTlNPUkVEIE9SIFNVUFBPUlRFRApCWSBBTiBBR0VOQ1kgT1IgT1JHQU5JWkFUSU9OIE9USEVSIFRIQU4gRFNVLCBZT1UgUkVQUkVTRU5UIFRIQVQgWU9VIEhBVkUKRlVMRklMTEVEIEFOWSBSSUdIVCBPRiBSRVZJRVcgT1IgT1RIRVIgT0JMSUdBVElPTlMgUkVRVUlSRUQgQlkgU1VDSApDT05UUkFDVCBPUiBBR1JFRU1FTlQuCgpEU1Ugd2lsbCBjbGVhcmx5IGlkZW50aWZ5IHlvdXIgbmFtZShzKSBhcyB0aGUgYXV0aG9yKHMpIG9yIG93bmVyKHMpIG9mIHRoZQpzdWJtaXNzaW9uLCBhbmQgd2lsbCBub3QgbWFrZSBhbnkgYWx0ZXJhdGlvbiwgb3RoZXIgdGhhbiBhcyBhbGxvd2VkIGJ5IHRoaXMKbGljZW5zZSwgdG8geW91ciBzdWJtaXNzaW9uLgo=