lunes, 28 de enero de 2019

Compiling: Compiler Relevancy for the Average ISC


The article shown for this entry talks about how many of the students taking CS courses won’t likely care for a compiler design course, because it is considered a narrow area of knowledge. It then proceeds to make a point about other problems that can be benefitted from the techniques and technologies of Compiler Design. 

As I have mentioned before, I am very curious about this class and what I may learn here. A reason for this is because, even after 3 years of studying Programming, Software Engineering and even Operative Systems, I still don’t have a good idea about how a compiler takes some words written by me and transform them into a bunch of machine code that I can’t understand. This lack of knowledge has made me believe that maybe compilers take some kind of very special techniques or perspectives that just aren’t that common in the software industry. In other words, I had, more or less, the same stance as the students the article talks about. 

Something about that opinion changed in the last few months. This is because I have faced or learnt about some cases in which compilers have been used in unexpected ways, at least for me. The first comes from one of my best friends, which went to work at Google a few months ago. He told me that he began working on a compiler that is widely used within the company for testing purposes on the C++ language. They like to try several features or practices that may make code go faster or generate machine code in a more intelligent way. The other situation has been at my own work. A project within the company involves taking literal code and finding practices that do not conform to the quality standards of the company, among other things. This involves a process very similar to the lexical and semantical analysis of a traditional compiler.

I wholeheartedly agree with the article and its take on just how common compiler design is in our world.

No hay comentarios.:

Publicar un comentario