Buscar

Paper pronto - linguagem LUA

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 3, do total de 10 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 6, do total de 10 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 9, do total de 10 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Prévia do material em texto

LINGUAGEM DE PROGRAMAÇÃO LUA 
 
 
Juliano Monteiro, Matheus Marques, Vitor Garcia 
Prof. Maurício Machado da Rosa 
Centro Universitário Leonardo da Vinci - UNIASSELVI 
Analise e Desenvolvimento de Sistemas (ADS0023) – Prática do Módulo II 
18/05/2015 
 
 
RESUMO 
Neste trabalho apresentaremos um pouco sobre linguagem brasileira de programação LUA através 
de uma abordagem simples e informativa contando um pouco sobre sua história, evolução, 
aplicações, vantagens e desvantagens desta que é uma linguagem de scripts amplamente usada nas 
mais diversas áreas. Noções gerais de histórico demonstram seu propósito e seus domínios de 
aplicação e exemplificam a aceitação do trabalho perante os outros países. Além disso, detalhes 
mais específicos serão exemplificados como sua versatilidade para a utilização em software para 
sistemas embarcados, até grandes aplicativos como o Adobe Photoshop Lightroom. LUA é uma das 
linguagens mais utilizadas atualmente para a programação em jogos e também faz parte do padrão 
GINGA, para o Sistema Brasileiro de TV Digital. A linguagem de programação LUA tem sua 
biblioteca escrita por inteiro em ANSI C, sendo por isso muito utilizada na área de segurança e 
também sendo uma linguagem de script embutida em ferramentas como Wireshark, snort e nmap. A 
linguagem de programação LUA, é uma ferramenta muito portátil o mesmo código-fonte pode ser 
compilado em qualquer plataforma. Em pouco tempo passou a ser uma das 20 linguagens mais 
utilizada atualmente no mundo, com isso teve sua presença em empresas muito importantes como 
Incor, Intel, Microsoft e NASA. 
 
Palavras-chave: Programação. Versatilidade. LUA. 
 
 
1. INTRODUÇÃO 
 
A linguagem de programação LUA tem conquistado os desenvolvedores de programas e 
aplicações aos poucos, graças a sua simplicidade, leveza e rapidez. A LUA é uma linguagem de 
programação de extensão projetada para dar suporte à programação procedimental em geral e que 
oferece facilidades para a descrição de dados. 
A linguagem também oferece um bom suporte para a programação orientada a objetos, 
programação funcional e programação orientada a dados. A LUA foi planejada para ser utilizada 
por qualquer aplicação que necessite de uma linguagem de script leve e poderosa. Por ser uma 
linguagem de extensão, LUA não possui a noção de um programa principal: ela somente funciona 
embarcada em um programa cliente anfitrião, chamado de programa hospedeiro. Esse programa 
hospedeiro pode invocar funções para executar um pedaço de código LUA, pode escrever e ler 
variáveis LUA e pode registrar funções C para ser chamada pelo código LUA. 
2 
 
2. HISTÓRIA 
 
Lua é a única linguagem de programação genuinamente brasileira que foi aceita no mundo 
todo. Foi criada em 1993 por Roberto Ierusalimschy, Luiz Henrique de Figueiredo e Waldemar 
Celes, desenvolvedores do TecGraf (Grupo de Tecnologia em Computação Gráfica) da PUC - Rio, 
a princípio, para ser usada em um projeto da Petrobras. Mas devido à sua eficiência, clareza e 
facilidade de aprendizado, passou a ser usada em diversos ramos da programação, como no 
desenvolvimento de jogos, controle de robôs, processamento de texto, entre outros. Também é 
freqüentemente usada como uma linguagem de propósito geral. Versões da Lua antes da versão 5.0 
foram liberadas sob uma licença similar à licença BSD. 
A partir da versão 5.0, Lua foi licenciada sob a licença MIT. Assemelha-se com Python, 
Ruby e Icon, entre outras. Lua tem sido usada em várias aplicações, tanto comercial como não-
comercial. A NASA até 2003 utilizava Lua para controlar o armazenamento de gazes explosivo em 
ônibus espaciais. E aqui mesmo no Brasil, o instituto do coração, INCOR, radicalizou e 
desenvolveu todo seu sistema WEB para controle de suas UTIs em Lua. 
 
