Outils pour utilisateurs

Outils du site


nsi:langages:lua:hello_world

Hello World

Qu'est-ce que Lua ?

Lua est un langage de script libre et impératif (se présente comme une suite d'instruction modifiant l'état de variables) créé en 1993. Développé par Luiz Henrique de Figueiredo, Roberto Ierusalimschy et Waldemar Celes, trois universitaires Brésiliens.

Lua est interprété. L'interpréteur est écrit en C ce qui permet de le compiler sur quasiment n'importe quel système. De plus, lua est très léger. On peut donc faire fonctionner Lua sur n'importe quel support y compris des systèmes très simples.

Lua est très apprécié pour les applications embarquées et les jeux vidéo.

Quelques exemples d'utilisation : World of Warcraft, Grand Theft Auto, routeurs Cisco, Apache et Nginx (serveurs web)

La syntaxe de Lua est simple et proche de Python ou Javascript. Il est donc rapide à maîtriser. Mais Lua n'est pas fait pour fonctionner seul. Il sert surtout à fournir des scripts dans des contextes bien déterminés. Par exemple, si on développe un addon petit module pour améliorer l'interface de jeu dans World of Warcraft (wow), on ne programme pas à partir de rien. Wow fournit des outils, des variables, des méthodes, des objets que notre script lia devra manipuler. C'est de connaître l'environnement du jeu qui prendra du temps. En guise d'exemple : Notice pour Lua et Wow.

Cette situation est celle de Javascript avec les pages web. Il faut savoir comment fonctionne une page web et comment accéder à ses éléments pour faire quelque chose d'utile avec Javascript.

Comparé à Python

On verra que Lua ressemble beaucoup à Python dans sa syntaxe. C'est aussi un langage interprété, faiblement typé. Mais on verra aussi que Lua est moins souple que Python, qu'il est toujours un peu plus contraignant, qu'il a des éléments en moins...

C'est que Lua est surtout fait pour être très léger. Python a une quantité invraisemblable de bibliothèques qui font à peu près tout, mais cela un coût concernant l'espace occupé sur le disque.

Environnement

Pour Windows, vous pouvez télécharger LuaForWindows.

Une fois lua installé, vous pourrez en invite de commande entrer en mode console en tapant lua. Comme en Python, vous pouvez entrer des commandes lua directement dans la console. Vous pouvez sortir de la console en tapant CTRL+C

Attention avec la console, c'est un peu différent de Python :

2 + 3 -- en console, ce code est inachevé et fait une erreur
= 2 + 3 -- en console, fait le calcul
        -- et affiche le résultat.

Si on veut faire des calculs directement en console, il faut donc penser à placer le =.

La commande lua fichier.lua permet d'exécuter le script contenu dans le fichier fichier.lua.

Premier programme

Avant de commencer à parler du langage, on veille à pouvoir faire fonctionner un programme très élémentaire, c'est le classique Hello world.

--[[ fichier helloworld.lua --]]
print('Hello World !')

Vous noterez que c'est identique à Python.

Il suffit, en invite de commande, depuis le dossier contenant le fichier, d'entrer lua helloworld.lua pour exécuter ce script.

nsi/langages/lua/hello_world.txt · Dernière modification : de goupillwiki