A linguagem Lua - criada na Pontifícia Universidade Católica do Rio de janeiro (PUC-Rio) em 1993 - está prestes a entrar para a História da Computação. No próximo dia 9 de junho, em San Diego, na Califórnia (EUA), o professor Roberto Ierusalimschy, arquiteto-chefe da linguagem, vai apresentar uma palestra sobre a evolução de Lua na HOPL III, a terceira conferência sobre a história das linguagens de programação, que é promovida pela Association for Computing Machinery (ACM) somente a cada 15 anos.
A primeira HOPL (History of Programming Languages Conference) aconteceu em 1978 e a segunda, em 1993. O encontro apresenta poucas linguagens em suas raras edições e Lua estar entre as eleitas atesta seu reconhecimento como a mais importante contribuição brasileira para a pesquisa internacional de Ciência de Computação.
"A escolha para a HOPL III é um importante reconhecimento do impacto mundial de Lua, que é a única linguagem de programação de impacto desenvolvida fora do 'Primeiro Mundo'", diz Luiz Henrique de Figueiredo, pesquisador do Instituto Nacional de Matemática Pura e Aplicada (IMPA), que desenvolve Lua junto com Roberto Ierusalimschy e Waldemar Celes, professores do Departamento de Informática da PUC-Rio.
Linguagem de programação projetada e desenvolvida no Brasil, Lua tem 90% de seus usuários no exterior e atualmente está entre as 25 mais populares na Internet, segundo o índice Tiobe. Lua foi desenvolvida em código aberto e tem distribuição gratuita. A versão mais recente (5.1.2) foi lançada no início de abril de 2007.
Número 1 dos games
A linguagem de programação Lua hoje é largamente utilizada no mundo todo e está presente em vários tipos de aplicações industriais, nas áreas de robótica, logística, bioinformática, programação web, processamento de imagem, editores de texto, dentre várias outras. Lua é usada por grandes companhias, como Adobe, Intel, Microsoft, NASA, Bombardier, Olivetti, Philips, Disney e LucasArts. Entre os produtos que usam Lua, destacam-se: Adobe Lightroom, que é 40% escrito em Lua; as ferramentas para internet Nmap e Wireshark; e a plataforma web Kepler.
Embora não tenha sido desenvolvida com este objetivo, a linguagem Lua é uma das mais utilizadas em jogos. Duas votações informais do gamedev.net (importante espaço para programadores de jogos) elegeram Lua como a mais popular para scripting de jogos. Vários jogos famosos usam Lua: Baldur's Gate, Escape from Monkey Island, FarCry, Grim Fandango, Homeworld 2, Illarion, Impossible Creatures, Psychonauts, The Sims, World of Warcraft e Multi Theft Auto.
"Lua foi especialmente bem-sucedida nos jogos e está rapidamente se transformando na linguagem padrão desta indústria", comenta Luiz Henrique, lembrando que a PUC-Rio, por vocação, desenvolve softwares científicos. Mas, como diz o artigo que vai ser apresentado na HOPL III, "o sucesso é compreensível porque todas as características da linguagem que fazem Lua especial - simplicidade, eficiência, portabilidade e baixo impacto de inclusão em aplicações - são importantes no desenvolvimento de jogos eletrônicos".
Lua no Inpe
Em outro tipo de aplicação, a linguagem está se popularizando também no Brasil. No Instituto Nacional de Pesquisas Espaciais (Inpe/MCT), por exemplo, Lua dá suporte aos estudos de Modelagem Ambiental, como as projeções da evolução do desmatamento na Amazônia. A linguagem está no TerraME, ambiente computacional desenvolvido no Inpe para modelar aspectos temporais e espaciais da área de estudo, combinando múltiplas escalas, atores e eventos.
“Lua tem características ideais para o TerraME, nosso ambiente de modelagem para projeção de cenários para políticas públicas e ordenamento territorial”, enfatiza Gilberto Câmara, diretor do Inpe. Ele afirma que “Lua é muito flexível, e permitiu uma rápida adaptação para ser usada nos ambiente de modelagem de uso da terra do Inpe. Considero que seja a maior contribuição da Computação brasileira para o mundo.”
O TerraME apresenta ferramentas computacionais que possibilitam a construção de modelos ambientais como os hidrológicos e de dinâmica de uso e cobertura da terra. E a linguagem Lua é utilizada para dar suporte aos procedimentos gerais de programação com ferramentas para descrição de dados. Para o Inpe, contar com uma linguagem aberta é fundamental.
Mais informações nos sites: (Lua - http://www.lua.org/ / HOPL III - http://www.acm.org/sigs/sigplan/hopl )