2009-01-20 14 views

Respuesta

17

Estas cosas son útiles si quieres saber si intentar hacer algo es inútil con expresiones regulares. Por ejemplo, saber que XML no es regular es útil si la idea de analizar XML con expresiones regulares alguna vez entra en su mente. Y si no sabes por la parte superior de tu cabeza que XML no es regular, el lema de bombeo te permitirá probarlo trivialmente.

Y luego están los compiladores, donde si no sabes esto, estás condenado. Solo depende de la aplicación.

9

Aquí es Steve Yegge's take sobre la utilidad de los compiladores, resumió como:

De hecho, el compilador de construcción es, en mi humilde opinión y probablemente vergonzosamente mal, la segunda clase CS más importante que puede tomar en una programa de informática de pregrado

Las gramáticas son esenciales para analizar estructuras recursivas, que aparecen en lenguajes de programación, lenguajes naturales y estructuras de datos complejas. Creo que algunos programadores no los cumplen en absoluto, pero las personas que escriben compiladores, IDEs, serialización, etc. los encuentran mucho.

6

Como señaló Yuval F, las gramáticas son de importancia crítica para el análisis sintáctico del lenguaje. Si echas un vistazo a los generadores de analizadores, como ANTLR, verás que la estructura de las gramáticas es sorprendentemente similar a lo que has aprendido en la escuela.

Cuestiones relacionadas