domingo, 25 de febrero de 2018

Mother of Compilers

Mother of Compilers

It is well know that in prevoius years it was very difficult for women to develop their academic and profesional life, even today, society it is not fully evolved in order to give women same benefits and responsabilities than men.

Despite this, there have been very important and succesfull women in history, that demostrates that people that stablish their personal goals and giving your life to that goals, you can acomplish anything.

In this blog I am going to talk about one of the woman who ignores the stupidity of the society and worked hard to leave a better world for the tommorow, and thanks to that woman we have all the techonologies we have today, and that woman is Grace Hopper.

Grace Hopper is a militar computer scientist from the United States, she is the first programmer for Mark langauge, she studied maths and phisycs in Yale in 1930, and later that she joined the army in 1944.

Grace Hopper was one of the first into compilers in history of humankind. She is was dedicated to her carres and after years of effort and studying sha manage to create COBOL langauge, by stablishing the vary basics we used nowadays in moder computer science.

Grace is a great example that it does not matter your gender, age, religion, raze, etc. if you are truly dedicated to your passions, and that studying, time, practice and pattience can make every person able to manage any obstacle presented in their lifes.

References

Pages 1 and 2 of the 2013 article titled “Grace Hopper – The Mother of Cobol” from the “I Programmer” web site. 

The video documentary “The Queen Of Code” (16 minutes long), directed by Gillian Jacobs in 2015.

domingo, 4 de febrero de 2018

Internals of GCC

Internals of GCC

In this blog will not be talking about a paper or a review instead of that this time will be dsicussing a podcast that will be trying to explain about compiling and all its parts, processes and phases, this will help us understand compilers design and with this improve our architectura desings of a compiler or any other project in the future.

The interview, in order to try explaining compilers, he divide compiling process in three phases, front end, middle end and back end, i will try to explain what I could understand of each phases in the podcast.

The front end basically its main function is to translates raw inputs into trees and spaecial charactecters programmer will need to understand the commands. The middle end main function is to optimize the processes regarding the computers hardware, and then the back end that will send this proceses to the computer´s CPU.

Of course this is just an easy and abstract representation of a compilers functionality. I found veru interesting how a program is divided in two side, the programs algorith which is develop in order to solve a problem, such as automate a process, calculate values, etc.

This using as few resources as posible and in the must simple way of solving it and in the other side the compiler desing which tries to translate as the very best posible way the algorithm commands to the computer, caring for spaces in memory, threads to cpu, and many other elements to consider in efficency of coding, etc

As we are just making a high-level program into another hight level program, we are not taking much attention in the gcc but the podcast will help us to undertand how to transalate Deep Lingo to C# program as best as we can do.