2.1 EVOLUÇÃO 
 
•••• 1993: Lua 1.0, aconteceu à primeira discussão pública sobre Lua, dada no VII - Simpósio 
Brasileiro de Engenharia de Software; 
•••• 1994: Lua 1.1, esta foi à primeira versão liberada para o público; 
•••• 1995: Foi liberada a versão 2.2; 
•••• 1996: Liberada a versão 2.4; 
•••• 1997: Liberada a versão 3.0. Começa aplicações para jogos; 
•••• 1998: Liberada a versão 3.1; 
•••• 1999: Liberada a versão 3.2.1 (com espelhos nos EUA e na Alemanha); 
•••• 2000: Liberada a versão 4.0 (com novos espelhos, no Japão e na Dinamarca); 
•••• 2001: Liberada a versão 4.1 (com novo espelho, agora a Rússia); 
•••• 2002: Liberada a versão 5.0(beta). Lua Biblioteca Design Workshop realizado na 
Universidade de Harvard; 
•••• 2003: Lua se destaca como a linguagem mais popular para criação de scripts de jogos. É 
lançado o livro “Programming in Lua”. Liberada a versão 5.0.1; 
•••• 2004: Liberada a versão 5.1; 
•••• 2005: Liberada a versão 5.1; 
3 
 
•••• 2006: Liberada a versão 5.1.1. Feita a tradução do livro “Programming in Lua” para o 
alemão; 
•••• 2007: Feita a tradução coreana do livro “Programming in Lua”. Artigo sobre LuaView 
aparece em LabVIEW Mundial (em italiano). Referência manual disponível em português e 
espanhol; 
•••• 2008: Publicado o livro “Introdução a Programação Lua” em japonês. Referência manual 
disponível em russo. Tradução chinesa do livro “Programming in Lua”. Lua Workshop 2008 
realizado na Universidade George Washington em Washington. Publicado o livro “Lua 
Programação Gems”; 
•••• 2009: Referência manual disponível em húngaro. Google apresenta o Android Scripting 
Ambiente com o apoio de Lua. Lua Workshop 2009 realizado no Rio de Janeiro. Criada uma 
versão brasileira da lista de discussão sobre Lua; 
•••• 2010: Adobe e Social Media Press se junta a Lua no programa de patrocínio corporativo. 
Liberada a versão 5.2 (alfa); 
•••• 2011: Referência manual disponível em alemão. 
 
2.2 SOBRE A LINGUAGEM 
 
Lua foi desenvolvida inicialmente para ser embutida em aplicações escritas em outras 
linguagens, de forma que pudesse estendê-las. Pode ser usado para descrever dados, definir 
configurações e comportamentos do núcleo da aplicação escrito em outra linguagem. Lua também 
fornece mecanismos para ser estendida. Com a evolução da linguagem, Lua passou a ser vista 
também como uma linguagem de script auto-suficiente e passou a ser usada para desenvolver 
diversas aplicações, mantendo as características de oferecer recursos poderosos para descrever 
dados e ser facilmente extensível. 
A linguagem Lua é utilizada hoje em países como EUA, Japão, Dinamarca e Alemanha 
entre outros na criação de scripts, aplicação de games como os da LucasArts Entertainment, 
controle de robôs e testes de equipamentos. Para a Web, a Lua tem sido muito útil para a 
intercomunicação de bases de dados em sites dinâmicos. O código da linguagem é modular, 
podendo cada módulo ser eliminado no caso de a aplicação não precisar dele, o que deixa qualquer 
aplicação mais leve de se carregar. 
O maior atrativo para aquele que trabalhará com a linguagem é a possibilidade de construir 
um código através de meta-mecanismo, sem precisar despejar o conteúdo da linguagem 
propriamente dito, o que facilita a vida do programador e economiza tempo na conclusão do 
projeto. 
4 
 
