5
1 Compilers Actividad 7 Preguntas interpretativas Interpretar la diferencia del análisis de arriba abajo con paso atrás limitado y el análisis de arriba abajo sin paso atrás. Mientras que el análisis de arriba abajo con paso atrás limitado falla mucho antes de llegar a agotar todas las posibilidades. Suponiendo que se tiene las reglas de forma A -> | |…| si en el punto se deriva un símbolo no terminal que posteriormente se encuentra que no tiene derivaciones subsecuentes para otro símbolo no terminal, aquí el algoritmo falla en el punto . El análisis de arriba abajo sin paso atrás el problema se transforma en determinar qué producción inicial se aplica dado que se conoce que símbolo terminal se intenta expandir y la cabeza de la cadena de entrada ya a sido analizada con éxito hasta ese punto. Se debe siempre realizar la elección adecuada entre las producciones posibles para un símbolo particular no terminal para no tener que deshacer una producción en particular. Para la detección de errores se tienen algunas restricciones, ¿Cuáles son? De la tabla construida de pares de operadores adyacentes permitidos, los espacios vacíos no se permiten y se genera un error de distinto tipo con un lenguaje adecuado. Por ejemplo i (puede generar un error FALTA OPERADOR, mientras que (- uno de FALTA OPERANDO. En la detección de errores se usa analizadores de izquierda a derecha. ¿Por qué se consideran atractivos? ¿y qué problema presentan? Son atractivos por: 1. Pueden ser construidos para reconocer la gran mayoría de los constructores de un lenguaje especificados en una gramática libre de contexto. 2. Este método es el más generalizado de los que no utilizan paso atrás y puede ser codificado tan eficientemente como otros métodos de reducción. 3. Las clases de gramática que pueden ser analizadas con métodos LR son un conjunto que engloba a la gramática de precedencia de operadores. 4. Un analizador de este tipo puede reconocer errores en la entrada en su etapa más temprana al analizar de izquierda a derecha la entrada. Grupo 2 Fecha 10 de Abril de 2015 Actividad 7 Tema Top-Down Parsing

Evidencias 7 Grupo No2

Embed Size (px)

DESCRIPTION

Ciencias de la Computación

Citation preview

  • 1 Compilers Actividad 7

    Preguntas interpretativas

    Interpretar la diferencia del anlisis de arriba abajo con paso atrs limitado y el anlisis de

    arriba abajo sin paso atrs.

    Mientras que el anlisis de arriba abajo con paso atrs limitado falla mucho antes de

    llegar a agotar todas las posibilidades. Suponiendo que se tiene las reglas de forma

    A -> | || si en el punto se deriva un smbolo no terminal que

    posteriormente se encuentra que no tiene derivaciones subsecuentes para otro

    smbolo no terminal, aqu el algoritmo falla en el punto .

    El anlisis de arriba abajo sin paso atrs el problema se transforma en determinar

    qu produccin inicial se aplica dado que se conoce que smbolo terminal se intenta

    expandir y la cabeza de la cadena de entrada ya a sido analizada con xito hasta

    ese punto.

    Se debe siempre realizar la eleccin adecuada entre las producciones posibles para

    un smbolo particular no terminal para no tener que deshacer una produccin en

    particular.

    Para la deteccin de errores se tienen algunas restricciones, Cules son?

    De la tabla construida de pares de operadores adyacentes permitidos, los espacios

    vacos no se permiten y se genera un error de distinto tipo con un lenguaje

    adecuado. Por ejemplo i (puede generar un error FALTA OPERADOR, mientras que

    (- uno de FALTA OPERANDO.

    En la deteccin de errores se usa analizadores de izquierda a derecha. Por qu se

    consideran atractivos? y qu problema presentan?

    Son atractivos por:

    1. Pueden ser construidos para reconocer la gran mayora de los constructores

    de un lenguaje especificados en una gramtica libre de contexto.

    2. Este mtodo es el ms generalizado de los que no utilizan paso atrs y puede

    ser codificado tan eficientemente como otros mtodos de reduccin.

    3. Las clases de gramtica que pueden ser analizadas con mtodos LR son un

    conjunto que engloba a la gramtica de precedencia de operadores.

    4. Un analizador de este tipo puede reconocer errores en la entrada en su etapa

    ms temprana al analizar de izquierda a derecha la entrada.

    Grupo 2

    Fecha 10 de Abril de 2015

    Actividad 7

    Tema Top-Down Parsing

  • 2 Compilers Actividad 7

    El nico problema que presentan es que son muy difciles de construir manualmente

    y que en general, se requieren herramientas automatizadas para hacerlo de forma

    eficiente.

    Preguntas argumentativas

    Un anlisis de arriba abajo es aquel en el cual se comienza con un smbolo meta u objetivo de

    la gramtica y se intenta producir una cadena de terminales que es idntica a uno dado. Este

    proceso de comparacin se realiza al aplicar sucesivamente las producciones de la

    gramtica para producir cadenas dependientes con signos no terminales. Las gramticas en

    las que se aplican el mtodo son libres de contexto y se permite producciones vacas que se

    simbolizarn con e.

    Existen diferentes mtodos de anlisis de arriba bajo, entre los cuales se destacan:

    Fuerza bruta

    Recursivo descendente sin paso hacia atrs.

    De arriba abajo con paso hacia atrs parcial o limitado.

    Explicar cada mtodo.

    Mtodo de fuerza bruta

    Mtodo recursivo descendiente sin paso hacia atrs.

  • 3 Compilers Actividad 7

    Mtodo de arriba abajo con paso hacia atrs parcial o limitado.

  • 4 Compilers Actividad 7

    La deteccin de errores en el anlisis recursivo descendente, de acuerdo a Wirth Qu

    reglas propone?

    Preguntas propositivas

    Qu similitudes y diferencias encuentra entre el cap 6 de Llano y la temtica propuesta por el profesor AIken?

    Las dos propuestas se basan en la idea de manejar el anlisis de una gramtica a partir de un anlisis de arriba abajo ya que en el captulo 6 introducen la idea de anlisis mediante este mtodo y en la propuesta del profesor Alken se basa solo en este mtodo. Pero en el captulo muestran otros mtodos para el anlisis de una gramtica como el anlisis de abajo hacia arriba o el mtodo la construccin de analizadores de izquierda a derecha y de derecha a izquierda. La propuesta del profesor Alken es el analizar una gramtica por medio del anlisis de arriba abajo o como l lo define resursive decent y con un mtodo de fuerza bruta, pero en el captulo 6 muestran otras formas de analizar gramticas, y entre la forma de arriba abajo, otros mtodos diferentes a la fuerza bruta como el recursivo ascendente con paso atrs o de arriba abajo con haca paso atrs parcial o limitado. Adems en las dos propuestas definen diferentes formas de detectar y manejar el error, ya que en el captulo 6 se muestra la forma de manejar el error dependiendo del tipo de mtodo que se usa para analizar las gramticas, mientras la propuesta del

  • 5 Compilers Actividad 7

    profesor Alken define un manejo del error enfocado en el mtodo que este usa para analizar gramticas. Por ultimo las dos propuestas ven el mtodo de analizador de izquierda a derecha de forma similar y concluyen que es una forma de detectar errores de una forma ms rpida.