Wikipédia:Lua
Lua est un langage de programmation disponible sur la Wikipédia francophone depuis le 18 février 2013, via l'extension MediaWiki Scribunto. Le script Lua peut maintenant être intégré dans des modèles wiki en employant la fonctionnalité {{#invoke:}}
de l'extension Scribunto.
Les codes sources en Lua sont enregistrés dans des pages appelées « modules » (par exemple Module:Hello) alors invoquées (par #invoke
) à partir d'un modèle (par exemple la page Module:Hello utilise le code {{#invoke:hello|helloworld}}
pour afficher le texte « Hello World! Welcome to Lua! »).
À propos de Lua
[modifier le code]Lua est un langage de script qui permet d'analyser des données, calculer des expressions, et formater des résultats en utilisant des fonctions ou des programmes orientés objet. Bien que certains scripts puissent rester simples, pour faciliter la compréhension, Lua permet des structures complexes avec des tables, des fonctions dynamiques, des tableaux associatifs (dictionnaires) où les sous-programmes indexés peuvent être des mots ou des nombres. Lua permet la récursivité et les fonctions imbriquées et les coroutines pour des multitâches coopératives. Il faut donc veiller à éviter une complexité excessive afin que d'autres utilisateurs puissent maintenir un module Lua. Voici ci-dessous un exemple de code source Lua pour la fonction factorielle :
function factorielle(n)
if n == 0 then
return 1 -- on renvoie la valeur 1 quand le paramètre vaut 0
else
return n * factorielle(n - 1)
end
end
for index = 1,5 do
print(index, "n! = ", factorielle(index))
end
Un échantillon de Lua est mis en valeur par les balises <syntaxhighlight lang="lua">
et </syntaxhighlight>
placées autour du code source. Pour des exemples plus complexes, voir l’article consacré au langage Lua.
Historique sur Wikipédia
[modifier le code]Après que le projet est resté plusieurs années en phase de discussion, le langage Lua a été implémenté en 2012 pour l'essayer sur test2.wikipedia.org, en invitant tous les utilisateurs à l'expérimenter en développant leurs modules Lua. Une page centrale a été développée sur meta : meta.wikimedia.org/wiki/Lua.
Voir aussi
[modifier le code]- Projet:Scribunto
- Aide:Modèle
- mw:Lua : index sur mediawiki.org
- Bibliothèques Scribunto, contient, entre autre, l'interface entre MediaWiki et Lua (tous les trucs du genre mw.* comme mw.title)
- Initiation au Lua avec Scribunto
- Utilisations actuelles sur les Wikipédia de m:Lua deployments
-
- fr:Special:PrefixIndex/Module: : modification récentes des modules Lua en utilisant fr:Special:PrefixIndex
- en:Special:PrefixIndex/Module: : modification récentes des modules Lua en utilisant en:Special:PrefixIndex
- hu:Special:PrefixIndex/Module: : modification récentes des modules Lua en utilisant hu:Special:PrefixIndex