A prática de como a linguagem LUA pode ajudar o programador, digamos que todo um 
trabalho que poderia ser feito anteriormente em ASP para rodar em servidores Windows seja feito 
utilizando o servidor de páginas CGI/Lua (que é para a linguagem Lua o que o IIS é para o ASP) 
para escrever as páginas dinâmicas e o LuaSQL para o acesso aos bancos de dados. Os beck-ends 
seriam compilados em ANSI C ou em Lua pré-compilado. Se, um dia, for necessário que os 
servidores Windows sejam trocados por Solaris, todo o trabalho não teria que ser refeito para a nova 
plataforma, bastando apenas recompilar o código C e configurar o novo Web Server. 
A principal diferença em trabalhar com Lua é que estapode ser integrada a outros 
programas. O interesse das empresas por Lua ocorre porque essa linguagem de programação ocupa 
pouco espaço no HD do computador, é mais rápida entre as chamadas linguagens de extensão - que 
é uma subdivisão da linguagem de programação e é mais fácil de interagir com outros programas. 
A linguagem Lua tem vários “derivados''. O principal deles é o CGILua, que trabalha com 
aplicações WEB. O CGILua é um programa escrito em C onde você embute trechos escritos em 
Lua. E o executável do CGILua faz toda a comunicação desse trecho Lua com o protocolo http da 
Internet. Ou seja, ele faz o papel do CGI. Lua, com seus arquivos de configuração, possibilita que, 
ao mesmo tempo em que se cria a funcionalidade das páginas, elas estejam sendo diagramadas na 
produção, e os textos, elaborados por um redator tudo ao mesmo tempo. 
Em particular, Lua oferece um mecanismo de co-rotinas assimétrico, de primeira classe e 
com pilha. Co-rotinas, como implementadas por Lua, são bastante similares a linhas de execução 
(theads) cooperativas. Cada co-rotinas em Lua representam uma linha de execução independente, 
com sua própria pilha de chamadas (Por isso é classificada como stackful). Mas, ao contrário de um 
sistema multithreading convencional, não há preempção em um sistema de co-rotinas. Uma co-
rotina só interrompe sua execução quando termina ou quando invoca explicitamente uma primitiva 
de suspensão (yiald). 
 
2.3 VANTAGENS 
 
• Rápida: Lua tem um ótimo desempenho comparado com outras linguagens de scripts 
interpretadas, sendo a mais rápida entre todas; 
• Portátil: O mesmo trecho de código pode ser compilado em várias plataformas sem sofrer 
alterações. Lua roda em todos os tipos de Sistemas Operacionais; 
• Embutível: Lua é rápida e pequena podendo facilmente ser embutida nas mais diversas 
aplicações. Lua é usada para estender programas escritos não só em C e C++, mas também 
em Java, C#, Smalltalk, Fortran, Ada, Erlang, e mesmo outras linguagens de script, como 
Perl e Ruby; 
5 
 
• Poderosa e Simples: Embora Lua não seja uma linguagem puramente orientada a objetos, 
ela fornece meta-mecanismo para a implementação de classes e herança. Os meta-
mecanismo de Lua traz uma economia de conceitos e mantêm a linguagem pequena, ao 
mesmo tempo em que permitem que a semântica seja estendida de maneiras não 
convencionais; 
• Pequena: Incluir Lua numa aplicação não aumenta quase nada o seu tamanho. O pacote de 
Lua 5.1.4, contendo o código fonte, documentação e exemplos, ocupa 860K descompactado; 
• Livre: Lua é software livre de código aberto, distribuída sob a licença MIT. Pode ser usada 
para quaisquer fins sem burocracia, é só fazer o download e usá-la; 
• Importância Global: O projeto e “a evolução de Lua” foram apresentados em junho de 
2007 na HOPL III, a 3a Conferência da ACM sobre a História das Linguagens de 
Programação. Essa conferência ocorre a cada 15 anos (a primeira foi em 1978) e somente 
poucas linguagens são apresentadas a cada vez. A escolha de Lua para a HOPL III é um 
importante reconhecimento do seu impacto mundial. Lua é a única linguagem de 
programação de impacto desenvolvida fora do primeiro mundo, estando atualmente entre as 
20 linguagens mais populares na Internet (segundo o índice TIOBE, em Março/2011). 
 
