2.1 Visión del problema.
Proporciona modelos de diseño que permitan caracterizar el desarrollo de aplicaciones utilizando un lenguaje de programación se necesita un lenguaje de modelado que sea capaz de capturar la semántica del modelo al que se ajusta el lenguaje de programación.
El modelado de diseño proporcionado por el lenguaje de modelado debe ser capas de capturar la semántica del programa que implementa la especificación de requisitos.
En los últimos años, una de las artes mas predominantes en el mundo de la programación ha sido el diseño de lenguaje de programación. El numero de lenguajes de programación propuesta y diseñados son extremadamente grandes. Aun el numero de de lenguajes para el que un compilador ha aplicado es inmenso. Sammet (1976) indica 167 en su lista 1974–1975.
Los primeros lenguajes fueron los pioneros, explorando un nuevo campo. No es de sorprenderse que carecieran de un buen diseño.
Después que el desarrollo inicial del lenguaje de alto nivel y la implementación de los primeros pocos compiladores, allí resultó un período bastante largo en el que las tentativas conscientes se hicieron para diseñar nuevos lenguajes sin los desperfectos de los viejos. La mayor parte de estas tentativas eran los fracasos, no tanto de una falta de ideas en cómo diseñar mejores lenguajes como de un superávit de ideas.
http://www.mitecnologico.com/Main/VisionProblemaDise%F1oLenguajesDeProgramacion
2.2 Consideraciones Premilinares.
Debemos tomar en cuenta las palabras
reservadas del lenguaje, los operadores, los
tipos de datos.
• Debemos considerar el objetivo del
lenguaje, si es un lenguaje de enseñanza, si
es un lenguaje para profesionales, si el
código desarrollado va a ser mejor.
¿Cual es el proposito del lenguaje?
-No hay un lenguaje bueno para todo
-Aplicacion especifica
*Bases de datos, sistemas expertos, calculo numero, programacion simbolica, diseño de algortimico, etc.
¿Es necesario diseñar un nuevo lenguaje?
-Ya existe un lenguaje apropiado
*El nuevo lenguaje se diferencia de los existentes
-Se consume demasiado tiempo en el diseño e implementacion de un nuevo lenguaje
*Es demasiado facil diseñar un lenguaje incompleto
*Lenguaje demasiado especializado
*Sacrificar caracteristicas del lenguaje por un compilador simple
-Otras opciones
*Un modulo o libreria de funciones
*Ampliar un lenguaje de programacion
http://convena.upb.edu.co/aospina/docs/compil_cap2.pdf
2.3 Objetivos y filosofías del diseño de los lenguajes de programación.
Algunos usos de los lenguajes de
programación son:
– Comunicación humana
– Prevención y Detección de errores
– Usabilidad
– Portabilidad
– Independencia de la máquina
Filosofías
• Se debe lograr una correcta comunicación entre
emisor y receptor
• Es más importante que un programa sea leíble que
escribible, ya que un programa generalmente se
escribe una vez y se lee muchas veces
(documentación, mantenimiento, etc.)
• La tendencia actual es separa la interfaz de la
implementación
Tratar de hacer lenguajes para múltiples
arquitecturas de computadoras (máquinas
virtuales)
• Control de apuntadores
• Control de tipo de datos robustos
• Simplicidad por eficiencia
http://antares.itmorelia.edu.mx/~jcolivar/courses/ps207a/ps2_u2.pdf
2.4 Diseño detallado.
El diseño detallado tiene que ver con la especificación de detalles algorítmicos, representaciones concretas de datos, interconexiones entre funciones y estructuras de datos, y empaque del producto de programación. El diseño detallado está fuertemente influenciado por el lenguaje de instrumentación, pero no es lo mismo que la instrumentación; el diseño detallado tiene que ver más con aspectos semánticos y menos con detalles sintácticos que es la instrumentación.
El punto de inicio para el diseño detallado es una estructura arquitectónica a la que se le van a proporcionar los detalles algorítmicos y las representaciones concretas de datos. Mientras que hay una fuerte tentación para proceder directamente de la estructura arquitectónica a la instrumentación, hay varias ventajas que pueden lograrse en el nivel intermedio de detalle proporcionado por el diseño detallado.
http://www.mitecnologico.com/Main/Dise%F1oDetalladoLenguajesDeProgramacion
2.5 Caso de estudio.
Explicar el lenguaje que se va a desarrollar
en el curso:
– ¿Por qué se va a desarrollar (problemática)?
– Vocabulario del lenguaje (léxico palabras clases
que hacen)
– Reglas de estructura (gramática, sintaxis)
– Semántica
– Si existe código intermedio
– Si se mejora ese código
– El código objeto final
Suscribirse a:
Enviar comentarios (Atom)
-Buena informacion
ResponderEliminar