Procesadores de lenguajes en la web:0
Como se ha logrado percibir tanto durante el desarrollo del presente semestre, así como a lo largo de toda la carrera, la materia de Compiladores para un(a) Ingenier@ en Sistemas Computacionales presente uno de los retos más grandes no solamente por las complejas abstracciones sobre las que ésta se basa, sino también por la apresurada urgencia de desarrollar habilidades de programación en lenguajes que, para los estándares modernos, presentan estructuras y paradigmas más complicadas de asimilar, otorgan las herramientas necesarias para correctamente implementar cada una de las fases necesarias para la construcción de éste software.
No obstante, a lo largo del documento Building Server-Side Web Language Processors, del autor Ortiz, A. presenta la interesante pero, de cierta forma, obvia posibilidad de utilizar las tecnologías más utilizadas en esta era contemporánea de las ciencias computacionales, como los son aquellas que dan luz y vida al Internet moderno, para facilitar el aprendizaje por parte de los estudiantes a lo largo de la construcción de un compilador. Concretamente, se especifica que, son dos necesidades, mismas que nacen por las condiciones y exigencias del mercado laboral, las que específicamente dan justificación sobre este enfoque enfocado en web, siendo estas: el aprendizaje basado en la compresión de conocimiento, esto es, que las instituciones buscan eliminar cursos intermediarios con el fin de abarcar de una forma más amplia las temáticas de estas ciencias, así como la demanda, relevancia y expansión del desarrollo web.
Sin embargo, aunque suena tentador implementar esta nueva metodología, se nos comenta que, dada a la libertad que ofrecen los navegadores web hoy en día, vale la pena realizar un proyecto que permita la realización e interpretación de scripts de código, haciendo entonces que, para poder trasladar estas nociones del clásico enfoque terminal-based a la red resulta en un reto que presenta la necesidad de introducir a los alumnos a más conceptos, abstracciones y, por ende, dedicar más tiempo a la materia, dejando así una limitante sobre la cobertura total del material fundamental de la materia.
Finalmente, a modo de conclusión, creo que el enfoque moderno de la clase (utilizar lenguajes que ofrecen la capacidad de codificar las abstracciones necesarias para la construcción de un parser o un scanner, como lo es C++, junto con adición de un lenguaje de bajo basado en web, como lo es WebAssembly) resulta conveniente pues no resulta tan abrumador la construcción del compilador gracias a la combinación de sintaxis similares a las que hemos empleado a lo largo de la carrera así como la presentación de tecnologías relevantes para nuestra generación.
Comentarios
Publicar un comentario