2.4 DESVANTAGNS 
 
• Mais demorado que C; 
• Vulnerabilidade: Foram identificadas e documentadas diversas vulnerabilidades de 
programação insegura em Lua. Tais como injeção de comandos, condição de competição, 
corrupção de arquivos e código malicioso, script cruzado armazenado, referência insegura a 
tabelas, injeção de SQL e mal uso de criptografia, (estas vulnerabilidades, em outras 
linguagens de programação, estão amplamente documentas em catálogos conhecidos, como 
o OWASP Top 10 (2010) e o CWE/SANS Top 25 (2010). Não foi encontrada 
documentação de vulnerabilidades de programação insegura em Lua e nem boas práticas de 
segurança de software em Lua). 
 
2.5 APLICAÇÕES DESENVOLVIDAS 
 
No mercado de softwares em geral: 
• “Ginga NCL” – Middleware padrão brasileiro para TV Digital; 
• “Wireshark” – Analisador de protocolos; 
6 
 
• “Snort” – Detecção de “intrusos” e proteção do sistema; 
• “Adobe Lightroom” – Gerenciador e organizador de imagens; 
• “nmap” – Rastreador de redes para segurança; 
• “Eyeon s Digital Fusion” – Pós-produção de filmes; 
• “INPE” – Biblioteca GIS; 
• “Olivetty” – Firmware para impressoras; 
• “Omnitronix” – Monitoramento remoto; 
• “RealTimeLogic” – Servidores Web; 
• “APT-RPM”, Conectiva – Padrão para distribuições RPM; 
• “Publique!” – Gerenciador de conteúdo para web; 
• “Sputnik” – Wiki extensível disponível como software livre; 
 
Empresas diversas e importantes também aderiram à linguagem, empregando-a em 
aplicações das mais variadas: 
• Hands: Uso no desenvolvimento de navegadores de conteúdo para micros de bolso; 
• Incor (Instituto do Coração em São Paulo): Utilizada no servidor do sistema que monitora 
paciente na UTI via Web; 
• CPC 4400: Placa de switch para rede Ethernet, a linguagem foi usada na criação de sua 
interface; 
• Intel: Empregada na ferramenta interna para layout de chips (processadores); 
• Robô Crazy Ivan: Lua é um dos componentes do seu cérebro, responsável, segundo 
fabricantes do robô, pela parte lógica. Ivan ganhou o concurso de inteligência artificial da 
RoboCup 2000, concurso de robôs realizado na Dinamarca; 
• AXAF (Advanced X-ray Astrophysics Facility): Terceiro dos grandes observatórios 
espaciais lançados pela NASA, tem a tarefa de simular em imagens os sinais recebidos do 
espaço, Lua é uma das linguagens utilizadas para tal; 
• NASA: Lua foi à linguagem usada no controle dos níveis de concentração de gases 
perigosos na preparação para o lançamento de ônibus espacial. 
• Petrobras: Principal usuária, utilizando principalmente em visualizações de perfis 
geológicos. 
 
 
 
 
7 
 
2.6 APLICAÇÕES EM JOGOS 
 
