Relevant Compilers design for students

 

I will admit the article did get something I was thinking of the course, that the overall objective of learning to design a compiler seemed a little too niche, not something I would be doing as a job. But I did realize that the exercise of designing something like a compiler could give us some of the principles and experiences needed to design several other types of software. I previously to this reading haven’t realized that some of the experiences could be translated more directly to certain kinds of software, its just that a compiler sounds like a really specialized kind of program. I like the approach that the paper gives in that this course can help solve a broad range of problems related to translating.

This paper helped me to better understand the phases of a compiler and what they do because I was still a bit confused and the example where it explains the translation from text to a drawing of a graph was specially useful as it felt simple and correlate each step to the respective step from the compilation phase. Although at times it felt like an advertisement for lex and yacc, and I did not understand what they were, I had to search what they were. They sound like really powerful tools specially for compiler design and reading the meaning of yacc it gave me a chuckle. Will we learn during the course to use yacc?  

Another interesting part was the one where they explain about compiler optimization as I did not know that compilers were able to optimize neither code size nor battery consumption. The latter was specially mind blowing because that was a possibility I had not even considered, the idea that a compiler could optimize battery live never passed through my mind and simply sounds awesome.

Comentarios

Entradas populares de este blog

Internals of GCC

SIF