miércoles, 9 de julio de 2014

ELEMENTOS SINTÁCTICOS DE UN LENGUAJE DE PROGRAMACIÓN



ELEMENTOS SINTÁCTICOS DE UN LENGUAJE DE PROGRAMACIÓN

Conjunto de Caracteres

Es la primera etapa en el diseño de la sintaxis de un lenguaje
Casi todos tienen el mismo conjunto de letras y dígitos
La diferencia está en los caracteres especiales
Incide en la determinación del tipo de equipo para la E/S

Identificadores

Sintaxis básica: string de letra y/o dígito comenzando con letra
Se introducen caracteres especiales que facilitan la lectura

Operadores

La mayoría de los lenguajes tiene un conjunto estándar de operadores:
aritméticos
relacionales
lógicos

Palabras Claves y Reservadas

Palabra clave: identificador usado como parte fija de la sintaxis de una sentencia

Palabra reservada: palabra clave que no puede ser usada como identificador
El análisis sintáctico se facilita usando palabras reservadas
Generalmente una sentencia comienza con palabras claves designando el tipo de sentencia.

Comentarios y Palabras Opcionales

La mayoría de los lenguajes permite incluir comentarios en los programas
Los comentarios no son considerados durante la compilación.

Espacios en Blanco

Varía su inclusión entre un lenguaje y otro

Delimitadores

Es un elemento sintáctico para marcar el comienzo y/o el fin de una unidad sintáctica
Ejemplo BEGIN

....
END
Las características son:

realza la lectura

simplifica el análisis sintáctico

elimina ambigüedades

delimita explícitamente frontera o cota de una construcción sintáctica.

Formato Libre y Fijo

Una sintaxis es libre si las sentencias del programa se pueden escribir en cualquier parte de una línea sin observar la posición o salto de línea. Ejemplo Pascal
Una sintaxis es fija si utiliza la posición en la línea para proporcionar información. Ejemplo estrictamente fija, máquina; parcialmente fija, Fortran

Expresiones

Son unidades sintácticas básicas con las cuales se construyen sentencias.
Hay distintas formas para escribir una expresión: infija, prefija, postfija (inorden, preorden, postorden).

Sentencias

Son las componentes sintácticas más importantes de los lenguajes de programación. Algunos tienen formato básico de sentencia. Existen diferentes sintaxis para cada tipo diferente de sentencia.

En general existen sentencias simples y estructuradas.

Estructura de Programa y Subprograma

La organización sintáctica de un programa y la definición de subprograma es variada.

Definición variada de subprograma

- cada definición de subprograma es tratada como una unidad sintáctica separada
- Las principales estructuras de los programas son: bloques, subprogramas
- El bloque se ejecuta cuando la secuencia de ejecución llega. El procedimiento es llamado explícitamente.

En Fortran cada subprograma es compilado separadamente y los programas son "linkeados" en tiempo de carga.
En APL los subprogramas son compilados separadamente y son "linkeados" sólo cuando uno llama a otro durante la ejecución.

Definición de subprogramas anidados

Un ejemplo se da en ALGOL que muestra la estructura de programas anidados en que la definición del subprograma aparece como declaración en el programa principal. A su vez, el mismo subprograma puede contener otra definición anidada.
Descripción separada de datos y sentencias ejecutables
Un representante es el COBOL. Las declaraciones de datos y sentencias ejecutables para los subprogramas (párrafos), se encuentran en la DATA DIVISION y en la PROCEDURE DIVISION, respectivamente. La ENVIRONMENT DIVISION consiste de las declaraciones de operación y ambiente externo, equipo, archivos, memoria, etc... Todos los datos son globales a los subprogramas. Una ventaja es que cambios en la estructura de datos se hacen sin tocar los subprogramas.

Definición de subprogramas no separados

No hay diferencia sintáctica entre las sentencias del programa y las del subprograma. Un ejemplo SNOBOL: independiente del número de subprogramas que contenga el programa, es una lista de sentencias. El punto donde un subprograma comienza y termina no se distingue. Los programadores introducen una separación artificial insertando comentarios. Otro ejemplo BASIC.

No hay comentarios:

Publicar un comentario