¿Qué es Luau?
Parte de la sección Introducción a Luau del Journey de Lua de Coddy. Lección 1 de 80.
Luau es un lenguaje de programación creado en Roblox que amplía Lua, que ya conoces, al añadir tipos estáticos graduales. Piensa en él como Lua con una capa adicional de seguridad y herramientas. Impulsa millones de experiencias de Roblox y es de código abierto desde 2021.
La idea clave es que Luau es un superconjunto de Lua 5.1. Cualquier código válido de Lua 5.1 también es código válido de Luau: puedes tomar un script que escribiste en las secciones anteriores y ejecutarlo como Luau, sin modificarlo.
Lo que Luau añade es anotaciones de tipo. Una anotación declara qué tipo de datos debe contener una variable: una cadena, un número, un booleano o una tabla, para que los errores puedan detectarse antes incluso de que se ejecute el código:
-- Lua (también válido en Luau)
local playerName = "Rio"
-- Luau con una anotación de tipo
local playerName: string = "Rio"La palabra gradual es importante: las anotaciones son opcionales. Puedes añadir tipos a una variable, una función o un archivo entero: el código sin tipos al estilo Lua sigue funcionando mientras añades tipos a tu propio ritmo.
A cambio, obtienes mejores herramientas en el editor, código más legible y protección contra el tipo de errores que Lua simple solo revela mientras se ejecuta el programa.
Desafío
FácilConvierte esta variable de Lua en una variable tipada de Luau.
- En la línea
local message = "Hello World", añade: stringjusto después demessage. - Deja la línea
print(message)tal como está.
Presiona Ejecutar código: el resultado muestra Hello World.
Pruébalo tú mismo
-- Lua puro: message aún no tiene tipo
local message = "Hello World"
print(message)
Todas las lecciones de Introducción a Luau
1Primeros pasos con Luau
¿Qué es Luau?¿Por qué usar Luau?Tu primer código en LuauComprobación de tipos y modos de errorRecapitulacion: Introducción a Luau4Trabajar con funciones
Tipado de parámetros y valores de retornoTipado de funciones anónimasFunciones que no devuelven nadaParámetros opcionalesValores predeterminados de parámetrosValores predeterminados para booleanosFunciones variádicasDefinir tipos de funcionesRepaso: funciones tipadas7Proyecto: Gestor de tareas tipado
Proyecto: La estructura de una tareaFunción para añadir una tarea2Tipos fundamentales
Número, cadena y booleanoEl tipo 'any': una salida de emergenciaEl tipo 'unknown'Tipos nulos y opcionalesLa inferencia de tipos en acciónAnotaciones de tipo explícitasRepaso: práctica de tipos fundamentales5Alias, Uniones e Intersecciones
Alias de tipos para primitivosTipos de uniónTrabajando con tipos de uniónTipos literalesTipos de intersecciónCombinando alias de tiposResumen: Combinaciones avanzadas de tipos3Tablas tipadas: arrays y mapas
Arrays tipadosAgregar y leer elementos¿Qué es un tipo mapa?Declarar y acceder a mapasRecorrer tablasTablas de formas mixtasLeer una cuadrículaConstruir una cuadrículatable.unpackRepaso: arrays y mapasPractica por tu cuenta: Compilador de Luau online