Sobre benchmarks de linguagens

Hoje, não sei como, topei com mais uma comparação de desempenho entre Java em e C++ que, como de costume, gerou uma discussão sem fim. Não que eu ache essas discussões totalmente inúteis: na verdade, você sempre acaba aprendendo/conhecendo alguma coisa nova. O ponto principal e que todo mundo ignora – para meu espanto – é que, quando um programa qualquer em Java é mais rápido que o seu equivalente em C/C++ isso só prova uma coisa: que um programa C/C++ bem escrito consegue processar qualquer coisa bem rápido, inclusive os bytecodes do Java 😉

Em tempo, dêem uma olhada nesse interessantíssimo conjunto de benchmarks.

Testando o Haiku OS

Hoje, como eu estava com algumas horas livres enquanto esperava que algumas tarefas ficassem prontas, resolvi instalar o Haiku, um clone livre do finado BeOS pra ver como ele estava.

A idéia era instala-lo em uma máquina virtual dentro do VirtualBox, já que o projeto fornece uma imagem VmWare pronta e, sim o VirtualBox trabalha com imagens do VmWare :). Não é minha intenção fazer um review do sistema, já que ele ainda não está pronto e tem coisas para serem finalizadas, apesar disso devo dizer que o resultado me surpreendeu: ele funcionou sem maiores problemas no VirtualBox. A única alteração que eu tive que fazer foi mudar a placa de rede para uma Intel PRO/1000 MT Desktop, pois a PCnet-Fast III que o VirtualBox usa por padrão não foi reconhecida. No Haiku o único problema foi conseguir instalar um navegador, já que ele não vem (???) com um navegador por padrão. Para isso baixei direto pelo linux, criei uma ISO e montei como CD pelo VirtualBox, uma operação que teve sucesso após reiniciar a máquina virtual.

Enfim, como eu disse, me surpreendi muito com o estado do sistema e tive menos problemas com ele do que com várias distribuições Linux que já tive o desprazer de usar. Outro ponto interessante do projeto é que ele é programado em C++, então é um prato cheio pra quem quiser se envolver com um projeto nessa linguagem. Se alguém quiser conferir o resultado da brincadeira, recomendo que dê uma olhada nas screenshots que eu postei aqui. Não deixe de conferir, também, a entrevista de um dos líderes do Projeto, o brasileiro Bruno Albuquerque, feita pelo MeioBit.

Funcionalidades obscuras das linguagens de programação

Recebi um link hoje, num chat via MSN, sobre features escondidas de linguagens de programação.

Ainda não li por completo, mas achei algumas pérolas, como a história de que implementações antigas do GCC tentavam executar um jogo cada vez que encontrava a diretiva #pragma nos fontes e outras já famosas como os métodos de branch prediction (previsão de fluxo??) __builtin_expect() do GCC. Não deixe de conferir.

Provendo informações uteis na linha de comando

Hoje estava conversando com um amigo sobre como prover informações úteis e ajuda decente para programas de linha de comando (aqui, preciso fazer um adendo: embora pareça arcaico pra algumas pessoas, isso é realidade para muita gente, em especial aquelas desenvolvendo pra UNIX e Linux).

Continue reading “Provendo informações uteis na linha de comando”