<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
		>
<channel>
	<title>Comentários sobre: Comparação de desempenho entre linguagens de programação</title>
	<atom:link href="http://www.meupost.com/2008/07/27/comparacao-de-desempenho-entre-linguagens-de-programacao/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.meupost.com/2008/07/27/comparacao-de-desempenho-entre-linguagens-de-programacao/</link>
	<description>Programação, diversão e arte</description>
	<lastBuildDate>Sun, 28 Feb 2010 03:07:25 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.9.2</generator>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
		<item>
		<title>Por: RicardoSEP</title>
		<link>http://www.meupost.com/2008/07/27/comparacao-de-desempenho-entre-linguagens-de-programacao/comment-page-1/#comment-31</link>
		<dc:creator>RicardoSEP</dc:creator>
		<pubDate>Sat, 22 Nov 2008 22:11:45 +0000</pubDate>
		<guid isPermaLink="false">http://www.meupost.com/?p=41#comment-31</guid>
		<description>Então Marcos, após eu fazer esse post, andei pesquisando mais e vi que a JVM otimiza ao interpretar os bytecodes, ela otimiza para o ambiente em que ela está rodando ou seja, a JVM por exemplo pode paralelizar um loop entre dois processadores se esses estiverem disponíveis, enquanto que no C++, isso ficaria mais a cargo do programador.

Já com o Ruby essa discussão é antiga. Esse assunto foi muito abordado no Rails Summit. Ví muitas críticas no interpretador do Matz e também muitas alternativas subindo (Rubinius, REE, Yarv...). Acredito que o interpretador do Matz já está com os dias contados, isso não tem mais jeito.

Quanto ao Python e ao PHP, eles já estão mais maduros que o Ruby então é até justificável a diferença, porém não acredito que eles ficarão a frente do Ruby por muito tempo, já que, como eu disse, várias alternativas ao interpretador do Matz estão chegando.

Abraço</description>
		<content:encoded><![CDATA[<p>Então Marcos, após eu fazer esse post, andei pesquisando mais e vi que a JVM otimiza ao interpretar os bytecodes, ela otimiza para o ambiente em que ela está rodando ou seja, a JVM por exemplo pode paralelizar um loop entre dois processadores se esses estiverem disponíveis, enquanto que no C++, isso ficaria mais a cargo do programador.</p>
<p>Já com o Ruby essa discussão é antiga. Esse assunto foi muito abordado no Rails Summit. Ví muitas críticas no interpretador do Matz e também muitas alternativas subindo (Rubinius, REE, Yarv&#8230;). Acredito que o interpretador do Matz já está com os dias contados, isso não tem mais jeito.</p>
<p>Quanto ao Python e ao PHP, eles já estão mais maduros que o Ruby então é até justificável a diferença, porém não acredito que eles ficarão a frente do Ruby por muito tempo, já que, como eu disse, várias alternativas ao interpretador do Matz estão chegando.</p>
<p>Abraço</p>
]]></content:encoded>
	</item>
	<item>
		<title>Por: Marcos Ricardo</title>
		<link>http://www.meupost.com/2008/07/27/comparacao-de-desempenho-entre-linguagens-de-programacao/comment-page-1/#comment-29</link>
		<dc:creator>Marcos Ricardo</dc:creator>
		<pubDate>Sat, 22 Nov 2008 17:25:53 +0000</pubDate>
		<guid isPermaLink="false">http://www.meupost.com/?p=41#comment-29</guid>
		<description>Oi Ricardo,

É mesmo como você falou: 

&quot;gera polêmica pois sempre há brechas e margens para discussão&quot;.

OK sabemos que estão &quot;comparando&quot; coisas completamente diferentes, no caso da sua versão do teste, é uma linguagem compilada, duas pseudo-compiladas e duas interpretadas. Como se pode ver pelos resultados, C++ executa sempre no mesmo tempo, bem razoável, e as demais, mostram mais ou menos variação.

O maior problema neste tipo de teste, na verdade é o código usado.

Repare que até visualmente, os programas se parecem, a impressão que dá, é que eles tentaram &quot;ser justos&quot;, comparando programas com &quot;design&quot; muito semelhantes, ocorre, que quando uma linguagem é compilada, pouco importa o tamanho do fonte, e muitas vezes até a lógica utilizada, pois o compilador (dependendo) pode otimizar alguma coisa.

Já nas linguagens pseudo-compiladas e interpretadas, o tamanho do código e a lógica utilizada influenciam bastante.

Olhando rapidamente o código Ruby, podemos ver que dá pra melhorar muita coisa ali...

O mais correto na minha opinião, seria pegar o enunciado do problema original, entregar para um especialista em cada linguagem, fazer umas 3 ou 4 rodadas de teste + otimização, e depois que não houvesse mais onde melhorar, fazer a comparação final.

Apesar de não provar muita coisa, acredito que seria MUITO mais justo.

Grande abraço.</description>
		<content:encoded><![CDATA[<p>Oi Ricardo,</p>
<p>É mesmo como você falou: </p>
<p>&#8220;gera polêmica pois sempre há brechas e margens para discussão&#8221;.</p>
<p>OK sabemos que estão &#8220;comparando&#8221; coisas completamente diferentes, no caso da sua versão do teste, é uma linguagem compilada, duas pseudo-compiladas e duas interpretadas. Como se pode ver pelos resultados, C++ executa sempre no mesmo tempo, bem razoável, e as demais, mostram mais ou menos variação.</p>
<p>O maior problema neste tipo de teste, na verdade é o código usado.</p>
<p>Repare que até visualmente, os programas se parecem, a impressão que dá, é que eles tentaram &#8220;ser justos&#8221;, comparando programas com &#8220;design&#8221; muito semelhantes, ocorre, que quando uma linguagem é compilada, pouco importa o tamanho do fonte, e muitas vezes até a lógica utilizada, pois o compilador (dependendo) pode otimizar alguma coisa.</p>
<p>Já nas linguagens pseudo-compiladas e interpretadas, o tamanho do código e a lógica utilizada influenciam bastante.</p>
<p>Olhando rapidamente o código Ruby, podemos ver que dá pra melhorar muita coisa ali&#8230;</p>
<p>O mais correto na minha opinião, seria pegar o enunciado do problema original, entregar para um especialista em cada linguagem, fazer umas 3 ou 4 rodadas de teste + otimização, e depois que não houvesse mais onde melhorar, fazer a comparação final.</p>
<p>Apesar de não provar muita coisa, acredito que seria MUITO mais justo.</p>
<p>Grande abraço.</p>
]]></content:encoded>
	</item>
</channel>
</rss>
