Por favor, use este identificador para citar o enlazar este ítem: http://repositoriodigital.ipn.mx/handle/123456789/6043
Título : Un modelo de intérprete para un lenguaje de programación de sistemas basado en C
Autor : Téllez Castillo, Germán
Zaragoza Martínez, Francisco Javier
Castro Campos, Rodrigo Alexander
Palabras clave : C (Computer program language)
Interpreters (Computer programs)
Fecha de publicación : 2011
Editorial : Instituto Politécnico Nacional. Centro de Investigación en Computación
Resumen : El significado de lo que es un entorno de programación moderno ha cambiado significativamente en los últimos años. Los lenguajes de programación tradicionales como C, C++ o Fortran han perdido terreno tanto en la industria como en la academia ante tecnologías aparentemente más flexibles. Esto es una consecuencia de la importancia que ha tomado la computación en la industria y el comercio y una fuente importante de debates pues diferentes sectores tienen diferentes necesidades. La mayoría de los lenguajes creados a partir de 1980 han optado por la facilidad de uso a cambio de sacrificar el rendimiento en tiempo y el consumo de memoria de los programas resultantes, dejando de lado lenguajes más eficientes pero que generalmente son percibidos como complejos. Si bien buena parte del problema radica en la formación de los programadores, mucha de la percibida complejidad tiene origen en el lento proceso de desarrollo y estandarización de muchos de estos lenguajes. Además, anteriormente existían limitantes tecnológicas importantes que hacían inviable la implementación de mejores diseños. Esta tesis tiene como motivación la creación de un lenguaje de programación que sea al menos tan eficiente como C y que sea más expresivo que los lenguajes de propósito general más usados actualmente. C++ tiene objetivos similares pero pretende ser compatible con C a nivel de código fuente, heredando de esta forma muchos de sus problemas. El lenguaje presentado en esta tesis no se impone esta restricción. Esta tesis presenta también el diseño y la implementación de un intérprete para este lenguaje que sea capaz de ejecutar parcialmente programas con errores léxicos o sintácticos y hacerlo de manera eficiente, eliminando así algunos de los inconvenientes que se presentan al querer llevar a ejecución el código fuente. La implementación de este intérprete demuestra también la factibilidad de implementar el lenguaje propuesto. // The meaning of a modern programming environment has changed significantly in the last years. Traditional programming languages such as C, C++ and Fortran have lost terrain in both the enterprise and the academy against technologies that appear to be more flexible. This is a consequence of the commercial impact of enterprise computing and an important source of discussions as different sectors have different needs. Most of the programming languages invented after 1980 have opted for easy of use to the detriment of both runtime performance and memory consumption of the resulting programs, ignoring more efficient but often considered more complex alternatives. While many of the current problems in software engineering have their root in the programmers’ education, much of the complexity of some programming languages is caused by their slow evolution and standarization. Also, these languages often include less than optimal design decisions that were forced by the technological limitations that existed several decades ago. The motivation of this thesis is the creation of a programming language that is as or more efficient than C while being at the same time more expressive than the most used general purpose programming languages. C++ has similar goals but it pretends to be compatible with C at source code level, inheriting many of its problems. The language presented in this thesis does not have this restriction. This thesis also presents the design and the implementation of an interpreter for the mentioned language that is able to partially execute some lexically or sintactically bad formed programs while doing this efficiently, eliminating some of the inconvenients typically found while trying to execute source code. The implementation of this interpreter also shows the feasibility of implementing the proposed language.
Descripción : Maestría en Ciencias de la Computación
URI : http://www.repositoriodigital.ipn.mx/handle/123456789/6043
Aparece en las colecciones: Maestría

Ficheros en este ítem:
Fichero Descripción Tamaño Formato  
Tesis 12328.pdf1.68 MBAdobe PDFVisualizar/Abrir


Los ítems de DSpace están protegidos por copyright, con todos los derechos reservados, a menos que se indique lo contrario.