martial69320 Posted July 23, 2011 Share Posted July 23, 2011 Morceaux de codes Chaque morceau(pièce) de code que Lua exécute, comme un fichier ou une ligne seule(simple) dans le mode interactif, est un morceau. Plus spécifiquement, un morceau est simplement un ordre de déclarations. Un point-virgule peut facultativement suivre n'importe quelle déclaration. D'habitude, j'utilise des points-virgules seulement pour séparer deux ou plus déclarations écrites à la même ligne, mais ceci est juste une convention. Les sauts de ligne ne jouent aucun rôle dans la syntaxe de Lua; par exemple, les quatre morceaux suivants sont tout valables et équivalents : a = 1 b = a*2 a = 1; b = a*2; a = 1 ; b = a*2 a = 1 b = a*2 -- Laid, mais valable Un morceau peut être aussi simple qu'une déclaration seule, comme dans l'exemple "Hello world", ou il peut être composé d'un mélange de déclarations et des définitions de fonction (qui est des attributions en réalité, comme nous verrons plus tard), comme l'exemple de factorielle. Un morceau peut être aussi grand que vous souhaitez. Parce que Lua est utilisé aussi comme une langue de description de données, les morceaux avec plusieurs méga-octets ne sont pas rares. L'interprète Lua n'a aucun problème du tout avec de grandes tailles. Au lieu d'écrire votre programme dans un fichier, vous pouvez exécuter l'interprète autonome dans le mode interactif. Si vous appelez Lua sans un argument, vous deviendrez son prompts : Lua 5.0 Copyright (C) 1994-2003 Tecgraf, PUC-Rio > Ensuite, chaque commande que vous tapez (comme l'exemple "Hello world") exécute immédiatement après que vous appuyez . Pour quitter le mode interactif et l'interprète, tape juste la fin-de-fichier (ctrl-D à UNIX, ctrl-Z dans le DOS/FENÊTRES), ou appelle la fonction de sortie, de la bibliothèque de Système D'exploitation (vous devez taper os.exit () < enter >). Dans le mode interactif, Lua interprète d'habitude chaque ligne que vous tapez comme un morceau complet. Cependant, s'il détecte que la ligne ne peut pas former un morceau complet, il attend plus de saisie, jusqu'à ce qu'il ait un morceau complet. Quand Lua attend une suite de ligne, il montre un différent prompt (typiquement > >). Donc, vous pouvez entrer dans une définition de multi-ligne, comme la fonction de factorielle, directement dans le mode interactif. Parfois, cependant, il est plus commode de mettre de telles définitions dans un fichier et appeler ensuite le Lua pour exécuter le fichier. Vous pouvez exécuter un ordre de morceaux en les donnant tous comme des arguments à l'interprète autonome, avec l'option-l. Par exemple, si vous avez un fichier un avec une déclaration seule x=1 et un autre fichier b avec la déclaration print (x), la ligne de commande prompt> lua -la -lb Exécutera le morceau dans a, alors celui dans b, qui imprimera 1 attendu. (L'option-l appelle en réalité exigent, qui cherche les fichiers dans un chemin spécifique. Ainsi, l'exemple précédent ne marchera pas si ce chemin n'inclut pas le répertoire actuel. Nous parlerons de la fonction s'exigeant plus en détail dans la Section La Fonction s'exigeant) Vous pouvez utiliser l'option-i pour charger Lua de commencer une session interactive après la direction des morceaux donnés. Une ligne de commande comme prompt> lua -i -la -lb Exécutera le morceau dans a, alors celui dans b et vous incitera ensuite pour l'interaction. Ceci est particulièrement utile pour le débogage et le test manuel. À la fin de ce chapitre nous verrons d'autres options pour l'interprète autonome. Une autre façon de lier des morceaux est avec la fonction de dofile, qui exécute immédiatement un fichier. Par exemple, vous pouvez avoir un fichier lib1.lua : -- file 'lib1.lua' function norm (x, y) local n2 = x^2 + y^2 return math.sqrt(n2) end function twice (x) return 2*x end Alors, dans le mode interactif, vous pouvez taper > dofile("lib1.lua") -- load your library > n = norm(3.4, 1.0) > print(twice(n)) --> 7.0880180586677 La fonction de dofile est utile aussi quand vous évaluez un morceau de code. Vous pouvez travailler avec deux fenêtres : Un d'entre eux est un éditeur de texte avec votre programme (dans un fichier prog.lua) et l'autre est une console exécutant Lua dans le mode interactif. Après l'économie d'une modification que vous faites à votre programme, vous exécutez dofile ("prog.lua") dans la console de Lua pour charger le nouveau code; alors vous pouvez exercer le nouveau code, appelant ses fonctions et imprimant les résultats. Traduction du Book officiel en ligne sur le lua. Link to comment
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now