Lua - Visão Geral

Lua é uma linguagem de programação extensível e leve escrita em C. Ela começou como um projeto interno em 1993 por Roberto Ierusalimschy, Luiz Henrique de Figueiredo e Waldemar Celes.

Ele foi projetado desde o início para ser um software que pode ser integrado ao código escrito em C e outras linguagens convencionais. Essa integração traz muitos benefícios. Ele não tenta fazer o que C já pode fazer, mas visa oferecer o que C não é bom: uma boa distância do hardware, estruturas dinâmicas, sem redundâncias, facilidade de teste e depuração. Para isso, Lua possui um ambiente seguro, gerenciamento automático de memória e boas facilidades para lidar com strings e outros tipos de dados com tamanho dinâmico.

Características

Lua oferece um conjunto de recursos exclusivos que a diferenciam de outras linguagens. Isso inclui -

  • Extensible
  • Simple
  • Efficient
  • Portable
  • Livre e aberto

Código de exemplo

print("Hello World!")

Como Lua é implementada?

Lua consiste em duas partes - a parte do interpretador Lua e o sistema de software em funcionamento. O sistema de software em funcionamento é um aplicativo de computador real que pode interpretar programas escritos na linguagem de programação Lua. O interpretador Lua é escrito em ANSI C, portanto, é altamente portátil e pode ser executado em um vasto espectro de dispositivos, de servidores de rede de ponta a pequenos dispositivos.

Tanto a linguagem de Lua quanto seu interpretador são maduros, pequenos e rápidos. Ele evoluiu de outras linguagens de programação e dos principais padrões de software. O tamanho pequeno permite que ele seja executado em dispositivos pequenos com pouca memória.

Aprendendo Lua

O ponto mais importante ao aprender Lua é focar nos conceitos sem se perder em seus detalhes técnicos.

O objetivo de aprender uma linguagem de programação é se tornar um programador melhor; isto é, para se tornar mais eficaz no projeto e implementação de novos sistemas e na manutenção dos antigos.

Alguns usos da lua

  • Programação de jogos

  • Script em aplicativos autônomos

  • Scripting na Web

  • Extensões e add-ons para bancos de dados como MySQL Proxy e MySQL WorkBench

  • Sistemas de segurança como Sistema de Detecção de Intrusão.