Lua é atualmente a linguagem mais utilizada no desenvolvimento de aplicações para jogos 
(20% dos jogos são desenvolvidos com Lua, enquanto somente 7% usam Python, a segunda 
linguagem de script mais citada na pesquisa [2003] realizada pela gamedev.net um importante site 
para programadores de jogos). Devido ao seu pequeno tamanho, bom desempenho, portabilidade e 
facilidade de integração, Lua tem sido amplamente utilizada na indústria de jogos. Empresas como 
LucasArts, BioWare, Microsoft, Relic Entertainment, Absolute Studios e Monkeystone Games 
desenvolvem jogos usando Lua. Os principais jogos são: 
• “Grim Fandango” - LucasArts; 
• “World WarCraft” - Blizzard; 
• “Sonic, the Hedgehdg” – SEGA; 
• “FarCry” – UBISOFT; 
• “The Sims2” – EA; 
• “Sim City 4” – EA; 
• “Warhammer Online – Age of Reckoning” – EA; 
• “Supreme Commander” – THQ; 
• “Heroes V” – UBISOFT; 
• “Spell Force” – Solo Out; 
• “S.T.A.L.K.E.R. – Shadow of Chernobyl” – THQ; 
• “CRYSIS – EA”; 
• “Dawn of War” – Relic; 
• “NFL Fever 2004” – XSN Sports; 
• “The Witcher” – Atari; 
• “Amped – Freestyle Showboarding” – Microsoft; 
• “Hulk – The Incredible” – SEGA; 
• “Destroy all Humans!” – THQ; 
• “Psychonauts” – MAJEACO; 
• “MDK 2” - Interplay; 
• “Escape from Monkey Island” – Lucas Arts (Neste jogo Lua recebeu uma); 
• “Baldur‟s Gate” - BioWare; 
• “Impossible Creatures” – Relic, Microsoft Game Studios; 
• “HomeWorld 2” – Relic”; 
• “Links 2004” – XSN Sports; 
8 
 
 2.7 APLICAÇÕES NO SISTEMA BRASILEIRO DE TV DGITAL 
 
A linguagem de programação Lua, é a linguagem procedural do subsistema Ginga - NCL, 
parte integrante do sistema Ginga. Conforme Barbosa e Soares (2008), o middleware Ginga é uma 
combinação de tecnologias padronizadas e inovações brasileiras. Ele é subdividido em três 
componentes principaisinterligados. Os subsistemas são chamados de Ginga-J (para aplicações 
procedimentais Java), Ginga - NCL (para aplicações declarativas NCL e NCLua [programa Lua 
para plataforma de televisão digital]) e o Ginga-CC (o núcleo comum). 
Além disso, há diversas APIs, pacotes de software e outros serviços de mais baixo nível, 
oferecidos ao middleware pelo sistema operacional ou outros componentes. 
 
2.9 APLICAÇÕES WEB 
 
Um exemplo de aplicação da linguagem de programação Lua na WEB é o projeto Kepler. 
Kepler é uma comunidade de desenvolvedores de software livre usando Lua como uma opção 
viável de desenvolvimento de aplicações web, mantendo a característica multiplataforma de Lua. 
Esse projeto desenvolveu uma arquitetura onde aplicações para a Web podem ser escritas utilizando 
uma API única denominada CGILua. Seguindo a linha multiplataforma, Kepler disponibiliza 
disparadores de interpretadores Lua para as tecnologias web mais difundidas, entre elas: CGI, 
Módulos do Apache, módulos no IIS (Internet Information Server), FastCGI e Servlet Java. 
Além dos disparadores para tecnologias amplamente difundidas, o Kepler também oferece 
um servidor web escrito em Lua, chamado Xavante. Esse servidor também permite a execução de 
scripts Lua, entre eles os que usam a API CGILua. Lua foi classificada como sendo o mais rápido 
comparado com Python, Perl, PHP e Ruby. 
 
3. CONSIDERAÇÕES FINAIS 
 
