segunda-feira, setembro 11, 2006

Funções inline

Seguindo a onda do Miguel, segue mais um artigo muito interessante do Joel sobre funções inline e sua grande aplicabilidade. É interessante como são poucas as lingugens ditas comercias e amplamente difundidas que possuem está funcionalidade. Tudo bem que está não é uma funcionalidade extremamente essencial nem sempre útil, mas pode facilitar muito a vida em determinadas situações. É impressionante também como o Joel escreve bem. :) Ah, e não sei se vocês perceberam, mas agora sou um colaborador oficial deste blog! :) Obrigado Miguel!

3 Comments:

Blogger Miguel Galves said...

Eu que agradeço pelas colaborações e pelo interesse no meu blog. Alias, teus posts estao sendo essenciais pra manter esse blog minimamente ativo, pq eu estou um fracasso ultimamente.

9/13/2006 12:10:00 PM  
Anonymous Lullis said...

Léo,
Sorry, mas vou discordar. Não vi nada de funções inline nesse artigo.

O artigo não trata de uma apresentação sobre conceitos de linguagens que suportam programação funcional como Lisp, Scheme e *gasp* Javascript?

Cheers

9/22/2006 01:40:00 AM  
Blogger Leonardo Garcia said...

Lullis,

Vou concordar com você! :)

Realmente o artigo não fala sobre funções inline. Na verdade, ocorreu um erro da minha parte no que eu chamei de funções inline.

Queria chamar atenção para o fato de existirem linguagens que aceitam funções como argumentos de outra funções ou que nos permitem declarar estas funções na mesma linha que estamos escrevendo a chamada de uma função.

Por exemplo, pegando os exemplos do próprio artigo, algo do tipo:

function Cook( i1, i2, f )
{
alert("get the " + i1);
f(i1);
f(i2);
}

Cook( "lobster", "water", PutInPot );
Cook( "chicken", "coconut", BoomBoom );

Ou, ainda:

Cook( "lobster",
"water",
function(x) { alert("pot " + x); } );
Cook( "chicken",
"coconut",
function(x) { alert("boom " + x); } );

Como foi dito no texto original do Joel, esta segunda forma de se declarar uma função anonimamente (algo que, inclusive, como você bem disse, é muito comum em linguagens que suportam conceitos de programação funcional) é uma forma de "write them inline instead of declaring them elsewhere". Acho que me empolguei com o termo "inline" usado neste pedaço do texto e acabei usando-o de forma indiscriminada. Para sanar as dúvidas, vou postar um novo artigo no blog a respeito de o que são funções inline exatamente.

Um abraço,

9/23/2006 09:53:00 PM  

Postar um comentário

Links to this post:

Criar um link

<< Home