LusoRobótica - Robótica em Português

Software => Software e Programação => Tópico iniciado por: blabla em 07 de Janeiro de 2022, 10:43

Título: How I learned to love build systems
Enviado por: blabla em 07 de Janeiro de 2022, 10:43
Bom dia a todos,

Hoje gostaria de partilhar convosco este vídeo que é uma fascinante viagem pelo mundo dos build systems.

Video - How I learned to love build systems

https://www.youtube.com/watch?v=7_DExGdUw7w

Depois e ainda do mesmo autor, gostaria de partilhar a fascinante caminhada da detecção de um problema num build system, ultrapassando todas as dificuldades a caminho da solução do problema, esmiuçando o problema em todas as suas camadas até ao “átomo”.

Why is my Rust build so slow?
https://fasterthanli.me/articles/why-is-my-rust-build-so-slow (https://fasterthanli.me/articles/why-is-my-rust-build-so-slow)

Nota: São histórias e narrativas como esta que me fazem gostar tanto de Rust, pois uma pessoa chega até a elas por motivos técnicos, pela busca do conhecimento, sempre mais conhecimento para que consiga resolver melhor problemas. Mas acaba por ficar preso à história pela batalha épica de David contra Golias, em que david somos todos nós quando nos deparamos com um problema complexo para o qual não sabemos a solução e Golias é a luta que esse problemas nos inscreve no nosso futuro. Algo que noto, é que em Rust os programadores tendem a contar mais estas histórias do que em outras linguagens, e claro todos nós gostamos de ler uma boa  e emocionante história, bem contada.

Obrigado,

Cumprimentos,
João
Título: Re: How I learned to love build systems
Enviado por: blabla em 07 de Janeiro de 2022, 12:22
Este artigo também  do mesmo autor também pode ser interessante pois vem no seguimento do mesmo tema…

Como fazer profiling ao linker? (lld e mold)

Profiling linkers
https://fasterthanli.me/articles/profiling-linkers (https://fasterthanli.me/articles/profiling-linkers)

Este exemplo usa poucas dependências, mas para projetos grandes ou mesmo para projetos pequenos que tenham GUI’s em Rust ou em C/C++ os tempos de gastos na fase de linking podem ser muito grandes (em relação ao tempo total do build) e por isso configurar o processo de linker para linkers mais eficientes como o lld ou o mold podem ser muito úteis para agilizar o processo de desenvolvimento.
Basicamente estes “novos” linkers usam algoritmos melhores que escalam melhor com o número de unidades de compilação.

Cumprimentos,
João