Entradas

2-2: Mother of Compilers

When we talk about women in the software industry our mind goes directly to Ada Lovelace but there is other (and in my opinion more important) woman that also it is necessary to know. I am talking about Grace Murray Hopper. Grace Murray Hopper was an extraordinary woman that established the bases of the Cobol Language and the first woman that not only though that computers were more than monsters of calculus. Influenced by the ideas and philosophy of Babbage she developed the very first compiler, the A-0 compiler. At first this compiler was underestimated by the community in order to change this point of view, Hopper tell the community to come and try the compiler with any problem that they had. One of the problems that the compiler solved was one on derivates, the machine accomplished the correct calculation of the first 15 derivates of a problem that a person was having of a very ugly function. Another thing that this compiler could accomplish, was the translation of French and ...

2-1: "Internals of GCC"

The very first thing that the podcaster said it is that the real name for GCC is Gnu Compiler Collection, it is important to know this because at the end it is the jargon of Computer Science and general culture among the computer scientific. So, let's start. First of all, we need to remember all the stages when we want to build a compiler in order to know how GCC internally works. So, the first thing that we will cover in this blog entry it is the lexical analysis; in this stage the compiler will strip down all the characters or character stream into a token stream this is, that the compiler will check if that tokens are reserved words or are variables that will be token in that program. In order to keep the second phase simple enough in this phase you create the abstract syntax tree (this is how we need to create the tree in order to produce or compute the operations in the order they are provided). In the third phase, like the podcaster said, the compiler needs to check ...

1-3:“The Hundred-Year Language”

If you ask me today how will the hundred year language will be I will answer you I do not care about that because I think that programming languages will always need to be written by humans and not by machines (unless we want a dystopia like Matrix). Nevertheless, I found interesting the point of view of the author where he describes that the new upcoming languages will not be fully optimized, actually they will be the opposite because it will be hardware robust enough to run that kind of programs in little times. In my opinion I think that the new upcoming languages will have this feature the author mentions, coupled with this that language will be easy to write and learn it because the human being (I am including me) is lazy enough that we will learn and use that language where we do not need to stay ours and ours programming in it, we will use the easier languages to program. If we go back in time a few years I am certain that the programmers on that time would not use the ...

1-2: Making Compiler Design Relevant for Students

It is incredible to think about all the potential that learning all the phases of how to build a compiler have. In the paper, the author talks a lot about of the importance of learning this topic. The paper starts saying that most of the students thinks that making a compiler it is a thing that they will not ever use in the future and how wrong they were. I liked a lot of how the author let us know that we can use all the knowledge learned in this subject to solve real life problems it is amazing. One of the examples that I found interesting was the translator of LaTeX syntax to HTML syntax. The interesting part is the way the author put this, he says that we need to think this as a translation problem; the first step in order to solve this problem is to get the RegEx expression in order to start making the tokens and go to the next phase of the creation of a compiler. The real difficult problem was to process all the special syntax of the LaTeX (things like tables, references and...

1-1: About.me

Hi everyone, my name is Fabián Camp Mussa. For this subject, I expect to learn a lot of how does a compiler works and specifically how to build a compiler from scratch; also, I am expecting a lot to learn the C# language and to learn all the bases to create in a future my own programming language. Talking about me I like a lot to spend my free time reading a novel, playing video games, writing stories or poetry and listening to music. Also, I spend my time watching The Witcher series I think the Netflix adaptation its pretty good, so I recommend it. Finally, I will put all my effort to learn all the things the teacher has to teach us and being able to use this knowledge someday in the future.