Una sobre teorÃa de lenguajes de programación
Perdonen que ponga este mensaje en este foro, pero no sabÃa muy bien donde encuadrarlo.
El caso es que mañana tengo un examen de la asignatura de teorÃa de traductores y procesadores de lenguajes, y presumiblemente una de las preguntas que pondrán será algo asà como ésta:
"¿Por qué es necesario usar delimitadores en los lenguajes de programación?"
Parece sencilla, pero habrÃa que contestarla desde el punto de vista del funcionamiento de los traductores, y no sé muy bien como encuadrarla. Espero que alguien me pueda ayudar. Un saludo y gracias.
El caso es que mañana tengo un examen de la asignatura de teorÃa de traductores y procesadores de lenguajes, y presumiblemente una de las preguntas que pondrán será algo asà como ésta:
"¿Por qué es necesario usar delimitadores en los lenguajes de programación?"
Parece sencilla, pero habrÃa que contestarla desde el punto de vista del funcionamiento de los traductores, y no sé muy bien como encuadrarla. Espero que alguien me pueda ayudar. Un saludo y gracias.
Me parece que es un poco tarde para contestar, pero yo tb. tenia parciales estos dias asi que estaba hasta las manos...
Un leguaje onda C o Pascal necesita delimitadores porque es "libre de forma". Es decir, que las expreciones necesitan algun caracter que indique su terminacion porque en un lenguaje libre de forma se puede desparramar una exprecion por varias lineas.
Esto no pasa en lenguajes como Basic que la linea entera es la exprecion y se usa el fin de linea como sepà rador de expreciones.
Bueno, extrictamente hablando Basic usa el \':\' como separador de expreciones para poner dsos expreciones en una misma linea...
La idea es que los primeros dos pasos (el analisis lexico y sintactico) necesitan un "Token" (; en C y pascal) para dejar de analizar la exprecion y armar el arbol sintactico correctamente...
Saludos.
Un leguaje onda C o Pascal necesita delimitadores porque es "libre de forma". Es decir, que las expreciones necesitan algun caracter que indique su terminacion porque en un lenguaje libre de forma se puede desparramar una exprecion por varias lineas.
Esto no pasa en lenguajes como Basic que la linea entera es la exprecion y se usa el fin de linea como sepà rador de expreciones.
Bueno, extrictamente hablando Basic usa el \':\' como separador de expreciones para poner dsos expreciones en una misma linea...
La idea es que los primeros dos pasos (el analisis lexico y sintactico) necesitan un "Token" (; en C y pascal) para dejar de analizar la exprecion y armar el arbol sintactico correctamente...
Saludos.
