domingo, 5 de febrero de 2017

In the podcast “Internals of GCC”, by software Engineering Radio, the PhD student Morgan Deters is interviewed in the subject of the GNU Copiler Collection. Various topics related to de GCC are covered, such as its portability, modularity, and inner workings of registers and the “middle end” of the compiler. One of the interesting topics is code optimization, as it is said that the compiler can identify by itself blocks or code that can’t be logically reached or are not needed, and remove them when translating into target language. There is a high implication that programmers may be able to code in an un-optimized way without really damaging performance, thanks to the compiler, so how much could or should a compiler help programmers? Certainly, since processing power has increased, along with programmer’s cost per hour, it is very attractive to allow programmers to stop worrying about optimizing to the maximum degree, when the computing of such code is not as expensive as their initial pay, and the compiler will be able to optimize it a bit too.  

Optimizing might be a thing of the past (as long as you don't try something silly, like calculating Fibonacci recursively or something)


Furthermore, it would seem GCC is so modular and flexible, that it can run in many architectures and compile many languages, raising the question if it is possible to build a “master compiler”, able to handle and input language and use it to generate machine language. The task sound enormous and difficult by itself, but GCC certainly takes some steps toward being multiplatform and Multilanguage. Maybe in the future a master program will be a reality, allowing programmers to forget about optimization or platforms, and really focus on creating functional code that accomplishes their goal. The inner workings of computation itself are fascinating, and the ability to have programs that generate programs by themselves is already a very powerful property, compilers may be able to take that to another level.

Source:

Arno, 2007. "Episode 61: Internals of GCC". Software Engineering Radio. Retrieved Frebuary 5th 2017 in: http://www.se-radio.net/2007/07/episode-61-internals-of-gcc/ 

No hay comentarios.:

Publicar un comentario