Download - Locaweb
Download - Locaweb
Download - Locaweb
Create successful ePaper yourself
Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.
descompactado. O código fonte contém cerca de 17 mil<br />
linhas de C. No Linux, o interpretador Lua contendo todas<br />
as bibliotecas padrões de Lua ocupa 153 K. Já a biblioteca<br />
Lua ocupa 203 K.<br />
A linguagem é um software livre de código aberto,<br />
distribuído sob uma licença muito liberal (a conhecida<br />
lMIT). A Lua pode ser usada para quaisquer propósitos,<br />
incluindo comerciais, sem qualquer custo ou burocracia.<br />
Para baixar o sistema, basta entrar no site oficial da<br />
linguagem: www.lua.org.<br />
Os primeiros passos na Lua<br />
Um pedaço de código Lua é chamado de trecho e, para<br />
executar esse trecho, podemos usar o interpretador da<br />
linguagem. Este, por sua vez, é chamado de lua (quando<br />
nos referimos à linguagem, usamos a letra L maiúscula, e<br />
ao se referir ao interpretador, usamos a letra l minúscula).<br />
Mas, antes de usarmos o interpretador, precisamos<br />
instalar a Lua.<br />
É possível fazer isso a partir do código fonte, baixado<br />
do site oficial ou do repositório de uma distro Linux. Para o<br />
exemplo deste artigo, usaremos o Debian GNU/Linux como<br />
base para testarmos os trechos de código Lua.<br />
Vamos proceder agora com instalação de Lua no<br />
Debian GNU/Linux (Lenny):<br />
# aptitude install lua5.1<br />
Para não fugir da tradição do “Hello World”, vamos<br />
imprimir um “Hello Brasil” a partir do interpretador lua:<br />
# lua<br />
Lua 5.1.3 Copyright (C) 1994-2008 Lua.org, PUC-Rio<br />
> print("Hello Brasil")<br />
Hello Brasil<br />
Podemos também escrever o programa acima em um<br />
arquivo hello.lua, e chamar o interpretador seguido do<br />
nome do arquivo, que contém o seu programa:<br />
# lua hello.lua<br />
Hello Brasil<br />
Por padrão, variáveis são globais em Lua. Para indicar<br />
que uma variável é local ao bloco ou programa em que<br />
ela foi declarada, devemos usar a palavra-chave local.<br />
O exemplo abaixo ilustra isso:<br />
-- Dois traços seguidos indicam um comentário.<br />
local l = 10<br />
LUA Programando.com<br />
* A linguagem Lua foi inteiramente<br />
projetada, implementada e<br />
desenvolvida no Brasil por uma<br />
equipe da Pontifícia Universidade<br />
Católica do Rio de Janeiro<br />
g = 100<br />
print (l) -- imprime 10<br />
if l > 0 then<br />
local l = 5<br />
print (l, g) -- imprime 5 100<br />
end<br />
print (l) -- imprime 10<br />
Em Lua, o tipo da variável é determinado<br />
dinamicamente. Existem oito tipos básicos: nil, boolean,<br />
number, string, userdata, function, thread e table. O<br />
exemplo seguinte usa a função type para exibir os tipos:<br />
print (type("Hello Brasil")) -- imprime string<br />
print (type(2010)) -- imprime number<br />
print (type(print)) -- imprime function<br />
print (type(type)) -- imprime function<br />
print (type(true)) -- imprime boolean<br />
print (type(nil)) -- imprime nil<br />
t = {}<br />
print (type(t)) -- imprime table<br />
Lua utiliza dois pontos (..) para concatenar valores<br />
entre strings:<br />
nome = "Maria"<br />
snome = "Simão"<br />
print (nome .. " " .. snome) -- imprime Maria<br />
Simão<br />
Os operadores relacionais de Lua são: < > = == ~=<br />
Os cinco primeiros operadores são bastante comuns em<br />
outras linguagens e possuem o significado usual. O<br />
operador relacional ~= significa a negação da igualdade.<br />
Lua oferece um único mecanismo para estruturação de<br />
dados, chamado tabela. Estas, por sua vez, nada mais são<br />
que arrays associativos, isto é, uma estrutura de dados que<br />
associa chaves com valores e permite acesso rápido ao valor<br />
associado a uma dada chave.<br />
Tabelas são, provavelmente, a característica mais<br />
marcante de Lua. Muitas outras linguagens, em especial<br />
linguagens dinâmicas, oferecem arrays associativos, mas<br />
locaweb 57