[R-br] R 2.12 -> R 2.13

Benilton Carvalho beniltoncarvalho em gmail.com
Sexta Maio 13 16:57:52 BRT 2011


O R continua interpretado... mas e' aquela estoria de que vc pode dizer:

"O dissacarídeo de fórmula C12H22O11, obtido através da fervura e da
evaporação de H2O do líquido resultante da prensagem do caule da
gramínea Saccharus officinarum, (Linneu, 1759) isento de qualquer
outro tipo de processamento suplementar que elimine suas impurezas,
quando apresentado sob a forma geométrica de sólidos de reduzidas
dimensões e arestas retilíneas, configurando pirâmides truncadas de
base oblonga e pequena altura, uma vez submetido a um toque no órgão
do paladar de quem se disponha a um teste organoléptico, impressiona
favoravelmente as papilas gustativas, sugerindo impressão sensorial
equivalente provocada pelo mesmo dissacarídeo em estado bruto, que
ocorre no líquido nutritivo da alta viscosidade, produzindo nos órgãos
especiais existentes na Apis mellifera.(Linneu, 1759) No entanto, é
possível comprovar experimentalmente que esse dissacarídeo, no estado
físico-químico descrito e apresentado sob aquela forma geométrica,
apresenta considerável resistência a modificar apreciavelmente suas
dimensões quando submetido a tensões mecânicas de compressão ao longo
do seu eixo em conseqüência da pequena capacidade de deformação que
lhe é peculiar."

ou

"Rapadura é doce, mas não é mole não."

O byte-compiler pega o primeiro e traduz para o segundo... E, então, o
segundo é que é interpretado.

Por exemplo:

f = function(nr, nc){
  z = matrix(rnorm(nr*nc), nc=nc)
  for (i in 1:nr){
    for (j in 1:nc){
      if (i != 1){
       z[i, j] = runif(1)*z[i-1, j]
      }
    }
  }
  z
}

Dai' byte-compile essa funcao:

library(compiler)
fcmp = cmpfun(f)

E entao compare:

system.time(f(1000, 1000))
system.time(fcmp(1000, 1000))

Obvio, se vc escrever isso em C, vc ganha muito mais em performance...
Entretanto, ja' e' um ganho pra quem nao tem intimidade com C/C++ e
similares...

b



2011/5/13 Carlos Andrade <prf.cantonio em gmail.com>:
> Li esta novidade do compilador na nova versão do R.
> Como funciona?
> Diz-se que o R é uma linguagem interpretada.
>
> Em 11 de maio de 2011 17:30, Benilton Carvalho <beniltoncarvalho em gmail.com>
> escreveu:
>>
>> por exemplo, para mim, a presenca de um compilador (byte-compiler) no
>> R 2.13.0 e' importantissimo... :)
>>
>> b
>>
>> 2011/5/11 Paulo Justiniano <paulojus em leg.ufpr.br>:
>> > Leonard
>> >
>> > Sempre que sai uma nova versao sai uma lista das mudancas
>> >
>> > como ser ou nao importante pode variar de acordo com seus interesses, o
>> > melhor é voce ver o que mudou e tirar suas conclusoes...
>> >
>> > The latest release (2011-04-13): R-2.13.0.tar.gz (read what's new in the
>> > latest version).
>> >
>> > http://cran-r.c3sl.ufpr.br/src/base/NEWS
>> >
>> > On Tue, 10 May 2011, Leonard Assis wrote:
>> >
>> >> Gostaria de saber se existe muita diferença entre R 2.12 e R 2.13 que
>> >> justifiquem a migração.
>> >>
>> >> Leonard
>> >> _______________________________________________
>> >> R-br mailing list
>> >> R-br em listas.c3sl.ufpr.br
>> >> https://listas.inf.ufpr.br/cgi-bin/mailman/listinfo/r-br
>> >
>> > _______________________________________________
>> > R-br mailing list
>> > R-br em listas.c3sl.ufpr.br
>> > https://listas.inf.ufpr.br/cgi-bin/mailman/listinfo/r-br
>> >
>> >
>>
>>
>>
>> --
>> Successful people ask better questions, and as a result, they get
>> better answers. (Tony Robbins)
>> _______________________________________________
>> R-br mailing list
>> R-br em listas.c3sl.ufpr.br
>> https://listas.inf.ufpr.br/cgi-bin/mailman/listinfo/r-br
>
>
>
> --
> Atenciosamente,
>
> Prof. Carlos A. S. de Andrade
> LAPEA - Laboratório de Pesquisa em Economia Aplicada e Engenharia de
> Produção
> Universidade Federal de Campina Grande.
>  Centro de Humanidades
> Unidade Acadêmica de Economia
>
> _______________________________________________
> R-br mailing list
> R-br em listas.c3sl.ufpr.br
> https://listas.inf.ufpr.br/cgi-bin/mailman/listinfo/r-br
>
>



-- 
Successful people ask better questions, and as a result, they get
better answers. (Tony Robbins)


Mais detalhes sobre a lista de discussão R-br