miércoles, 21 de septiembre de 2016

Mother of Compilers


Now on this post, we're going to talk about the video of Mother of Compilers, so basically the principal figure on this is Grace Murray Hopper, a woman born in 1906, on this computer programming world, so for me is interesting because it was scarce knowing a woman doing something important. So about Grace is called the Queen of Code because of her contributions in which they stand out the creation of COBOL and the one of which are interested for making a compiler to be easier and readable for us.
Another fact about Grace is that joined to de US Naval Reserve, breaking the sterotype of that era, she gain an important charge by knowing how to use computers, but Grace was never focused on computers specifically.
After she introduced herself into the computer world, she wanted to do computers and computing more accessible so she created higher languages to do so. About what she done on her early years are:
1952. Grace and her team at Remington wrote the A-0 compiler, based on her basketball days.
1969. The Data Processing Management Association selected as the first "man" of the year
1971. The ACM (Association for Computing Machinery) established the Grace Murray Hopper Award for young computer personnel.
As we can see Grace Hopper was a big icon and woman role model, breaking the stereotypes and inspiring women to introduce to the computer world, so is something to admire the courage she had and the desire to teach another people. So I agree with the tittle, Grace is the Mother of Compilers and an inspirations for the women of that era and not only that, it should be remembered for all the persons in the computer world. Because even when she was retired she wanted to support young people to get involved on this technology field.


domingo, 4 de septiembre de 2016

Internals of GCC

On these podcast, Morgan Deters that is at the Washington University in St. Louis tell us about the Gnu compiler collection (GCC) giving us a brief introduction of what we had read on previous lectures why compilers are relevant in our daily life?, Morgan tell us just because of the fact when you are compiling your software, you want to run efficiently taking advantage of what the modern hardware have to offer you. And how compilers work? reading a plain text generally, then understand what it does the input, what you expect from the output, the variables, the semantic, among other things. Those questions figure me out as a summary of the previous lectures, but unlike Morgan talk about GCC.
The GCC is a very flexible and portable and it can be run on any Unix platform, Windows, Mac OS; having the advantage that accept many source files inputs, producing output object code. Other thing about GCC is that is divided in: front end, middle and back end. Particularly the front end is interesting because as the locutor say, so different languages can be parses and transformed to a common abstraction. We can represent this expressions as a tree; a tree it's just a common structure inside gcc front ends. These is usually written in C and you don't have orienting object support, you have to be careful because if you make something unsafe it will crash.
Portable in terms of Morgan is to be able to take an architecture that has a minimum C compiler available and able to create a GCC from that and as part you get the new C compiler. In conclusion, it seems to me a interesting podcast because it gave new information about compilers and how it works, it seems not easy, because of the obstacles of get the initial language to make the target program, so that's why we need to know more about the tools that offer us.