Pular para o conteúdo

Código Lua

O Lua é executado como Lua 5.4 compilado para WebAssembly. É a mais leve das sete linguagens: ideal para uma transformação curta.

SímboloFunção
inputO valor recebido na porta de entrada
varsUma tabela das variáveis de execução
print(...)Escreve no registo da execução (argumentos unidos por tabulações)
returnO valor devolvido sai pela porta result
local commandes = input.commandes
local total, nombre = 0, 0
for _, commande in ipairs(commandes) do
if commande.statut == "payee" then
total = total + commande.montant
nombre = nombre + 1
end
end
print(string.format("%d commandes payées, total %.2f €", nombre, total))
return { nombre = nombre, total = total }
  • As tabelas Lua são indexadas a partir de 1: input[1] é o primeiro elemento de uma lista recebida.
  • Uma tabela com chaves numéricas consecutivas sai como um array JSON; uma tabela com chaves textuais sai como um objeto.
  • A biblioteca standard está disponível: string, table, math, os.

O campo packages aceita módulos LuaRocks em fonte puramente Lua. São resolvidos na primeira execução e depois injetados offline.