Lua - Syntaxe de base
Commençons à créer notre premier programme Lua!
Premier programme Lua
Programmation en mode interactif
Lua fournit un mode appelé mode interactif. Dans ce mode, vous pouvez taper les instructions les unes après les autres et obtenir des résultats instantanés. Cela peut être appelé dans le shell en utilisant la commande lua -i ou simplement la commande lua. Une fois que vous avez saisi ceci, appuyez sur Entrée et le mode interactif démarrera comme indiqué ci-dessous.
$ lua -i
$ Lua 5.1.4 Copyright (C) 1994-2008 Lua.org, PUC-Rio
quit to end; cd, dir and edit also available
Vous pouvez imprimer quelque chose en utilisant l'instruction suivante -
print("test")
Une fois que vous appuyez sur Entrée, vous obtiendrez la sortie suivante -
test
Programmation du mode par défaut
L'appel de l'interpréteur avec un paramètre de nom de fichier Lua démarre l'exécution du fichier et continue jusqu'à ce que le script soit terminé. Lorsque le script est terminé, l'interpréteur n'est plus actif.
Écrivons un programme Lua simple. Tous les fichiers Lua auront l'extension .lua. Mettez donc le code source suivant dans un fichier test.lua.
print("test")
En supposant que l'environnement lua est correctement configuré, exécutons le programme en utilisant le code suivant -
$ lua test.lua
Nous obtiendrons la sortie suivante -
test
Essayons une autre façon d'exécuter un programme Lua. Voici le fichier test.lua modifié -
#!/usr/local/bin/lua
print("test")
Ici, nous avons supposé que l'interpréteur Lua était disponible dans votre répertoire / usr / local / bin. La première ligne est ignorée par l'interpréteur, si elle commence par le signe #. Maintenant, essayez d'exécuter ce programme comme suit -
$ chmod a+rx test.lua
$./test.lua
Nous obtiendrons la sortie suivante.
test
Voyons maintenant la structure de base du programme Lua, afin qu'il vous soit facile de comprendre les éléments de base du langage de programmation Lua.
Jetons à Lua
Un programme Lua se compose de divers jetons et un jeton est soit un mot-clé, un identificateur, une constante, une chaîne littérale ou un symbole. Par exemple, l'instruction Lua suivante se compose de trois jetons -
io.write("Hello world, from ",_VERSION,"!\n")
Les jetons individuels sont -
io.write
(
"Hello world, from ",_VERSION,"!\n"
)
commentaires
Les commentaires sont comme un texte d'aide dans votre programme Lua et ils sont ignorés par l'interpréteur. Ils commencent par - [[et se terminent par les caractères -]] comme indiqué ci-dessous -
--[[ my first program in Lua --]]
Identifiants
Un identifiant Lua est un nom utilisé pour identifier une variable, une fonction ou tout autre élément défini par l'utilisateur. Un identificateur commence par une lettre «A à Z» ou «a à z» ou un trait de soulignement «_» suivi de zéro ou plusieurs lettres, traits de soulignement et chiffres (0 à 9).
Lua n'autorise pas les caractères de ponctuation tels que @, $ et% dans les identifiants. Lua est uncase sensitivelangage de programmation. Ainsi, la main - d’œuvre et la main - d’œuvre sont deux identificateurs différents à Lua. Voici quelques exemples d'identifiants acceptables -
mohd zara abc move_name a_123
myname50 _temp j a23b9 retVal
Mots clés
La liste suivante montre quelques-uns des mots réservés en Lua. Ces mots réservés ne peuvent pas être utilisés comme constantes ou variables ou tout autre nom d'identifiant.
et | Pause | faire | autre |
sinon si | fin | faux | pour |
fonction | si | dans | local |
néant | ne pas | ou | répéter |
revenir | puis | vrai | jusqu'à |
tandis que |
Espace blanc à Lua
Une ligne ne contenant que des espaces, éventuellement avec un commentaire, est connue comme une ligne vierge, et un interpréteur Lua l'ignore totalement.
L'espace blanc est le terme utilisé dans Lua pour décrire les espaces, les tabulations, les caractères de nouvelle ligne et les commentaires. Les espaces séparent une partie d'une instruction d'une autre et permettent à l'interpréteur d'identifier où se termine un élément d'une instruction, comme int, et où commence l'élément suivant. Par conséquent, dans la déclaration suivante -
local age
Il doit y avoir au moins un caractère d'espacement (généralement un espace) entre local et age pour que l'interprète puisse les distinguer. D'autre part, dans la déclaration suivante -
fruit = apples + oranges --get the total fruit
Aucun espace blanc n'est nécessaire entre les fruits et =, ou entre = et les pommes, bien que vous soyez libre d'en inclure si vous le souhaitez à des fins de lisibilité.