Lua (linguagem de programação)

De Wikinet
Ir para: navegação, pesquisa
O logo da linguagem é esta imagem idiota...
... mas deveria ser baseada nesta imagem!

Tem certas porras que são inventadas, são uma merda porque existem coisas muito melhores, mas por alguma cagada acabam sendo usadas por alguma pessoa influente, passam a ser usadas e, no final, acabam virando padrão, mandando à merda coisas muito melhores.

Lua, uma linguagem de programação, é um destes casos. Se uma porra destas tivesse sido inventada lá nos anos 1960, até se compreende, mas a porra foi inventada no início dos anos 1990, e, pior, por três brasileiros, o professor da PUC-RJ Roberto Ierusalimschy, que teve a ideia da porra toda, e seus escravos, os programadores Luiz Henrique de Figueiredo e Waldemar Celes, que foram os que fizeram o trabalho de verdade. Além, é claro, dos vários alunos do Ierusalimschy, que tiveram que debugar a porra toda para passar de ano.

A primeira versão "estável" (se é que esta merda algum dia foi estável) foi lançada em 1993, e desde então tem saído várias versões.

Que merda é esta?[editar]

A linguagem é uma merda, porque, em vez de fazer como em C e optar por um texto conciso e elegante, os caras pegaram tudo que tem de ruim no Pascal e pioraram, ou seja, é uma linguagem que tem a maior cara de Pascal, mas com várias merdas de ruim que tem no C.

A título de ilustração, uma rotina que calcula o fatorial de forma recursiva (que é uma merda, pergunte a algum programador porque) escrita em C é assim:

double fatorial(int n)
{
  if (n <= 1) return 1.0;
  return fatorial(n - 1) * n;
}

nesta porra de linguagem (código chupado da Wikipédia em português) fica assim:

function fact(n)
   if n == 0 then
      return 1
   else
      return n * fact(n - 1)
   end
end

ou seja, tem muito texto inútil entulhando o cógido. E ainda por cima este código ainda está errado, os idiotas nem sabem que escrever n * fact(n - 1) vai empilhar um monte de merda à toa, o certo é escrever fact(n - 1) * n.

Pior: quando os brasileiros malucos inventaram esta merda, que era para ser uma linguagem interpretada, os computadores eram lentos pra caralho, então fazer uma conta simples como o fatorial de sessenta e nove (este número não foi escolhido por sua relação com a pornografia, mas porque nas calculadoras eletrônicas dos anos 1970, este era o maior número cujo fatorial podia ser calculado, porque o fatorial de 70 passa do googol, o maior número representado nestas calculadoras) levava tempo pra caralho.

Sucesso[editar]

A porra da linguagem era para ter morrido, e ficar restrita apenas como uma curiosidade que alguns malucos inventaram para torturar os alunos, exceto por um acidente.

Era uma vez um porra-louca que desenvolvia um first person shooter, e que, depois de haver programado toda a parte visual usando C, resolveu que a inteligência artificial deveria ser escrita em uma linguagem interpretada. Afinal, se a A.I. levasse 10 vezes mais tempo por ser interpretada do que por ser compilada, foda-se, ainda assim o tempo consumido seria insignificante em relação ao tempo consumido gerando as animações 3D. A vantagem de usar uma linguagem interpretada é que é muito mais fácil debugar um código, é quase direto, você escreve a merda, roda, e, quando dá pau, corrige o código e bota para rodar.

Então o cara resolveu sair procurando qual era a linguagem interpretada que podia ser usada sem ter que pagar por copyright. Por acaso, ele achou a Lua, usou e gostou.

E, como todo mundo copicola todo mundo, depois dele uma porrada de outros jogos passaram a ter sua parte de A.I. escrita em Lua. Por exemplo: Far Cry, Freeciv, Ragnarok Online, Tibia e World of Warcraft, segundo dizem os idiotas da wikipédia em português (se é que dá para confiar em qualquer merda que está lá, pode ser tudo chute), são escritos em Lua.

Ainda mais sucesso[editar]

Para comemorar os 20 anos desta merda, agora Lua ganhou ainda mais destaque.

Porque, desde 2013, o próprio MediaWiki está adotando Lua como padrão para escrever as porras que, antes, eram escritos como Predefinições na linguagem de merda do MediaWiki.

Ou seja, se alguém agora pretende fazer merdas em wikis, é bom ir aprendendo a programar em Lua, porque daqui a pouco não vai mais ter merda nenhuma na linguagem do MediaWiki.

Para saber mais[editar]

Foda-se, algum dia vamos escrever um tutorial Ajuda: Lua, por enquanto se vira com as merdas confusas e mal escritas que tem na Wikipedia

Para saber menos[editar]