Elementos sintácticos del lenguaje Pascal

Por at
tokens del Lenguaje Pascal

Así como un idioma humano escrito tiene elementos tales como palabras, expresiones, y signos de puntuación para formar oraciones; así también, un lenguaje como Pascal cuenta con elementos sintácticos propios para formar instrucciones. Los elementos sintácticos, también conocidos como tokens, son las unidades significativas más pequeñas que constituyen las instrucciones de un programa en Pascal; entre estas unidades tenemos a los símbolos especiales, palabras reservadas, identificadores, etiquetas, números, y cadenas de caracteres. Algunos ejemplos de estos elementos son los siguientes:

# {es un símbolo especial} := {es un símbolo especial} Procedure {es una palabra reservada} ImporteTotal {es un identificador definido por un usuario} 15 {es un número}

Normalmente, estos elementos constituyen las expresiones (términos y operadores) en una instrucción. Cuando usted empiece a desarrollar sus propios programas, podrá notar que la mayoría de sus instrucciones estarán compuestas de expresiones, y que éstas a su vez estarán formadas por los elementos sintácticos que aquí se mencionan.

Al escribir un programa, cada elemento sintáctico debe separarse de otros mediante un espacio en blanco o un comentario; si cada elemento es una palabra reservada, un identificador, una etiqueta, o un número.

Símbolos especiales

En el Lenguaje Pascal, se utilizan ciertos caracteres del Conjunto ASCII los cuales se han reservado para tener un significado predefinido dentro del lenguaje. A estos caracteres con significado se les conocen como símbolos especiales. Los caracteres individuales que se muestran a continuación son ejemplos de símbolos especiales:

+ - * / ^ = < > [ ] ( ) { } . , ; : ' @ $ #

Algunos símbolos especiales están formados por caracteres en parejas, tal como los que se indican a continuación:

:= <= >= .. (* *) (. .)

Algunos símbolos son equivalentes: por ejemplo, los corchetes izquierdo y derecho "[ ]", son equivalentes a los símbolos formados por el par paréntesis izquierdo + punto, y el par punto + paréntesis derecho "(. .)". De manera similar, las llaves izquierda y derecha "{ }" son equivalentes a los símbolos formados por el par paréntesis izquierdo + asterisco, y el par asterisco + paréntesis derecho "(* *)".

Palabras reservadas

Dentro de un lenguaje de programación, todas las palabras reservadas están implementadas con un significado predefinido e invariable. Normalmente, son palabras o abreviaturas adecuadamente seleccionadas del idioma inglés. Tal como su nombre lo indica, estas palabras ya tienen una función reservada en el lenguaje y no pueden ser redefinidas; por lo tanto, no pueden utilizarse para darle nombres a las variables, constantes, funciones y procedimientos que sean definidos por el usuario.

A continuación se muestra algunas de las palabras reservadas que están implementadas en la mayoría de compiladores e intérpretes del Lenguaje Pascal:

Palabras reservadas
AndArrayAsm
BeginCaseCircle
ConstDivDo
DowntoElseEnd
FileForFunction
GotoIfLabel
ModNotOf
ProcedureProgramRandom
RepeatShlShr
StringThenUntil

No es necesario que aprenda todas estas palabras en un solo día, ya que con el tiempo y la práctica habrá aprendido un gran número de éstas, sin siquiera darse cuenta. Si desea conocer más palabras reservadas, puede encontrar información sobre este tema consultando manuales de referencia, como el sistema de ayuda de Turbo Pascal o la documentación de Free Pascal disponible en el sitio www.freepascal.org.

Identificadores

Todas las variables, constantes, tipos de datos, funciones, y procedimientos que vayamos a utilizar en un programa, deben tener un nombre simbólico que permita distinguirlos dentro del mismo. En términos técnicos, a estos nombres simbólicos se les conoce como Identificadores. Así pues, en adelante nos referiremos a todos esos nombres de variables, de constates u otros elementos algorítmicos que definamos en nuestros programas, simplemente como identificadores.

