Linguagem Lua: da PUC para os computadores do mundo
17/08/2006 17:25
Maíra Menezes / Foto: Virginia Primo

Já popular em vídeo-games e outras aplicações, a Linguagem Lua, desenvolvida no laboratório de Tecnologia em Computação Gráfica (Tecgraf), do Departamento de Informática, é usada agora no Lightroom, novo programa de edição de imagens da Adobe.

O homem e a Lua: professor Roberto Ierusalimschy, um dos criadores da linguagem

Quem curte jogos de computador talvez já saiba que uma linguagem de programação muito usada na construção de games, como o World of Warcraft, foi inteiramente desenvolvida na PUC-Rio. Criada no laboratório de Tecnologia em Computação Gráfica (Tecgraf) do Departamento de Informática, a linguagem Lua é mundialmente famosa por sua aplicação em jogos, mas esse ano teve um novo e importante uso: o código do novo programa de edição de imagens da Adobe, o Lightroom, lançado em versão beta em janeiro, foi escrito 40% em Lua.

A linguagem foi criada em 1993 por Roberto Ierusalimschy e Waldemar Celes, professores do Departamento de Informática, e por Luiz Henrique de Figueiredo, pesquisador do Instituto de Matemática Pura e Aplicada (Impa) e consultor do Tecgraf. Na época, o objetivo era utilizá-la em projetos do próprio laboratório, pois os pesquisadores necessitavam de uma linguagem com características específicas, não encontradas nas opções disponíveis no mercado. "Dessa necessidade surgiu a Lua", diz Roberto, lembrando que a versão 1.0 da linguagem, que hoje está na 5.1, "não era uma versão, mas um programa feito para atender apenas a dois projetos do Tecgraf".

O principal diferencial de Lua é sua leveza, que faz com que ela ocupe pouco espaço. Ela foi criada para estender aplicações de outras formas mais pesadas, mas hoje também é utilizada com linguagem geral. Lua se difundiu muito na área de jogos por estas características, mas outra aplicação freqüente é em sistemas embutidos, computadores que operam dentro de objetos como leitores de cartão de crédito e controladores de estacionamento. Segundo Roberto, "outro uso crescente é na construção de programas para celulares e palm tops".

O fato de Lua ser um software livre foi fundamental para sua difusão. A linguagem pode ser baixada gratuitamente da internet, mas os usuários são obrigados a colocar os créditos de Lua. A linguagem é um programa de código aberto, o que significa que todos podem ver a forma com que ela é escrita, mas não está em domínio público.

O primeiro uso da linguagem em jogos foi em Grim Fandango, um jogo da Lucas Arts. O projetista foi um dos grandes responsáveis pela divulgação de Lua, e apresentou a linguagem na Game Developers Conference, o maior encontro de profissionais da área.

O uso de Lua pela Adobe foi considerado importante, pois estende o campo de aplicação da linguagem. Hoje, a lista de discussão de Lua na internet tem cerca de mil participantes. Há dois livros específicos sobre Lua, escritos por pessoas de fora do Tecgraf, além do oficial Programing in Lua, escrito por Roberto, que já está na segunda edição. Além disso, a linguagem é citada em pelo menos dez livros sobre a programação de jogos e constará da próxima edição do livro History of Programming Languages, uma publicação importante da área.

Para Roberto, o fato de a linguagem não render ganhos financeiros diretos não é um problema.

– Nós ganhamos satisfação pessoal e reconhecimento da PUC-Rio. Lua traz um retorno para a Universidade e o desenvolvimento nos qualifica como pesquisadores e professores, constata.

 Edição 173