Luau est un langage de programmation open-source créé par Roblox Corporation, les développeurs de Roblox. Lorsque Roblox a démarré en 2006, le jeu était entièrement programmé en Lua. Au fil du temps, Roblox Corporation a voulut améliorer le langage en y apportant des modifications et a créé le Luau sous licence Open Source MIT. Luau est dérivé de Lua 5.1, avec plusieurs fonctionnalités orientées développement de jeux. L’objectif était d’améliorer les performances et la qualité du code écrit pour Roblox.

Luau dispose d’un interpréteur de bytecode portable très perfectionné. Il est similaire à l’interpréteur Lua, mais est hautement optimisé pour produire un assemblage efficace lorsqu’il est compilé avec Clang et les dernières versions de MSVC. Sur certaines charges de travail, il peut égaler les performances de l’interpréteur LuaJIT qui est écrit en assembleur.

Luau prévoit éventuellement d’implémenter JIT sur certaines plates-formes, mais cela est soumis à une analyse minutieuse de la sécurité de la mémoire et ne sera probablement pas déployé pour les scripts côté client, car le risque supplémentaire impliqué dans les JIT est beaucoup plus prononcé lorsqu’il peut affecter les joueurs.

Contrairement à Lua et LuaJIT, Luau utilise un compilateur multi-passes avec une interface qui analyse la source dans un AST et un backend qui génère du bytecode à partir de celui-ci. Cela entraîne une légère pénalité en termes de temps de compilation, mais donne un code plus flexible et, surtout, facilite l’optimisation du bytecode généré.

Vous pouvez en apprendre plus sur Luau sur son site officiel : https://luau-lang.org/

Luau est disponible sur GitHub à l’adresse suivante : https://github.com/Roblox/luau

Luau utilise la syntaxe de base de Lua 5.1, de ce fait si vous savez programmer en Lua vous n’aurez aucun problème à programmer en Luau.

Si vous souhaitez apprendre à programmer des jeux vidéo en Lua, vous pouvez faire le parcours de formation Débutant de Gamecodeur en rejoignant l’école de programmation de jeux vidéo à l’adresse suivante : https://www.gamecodeur.fr/acces-premium/

Cet article a été posté dans la catégorie and tagged . Voici le permalink : .

Laisser un commentaire

Ce site utilise Akismet pour réduire les indésirables. En savoir plus sur comment les données de vos commentaires sont utilisées.