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.

miércoles, 16 de enero de 2019

Linking: Introduction

Hello, it's me. I was wondering if you would like to meet.

My name is Julio, but everyone else calls me Julay or Jalay. I am 22 years old, currently enrolled in the 8th semester of Engineering in Computer Science. I have liked computers ever since I was a kid. As I got older and understood that all programs and applications were code that had to be translated into a language that a computer could understand, I wondered: How was the first computer program run? Was it translated by hand into bits? Was it mechanical? Or perhaps magic?

Now I know a little bit more about how compilers work and how they manage to turn a bunch of words into bytes that can do pretty much anything inside a computer such as the linking process. But I would love to learn more. This would give me the chance to make my own language and have some fun with it. That is my final goal for this class.

Some of my hobbies are to play videogames and watch movies. I am also a very spiritual person, I like to practice yoga an tai chi. My favorite videogame is Mass Effect 2 and my favorite movie is Big Fish. I like to program in Python, JavaScript and C#.

PS: If anyone else reads this besides the teacher, I will smash your computer :)