Ir al contenido principal

Internals of GCC

La cosa más interesante que se me vino a la mente después de escuchar este podcast es sobre la tendencia de qué los procesadores deben tener más núcleos para abordar mejor las tareas para la paralelización por lo que los compiladores deben de cambiar para aprovechar mejor los avances tecnológicos y creo que se está logrando bastante rápido con nuestra arquitectura x86

La modularidad de los componentes de GCC también es bastante impresionante y tienen sentido, en un extremo  lo que cambia es el lenguaje que estamos leyendo e interpretando y una vez que llegamos a una estructura universal el proceso del compilador GCC debería ser el mismo y el front-end y el back-end podrían ser intercambiables mientras que el medio sigue siendo el mismo por lo que me viene la mente mucho los bloques que usamos para construir compiladores e intérpretes los primeros que vimos en clase

Una de las cosas que mencionó el entrevistado que me pareció muy curiosa es que cuando la representación del árbol no existía como una representación intermedia, usaban pases rtl y, por lo tanto, había muchas optimizaciones de bajo nivel para esos, pero la parte interesante es que incluso ahora con el enfoque más moderno de la representación en árbol, ambos coexisten porque se complementan entre sí, lo que creo que da una idea de cómo la mejora en el desarrollo de un compilador no reemplaza necesariamente las estructuras antiguas, sino que se basa en ellas y conviven para que ambos puedan ser utilizados en cada uno de sus escenarios óptimos.

La parte final es bastante divertida sobre los desarrolladores de Java que no están acostumbrados a que su código sea compilado de esa manera, seguro dicen que ya no tiene tantas ventajas porque el método justo a tiempo tiene más información sobre el programa, pero aún tiene las ventajas en sistemas con muy bajos recursos sigue siendo útil en una amplia gama de aplicaciones.

El podcast me pareció muy interesante y sobretodo con mucho conocimiento para transmitir. Adjunto la liga para que lo puedas escuchar 

    http://www.se-radio.net/2007/07/episode-61-internals-of-gcc/

Comentarios

Entradas más populares de este blog

Haciendo el Diseño de Compiladores mas relevante a los estudiantes

El artículo me pareció muy interesante y al principio muy exacto al describir que probablemente nosotros como profesionales de computación no estaríamos laboralmente trabajando para el diseño de un compilador y es cierto al menos en mi caso nunca me pasó por la mente el desarrollar esta actividad como parte de mi carrera y tampoco tenía idea de qué iba a visualizar una materia de esta naturaleza, sin embargo algo que es muy acertado en el artículo es sobre la utilidad que puede tener la materia en otros aspectos y otros problemas de informática.   Algo que también me gustó del artículo (algo que ya habíamos visto en clases previas) es sobre la explicación de las fases de un compilador (lexical analysis and parsing; semantic analysis; code generation; and code optimization) y aquí las  van explicando de forma muy concisa y siento que las entendí y las reforcé mucho más debido a que pone ejemplos y uno de los más significativos es el de LaTex con HTML. La verdad sentí una e...

Me presento soy Manuel

Mi nombre es Jose Manuel Cruz Gil, pero me gusta que me digan Manuel o Manu. Actualmente estudio la carrera de ingeniería en sistemas computacionales en octavo semestre.  Quiero empezar que he escuchado rumores sobre la materia y empiezo a creer que son muy ciertas, empezando por la dificultad que conlleva y sobretodo la dedicación tanto en inteligencia como en tiempo, por lo que lo que espero de la materia es aprender super bien las bases para el proyecto, aclarar mis dudas, hacer sentido cada clase e información que el profesor transmite.  En cuanto mis hobbies e intereses personales me gusta cocinar, ver TikToks, tengo un programa de radio en Frecuencia CEM (la radio de mi campus) por lo que la locución e investigación de temas en tendencia m gusta mucho, me encanta leer libros de magia, a diferencia de mis compañeros/as ISC no me gustan tanto los videojuegos, pero si me gusta ver streams y lo que mas amo es escuchar musica y álbumes completos principalmente aquellos que so...

Building Server-Side Web Language Processors

Después de leer este artículo estoy completamente de acuerdo con la idea y la visión general del autor Ariel Ortiz, en este artículo que nos presentó sobre los beneficios de usar un enfoque web para desarrollar un procesador de lenguaje donde se nos explica como a veces es más interesante ver un compilador funcionando en un enfoque web que en la propia terminal. Sólo que el único inconveniente es que el nivel de complejidad del proyecto va a aumentar donde necesitaremos de tiempo extra y material extra, sin embargo los resultados pueden ser muy gratificantes. Fuera de la complejidad y ampliando los beneficios del enfoque web puedo visualizar que este proyecto puede contribuir al desarrollo de habilidades útiles por parte de los estudiantes, ya que el desarrollo web es una de las áreas más destacadas de la programación así como una de las más necesitadas debido a que todos se están mudando de manera prácticamente en Internet. Además como otro beneficio y siento que es algo fundamental e...