Índice
Lua é uma linguagem interpretada, simples, portátil e extensível que foi originalmente criada para ser integrada com C e outras linguagens convencionais, porém estendeu seu uso a aplicativos da web, aplicativos móveis, serviços da web e até mesmo videogames.Ele usa o API do C para executar certas tarefas que variam de operações de baixo nível, desempenho e interfaces com programas de terceiros. Lua também brilha por si só, permite trabalhar com estruturas dinâmicas, elimina redundâncias, permite a gestão automática da memória e proporciona a facilidade de teste e depuração.
Lua Também serve como uma linguagem "cola" para chamá-lo de alguma forma, já que possui um componente de desenvolvimento de software focado na criação de aplicativos usando componentes de alto nível que são escritos e compilados em linguagens como C ou C ++.
Já sabemos um pouco mais sobre Lua, mas com todas as linguagens de programação disponíveis hoje servindo ao mesmo propósito, muitos podem estar pensando: Por que você escolheria Lua acima dos outros? Mas a verdade é que Lua Possui uma série de características que o diferenciam dos demais, vejamos:
ExtensibilidadeA extensibilidade de Lua é tal que muitos desenvolvedores o consideram não como uma linguagem, mas como uma caixa de ferramentas para construir linguagens específicas. Lua foi projetado desde o início para ser estendido por meio de seu próprio código e código semelhante, onde uma prova disso é que Lua implementa a maior parte de sua funcionalidade básica por meio de bibliotecas externas. A integração de Lua com C / C ++ é extremamente simples e tem sido usado em conjunto com outras linguagens, como Fortrand, Java, C # e mesmo com outras línguas interpretadas como Rubi Y Perl.
SimplicidadeLua é uma linguagem simples e pequena, com poucos conceitos, com extensa documentação e muito fácil de aprender devido à sua simplicidade.
EficiênciaA implementação é altamente eficiente e os estudos realizados mostram que Lua como uma das línguas interpretadas mais rapidamente hoje.
PortabilidadeFinalmente, quando falamos sobre portabilidade, não estamos falando apenas sobre o que Lua pode ser executado tanto em janelas como em LinuxEstamos falando sobre ele rodando em todas as plataformas que conhecemos: Mac, OS X, Symbian OS, PlayStation, Xbox, processadores ARM e, claro, todos os sabores de Unix e Windows. O código para todas essas plataformas é praticamente o mesmo e Lua não usa compilação condicional, em vez disso, segue o compilador ANSI C, desta forma não há necessidade de adaptá-lo a um novo ambiente.
Como vemos Lua possui certas características que o diferenciam de outras linguagens interpretadas. Já temos um panorama mais amplo da linguagem, vamos ver como instalá-lo e como podemos fazer um exemplo simples.
Para este tutorial, vamos instalar Lua em Ubuntu para simplificar as etapas e seu uso. Primeiro abrimos nosso terminal e vamos executar o seguinte comando:
sudo apt-get install lua5.2Com isto teremos a última versão da linguagem e poderemos começar a desenvolver com ela, pois podemos constatar que foi bastante fácil de instalar, comprovando assim a sua funcionalidade de simplicidade. Agora vamos criar um pequeno arquivo chamado hello_world.lua que terá o seguinte código:
print ("Hello World, Lua instalada sem nenhum problema")Vamos ao nosso terminal para o caminho onde criamos o arquivo e vamos executá-lo para verificar se temos Lua instalado sem problemas, para isso usamos apenas a palavra reservada lua e o nome do arquivo, vamos ver qual é o resultado do nosso programa:
função fatorial (n) se n == 0 então retorna 1 senão retorna n * fatorial (n-1) end end print ("Digite um número:") a = io.read ("* número") print (fatorial (a ))Vamos executar nosso código no terminal e ver como funciona:
Cada pedaço de código que Lua executa, como um arquivo ou uma linha é chamada pedaço ou parte, onde nada mais é do que uma sequência de comandos ou instruções. A peculiaridade de Lua é que ela não precisa de separadores entre as sentenças, mas podemos usar o famoso ponto-e-vírgula se desejarmos.
Recomendamos o uso do ponto-e-vírgula para separar duas instruções que estão na mesma linha para manter alguma ordem no código e legibilidade. É importante mencionar que a quebra de linha de Lua é inexistente, para ver como funciona o descrito acima, vejamos o seguinte exemplo onde cada parte é igualmente válida:
função norma (x, y) retorno (x 2 + y 2) 0,5 fim função dupla (x) retorno 2 * x fimAgora, para acessar o console interativo e poder depurar nosso programa, devemos colocar o seguinte:
lua -i test.luaO console interativo abrirá e poderemos avaliar nosso programa, para isso utilizaremos a função dofile () que é responsável por carregar nosso código e então podemos enviar os argumentos para nossas funções e executá-los, vamos ver como fazemos isso:
Já passamos por uma série de conceitos úteis para executar nossos programas e realizar testes sobre eles em caso de erros, mas para reduzir esses erros é necessário conhecer algumas convenções a respeito de quais palavras reservadas não podemos usar ou mesmo como chamar nossas variáveis ou identificadores.
Para o último, pode ser qualquer string composta por letras, números e sublinhados, tomando cuidado para não começar com um número, por exemplo:
- identificador
- identificador2
- aVariableVeryLong
- _identifier
- _ENTRADATES
- [[imprimir ("Olá, mundo") -]]E se quisermos desativar esse comentário incluindo um script adicional no início dele, temos: