COMPILADORES



EJERCICIO 6.3

Considere la siguiente gramática simple para declaraciones de variable en una sintaxis tipo C:

Queremos definir un atributo de tipo de datos para las variables dadas por los identificadores en una declaración y escribir ecuaciones que expresen cómo está relacionado el atributo de tipo de datos con el tipo de la declaración.

Hacemos esto construyendo una gramática con atributos para un atributo dtype (utilizamos e1 nombre dtype para distinguir el atributo del no terminal type).-La gramática con atributos para dtype se da en la tabla 6.3. Haremos las observaciones siguientes respecto a las ecuaciones de atributo de esa figura.

En primer lugar, los valores de dtype son del conjunto (integer, real ) que corresponde a los tokens int y float. El no terminal type tiene un dtype dado por el token que representa. Este dtype corresponde al dtype de la var-list entera, por la ecuación asociadas con la regla gramatical para decl. Cada id en la lista tiene este mismo dtype, por las ecuaciones asociadas con var-list. Advierta que no hay ecuación que involucre el dtype del no terminal.

En realidad, una decl no necesita tener un dtype no es necesario especificar el valor de un atributo para todos los símbolos gramaticales.


DESARROLLO DEL EJERCICIO

1. Extraer las reglas gramaticales una a una


2. Realizar las reglas semánticas

2.1. Realizamos la derivación de la cadena

Cadena: float  x , y

2.2. Realizar el árbol de análisis gramatical

Para realizar el árbol de análisis gramatical primero lo desarrollamos en base a la derivación de la cadena. En este caso la derivación de la cadena nos permite obtener el siguiente árbol:

Luego, procedemos a calcular los atributos heredados en el árbol de análisis gramatical, de arriba hacia abajo (descendentemente) asignándole un valor aún atributo del nodo hijo (type) para que, en aquellas reglas en las que éste aparezca en la parte izquierda de la producción, herede el valor asignado. Así tenemos:

Finalmente nuestra gramática con atributos queda de la siguiente manera:


VIDEO GRAMATICAS CON ATRIBUTOS

En este post, podrán observar un video realizado por compañeros del noveno módulo paralelo “A” acerca de las gramáticas con atributos. Explican claramente los conceptos básicos y nos dan una idea mas clara acerca del tema.

Autores:  Marilyn Jaramillo  &&  Jimmy Viteri


LINKS

Aqui podrás acceder algunas fuentes bibliograficas que te permitirán ampliar y profundizar tus conocimientos acerca de las gramáticas con atributos.

Deja un comentario

Fill in your details below or click an icon to log in:

Logo de WordPress.com

You are commenting using your WordPress.com account. Log Out / Cambiar )

Twitter picture

You are commenting using your Twitter account. Log Out / Cambiar )

Facebook photo

You are commenting using your Facebook account. Log Out / Cambiar )

Connecting to %s

Seguir

Get every new post delivered to your Inbox.