Após o termino deste trabalho, conclui-se que a linguagem de programação Lua, apesar de 
muitos ainda não conhecer, é uma linguagem muito vantajosa quando se trata de uma linguagem de 
scripts de extensão. Principalmente na área de jogos, onde ela está tendo um maior destaque 
(embora seja usada para todo tipo de aplicação). Pois é pequena (leve), rápida, dinâmica e muito 
poderosa. O estudo envolvendo conceitos de linguagens de programação representa o requisito 
básico para o compreendimento das entidades e elementos de linguagens de forma a diferenciar os 
diversos propósitos da criação de linguagens, visto que não existe uma solução universalmente 
utilizada que atenda todos os requisitos no desenvolvimento de sistemas em computação. Em 
9 
 
termos de evolução, países desenvolvidos iniciaram a pesquisa na criação de linguagens de 
programação, regendo técnicas e paradigmas para desenvolvimento de programas. Resultados 
consagrados na criação de linguagens de programação são fundamentados na capacidade 
simplificada no uso e expressão dos mecanismos para desenvolvimento de programas, além de 
ferramentas envolvendo o apoio para correção de erros (debug) e interfaces integradas de 
desenvolvimento, nos quais são recursos essenciais para qualquer linguagem moderna para 
programação. 
A linguagem de programação Lua demonstrou possuir grandes características reunidas de 
soluções existentes no desenvolvimento de linguagens e sustenta os paradigmas de programação 
estudados formalmente em Ciência da Computação. Além disso, incorporam funcionalidades 
próprias, como a alta flexibilidade no desenvolvimento de código, gerência automática de memória 
e a integração com demais sistemas. Em outras palavras, a linguagem não recria os mecanismos 
existentes das linguagens consagradas de programação. A aceitação de Lua por diversos 
programadores ao redor do mundo está na simplicidade de código aliado a magnitude para 
implementação de programas. 
O presente trabalho comprova que pesquisadores e profissionais brasileiros em Ciência da 
Computação possuem grande capacidade na criação de linguagens e sistemas de forma a contribuir 
significativamente para facilitar a solução de muitos problemas do mundo moderno, oferecendo 
meios facilitadores de expressão entre Homem e máquina, além de técnicas que ofereçam 
desempenho aceitável e clareza no tratamento de erros. 
 
REFERÊNCIAS 
 
FABRICA DIGITAL. Publique. Disponível em: <http://www.fabricadigital.com.br>. Acesso em: 
19/05/2015. 
 
GÜINTER HEINRICH HERWEG FILHO. TV Digital, lua introdução. Disponível em: 
<http://imasters.com.br>. Acesso em: 15/05/2015. 
 
COMUNIDADE DE DESENVOLVEDORES E PROGRAMADORES EM LUA. Kepler Project. 
Disponível em: <https://kepler-project.org>. Acesso em: 15/05/2015. 
 
LUIZ HENRIQUE, ROBERTO IERUSALIMSCHY, WALDEMAR CELES. Lua site oficial, 
Disponível em: <http://www.lua.org>. Acesso em: 10/05/2015. 
10 
 
LEONARDO GODINHO. Modelos de Concorrência e Sandboxes Aplicados a Servidores HTTP 
em Lua. Disponível em: <http://www.maxwell.lambda.ele.puc-rio.br>. Acesso em: 10/04/2015. 
 
DESENVOLVE WEB TECNOLOGIA DA INFORMAÇÃO LTDA ME. Linguagem de 
programação Lua. Disponível em <http://www.oficinadanet.com.br>. Acesso em: 17/05/2015. 
 
WILLPOWER.ART.BR. Ficha de linguagem de programação Lua. Disponível em: 
<http://www.htmlstaff.org>. Acesso em 05/04/2015. 
 
BRUNO VIANI ROMÃO. As facilidades da programação Lua. Disponivel em: 
<http://www.portaldaprogramacao.com>. Acesso em: 19/05/2015. 
 
LUIZ PESTANA. Linguagem de programação Lua. Disponível em: 
<http://www.gamedev.com.br>. Acesso em: 10/04/2015.

Outros materiais