LUA BÁSICO
O que é LUA?
Lua combina sintaxe simples para programação procedural com poderosas construções para descrição de dados baseadas em tabelas associativas e semântica extensível. Lua é tipada dinamicamente, é interpretada a partir de bytecodes para uma máquina virtual baseada em registradores, e tem gerenciamento automático de memória com coleta de lixo incremental. Essas características fazem de Lua uma linguagem ideal para configuração, automação (scripting) e prototipagem rápida. Quais suas origens? |
entre as linguagens que o programador escolha para aprender, inclua uma com suporte a co-rotinas.
Para quem não sabe, uma co-rotina é uma generalização de rotina/função/procedimento que permite que a execução da mesma seja suspensa temporariamente passando o controle para outra rotina. E em algum ponto no futuro, ao retornar o controle para a co-rotina inicial, sua execução é restabelecida no ponto onde havia parado e tendo seu contexto local recuperado.
Na linguagem LUA, as co-rotinas são construções completas. Em outras palavras, nesta linguagem elas são construções stackfull de primeira classe. Ser stackfull significa que em LUA as co-rotinas podem ser suspensas mesmo enquanto executam uma função aninhada. Ser de primeira classe significa que as co-rotinas podem ser livremente manipuladas pelo programador, podendo ser invocadas em qualquer ponto do programa ou ordem. Isto, por exemplo, oferece um grau de expressividade muito maior do que encontramos na implementação dos geradores de Python (que também é um exemplo de implementação de co-rotina).
Mas LUA possui outros fatores que fazem valer a pena o seu aprendizado. Possui um tipo de dados básico muito versátil chamado de tabela. Embora LUA não seja originalmente uma linguagem orientada a objetos, a flexibilidade encontrada neste tipo de dados permite que ela se comporte como se o fosse, caso isto seja necessário.
Outro fator é que o foco de LUA é diferente do foco das linguagens vistas até agora. Lua nasceu para ser uma linguagem de extensão incluindo funcionalidades/facilidades de uma linguagem script em linguagens como C, C++ ou Java. Embora LUA também possa ser utilizada em modo standalone ou ainda como linguagem script para web.
Publicado por: Hélen Hoffmann Marca
Nenhum comentário:
Postar um comentário