Making Compiler Design Relevant for Students

Designing a Compiler is not an easy task, so building and designing an entire Compiler from scratch in one semester is a very ambitious task. For that many teachers have managed to create certain tasks that involve the important parts to know about a Compiler and it's design, in order to understand it and not getting stuck in the creation of one from scratch.

An interesting activity that it is given to the undergraduate students from the University of Arizona, is using lex and yacc to create a translator from LaTeX to HTML, which end ups being a very useful tool for academics, learning compiler analysis, students may have the tools and resources to create abstraction from problems and implement a certain translation in order to dictate even hardware what to do. I image about using this topics and mix them together with intelligent systems, that a compiler can manage to change itself by the process of learning of the language that it is given to it, one condition is the definition of the language itself, it could be determined by certain laws but in the top layers of the interpretation of the language, can be restructured and modify by the Compiler itself. These concept can be used as a chain of Compilers that are configured differently and that chain of Compilers evolve parallel from one and other and having the best selection of better results.

Extending this ideas in a more syfy way, I was wondering on a piece of singular hardware, which has a singular compiler that manages all of it's hardware, each of these components, one physically and the other one virtually, these two are entangled with the other, meaning that the behavior and observation from one will affect the other one; they evolve constantly. Hardware and Software have the properties to change their definition and composition, which allows them to modify themselves in order to adapt in their environment, the environment will be determined by the input given, or the environment could be determined by configuration. 

Interesting viewing the previous concept as a single thing that changes itself, virtually and physically...

the singularity of technology.

References:

Comentarios

Entradas más populares de este blog

The Hundred-Year Language

My first Post

Ruby and the Interpreter Pattern