• Document: Manual de Referencia de Lua Introducción Lua es un lenguage de programación extensible diseñado para una programación procedimental general con utilidades para la descripción de datos. Tam...
  • Size: 500.1 KB
  • Uploaded: 2019-07-20 15:41:24
  • Status: Successfully converted


Some snippets from your converted document:

Manual de Referencia de Lua 5.1 1 - Introducción Lua es un lenguage de programación extensible diseñado para una programación procedimental general con utilidades para la descripción de datos. También ofrece un buen soporte para la programación orientada a objetos, programación funcional y programación orientada a datos. Se pretende que Lua sea usado como un lenguaje de script potente y ligero para cualquier programa que lo necesite. Lua está implementado como una biblioteca escrita en C limpio (esto es, en el subconjunto común de ANSI C y C++). Siendo un lenguaje de extensión, Lua no tiene noción de programa principal (main): sólo funciona embebido en un cliente anfitrión, denominado programa contenedor o simplemente anfitrión (host). Éste puede invocar funciones para ejecutar un trozo de código Lua, puede escribir y leer variables de Lua y puede registrar funciones C para que sean llamadas por el código Lua. A través del uso de funciones C, Lua puede ser aumentado para abarcar un amplio rango de diferentes dominios, creando entonces lenguajes de programación personalizados que comparten el mismo marco sintáctico. La distribución de Lua incluye un programa anfitrión de muestra denominado lua, que usa la biblioteca de Lua para ofrecer un intérprete de Lua completo e independiente. Lua es software libre, y se proporciona, como es usual, sin garantías, como se establece en su licencia. La implementación descrita en este manual está disponible en el sitio web oficial de Lua, www.lua.org. Como cualquier otro manual de referencia, este documento es parco en algunos lugares. Para una discusión de las decisiones detrás del diseño de Lua, véanse los artículos técnicos disponibles en el sitio web de Lua. Para una detallada introducción a la programación en Lua, véase el libro de Roberto, Programming in Lua (Second Edition). 2 - El lenguaje Esta sección describe el léxico, la sintaxis y la semántica de Lua. En otras palabras, esta sección describe qué elementos (tokens) son válidos, cómo deben combinarse y qué significa su combinación. Las construcciones del lenguaje se explicarán usando la notación BNF extendida usual, en la que {a} significa 0 o más aes, y [a] significa una a opcional. Los símbolos no terminales se muestran en itálica, las palabras clave (keywords) se muestran en negrita, y los otros símbolos terminales se muestran en un tipo de letra de paso fijo (typewriter), encerrada entre comillas simples. La sintaxis completa de Lua se encuentra al final de este manual. 2.1 - Convecciones léxicas Los nombres (también llamados identificadores) en Lua pueden ser cualquier tira de caracteres (string) sólo con letras, dígitos y caracteres de subrayado (underscore), no comenzando por un dígito. Esto coincide con la definición de los nombres en la mayoría de los lenguajes. (La definición de letra depende de la implementación local actual a través del sistema locale: cualquier carácter considerado alfabético en el sistema local puede ser usado en un identificador.) Los identificadores se usan para nombrar variables y campos de tablas. Las siguientes palabras clave (keywords) están reservadas y no pueden usarse como nombres: and break do else elseif end false for function if in local nil not or repeat return then true until while En Lua las letras mayúsculas y las minúsculas se consideran diferentes: and es una palabra reservada, pero And y AND son dos nombres diferentes válidos. Como convención, los nombres que comienzan por un subrayado seguido por letras en mayúsculas (como _VERSION) están reservados para uso como variables globales internas de Lua. Los siguientes strings denotan otros elementos: + - * / % ^ # == ~= <= >= < > = ( ) { } [ ] ; : , . .. ... Los strings literales pueden ser delimitados por comillas simples (apóstrofes) o dobles, y pueden contener las siguientes secuencias de escape de C: '\a' (pitido, bell) '\b' (retroceso, backspace), '\f' (salto de página, form feed), '\n' (nueva línea, newline), '\r' (retorno de carro, carriage return), '\t' (tabulador horizontal, horizontal tab), '\v' (tabulador vertical, vertical tab), '\\' (barra inversa, backslash), '\"' (comilla doble, quotation mark o double quote) y '\'' (apóstrofe, apostrophe o single quote). Además, una '\newline' (esto es, una barra inversa seguida por un salto de línea real) produce un salto de línea en el string. Un carácter en un string puede también especificarse por su valor numérico usando la secuencia de escape '\ddd', donde ddd es una secuencia de tres dígitos decimales. (Tenga presente que si la secuencia numérica de escape está seguida de un dígito debe ser expresada usando exactamente tres dígitos.) Los strings en Lua pueden

Recently converted files (publicly available):