Un identificador puede tener cualquier longitud, pero sólo los primeros 63 caracteres son significativos. Cada identificador debe empezar con una letra o el carácter subrayado (_) y no puede contener los espacios. Después del primer carácter, está permitido usar letras (del alfabeto ingles), dígitos, y el carácter subrayado. En las palabras reservadas y los identificadores no se distingue el uso de letras mayúsculas y minúsculas.

Algunos ejemplos de identificadores son:

Identificadores permitidosIdentificadores no permitidos
TotalFacturaTotal Factura
Total_FacturaTotal_$_Factura
BonoNavidenoBonoNavideño
LongitudMaximaLongitudMáxima
_Area22_Area

Números

En el Lenguaje Pascal se utilizan tres formas distintas de representar a los números. La notación decimal se utiliza para expresar números enteros y números reales; mientras que, la notación científica se utiliza para expresar números reales demasiado grandes o ínfimamente pequeños. Otra forma de expresar números, es con la notación hexadecimal, la cual también se utiliza para expresar cantidades de tipo de entero.

Los números enteros deben estar dentro del rango -2.147.483.648 hasta 2.147.483.647 para la notación decimal; y dentro del rango 00000000 hasta FFFFFFFF para la notación hexadecimal. Los valores representados en notación hexadecimal se deben indicar con el prefijo del signo de dólar ($). Por ejemplo, $FA36 que equivale a 64.054 en notación decimal

La notación científica para los números reales se expresa mediante la letra e, seguida por un exponente n (léase como "diez a la potencia n"). Por ejemplo, 9E-2 significa: 9 x 10-2; mientras que 3.25e+6 ó 3.25e6 significan ambos: 3.25 x 10+6.

Etiquetas

Las etiquetas son secuencias de dígitos dentro de un rango entre 0000 y 9999 (los ceros a la izquierda no son significativos). Estas etiquetas se usan para marcar saltos de instrucciones dentro de un programa; normalmente, se utilizan en conjunto con el procedimiento de salto Goto. Mediante una extensión del estándar del Lenguaje Pascal, implementada en compiladores como Turbo Pascal y Free Pascal, es posible usar identificadores como etiquetas en lugar de números.

Cadena de caracteres

Una cadena de caracteres se representa mediante una secuencia de cero o más caracteres del conjunto de Caracteres ASCII Extendido, escritas sobre una misma línea de programa y encerradas entre comillas simples.

La longitud de una cadena de caracteres es igual al número de caracteres contenidos en la cadena. Una cadena representada sin ningún carácter entre las comillas, es una cadena vacía. Dos comillas simples juntas dentro de una cadena de caracteres se interpretan como una sola comilla simple. Por ejemplo:

''		{es una cadena vacía}
' '		{es un espacio en blanco}
'Hello!'	{es una cadena de longitud 6}
'''Pascal'''	{equivale a: 'Pascal'}

La extensión del estándar del Lenguaje Pascal, implementada en Turbo Pascal y Free Pascal, también nos permite incrustar caracteres de control entre cadenas de caracteres. Para representar cada carácter de control, se debe escribir el símbolo #; seguido de un código numérico (entre 0 y 255) correspondiente a un carácter del conjunto de Caracteres ASCII. Por ejemplo,

'Ésta es una cadena'#13#10'ésta es otra Cadena'

'Esto puede sonar como beep beep'#7#7#7

No debe existir ningún espacio entre el símbolo # y el código numérico; y tampoco debe haber espacios entre caracteres de control y las cadenas donde se incrustan.

Comentarios

Los comentarios son estructuras textuales que simplemente se utilizan para dejar notas aclaratorias, o dejar recordatorios dentro del código de un programa; no ejercen ninguna acción, y son por esto, ignorados por el programa. Las siguientes estructuras son dos ejemplos de comentarios:

{ Esto es un comentario }

(* Esto es otro comentario *)

Los comentario se pueden colocar antes o después de cada sentencia; y siempre deben estar contenidos dentro de los símbolos de llaves "{ }" o dentro de los símbolos compuestos por parejas de paréntesis y asterisco, y viceversa "(* *)".

Publicar un comentario