Hoofdmenu openen

Wijzigingen

57 bytes verwijderd, 7 jaar geleden
geen bewerkingssamenvatting
| website = [http://www.lua.org/ http://www.lua.org/]
}}
 
'''Lua''' (''LOO-ah'', maan in het [[Portugees]]) is een [[Dynamische typering|dynamisch getypeerde]] [[Imperatieve programmeertaal|imperatieve]] [[scripttaal]]<ref>De taal kan ook als losstaande programmeertaal worden gebruikt.</ref> die veel in [[applicatie]]s gebruikt wordt. De scripts worden uitgevoerd op een [[virtuele machine]] met [[garbage collection]]. De taal heeft een eenvoudige [[Syntaxis (informatica)|syntaxis]] met enkele [[Primitief type|primitieve types]] (zoals [[boolean]]s, [[double]]s en [[String (informatica)|strings]]) en tabellen, in essentie [[associatieve array]]s, waarmee de bekende [[Datastructuur|datastructuren]] zoals [[array]]s, [[Lijst (informatica)|lijsten]] en [[Hashtabel|hashmaps]] geconstrueerd kunnen worden.
 
 
== Kenmerken ==
 
Lua is een [[multi-paradigmaprogrammeertaal]] waar niet allerlei taalconstructies zijn ingebouwd maar die wel mogelijk zijn met de bestaande taalconstructies. De taal kan hiermee als het ware uitgebreid worden door bestaande taalconstructies op een bepaalde wijze te gebruiken. Zo bevat Lua geen ingebouwde ondersteuning voor [[Overerving (informatica)|overerving]] maar het is wel mogelijk dit te simuleren met metatabellen. Op vergelijkbare wijze kunnen programmeurs [[naamruimte]]n en [[Klasse (informatica)|klassen]] implementeren met behulp van de tabellen in Lua. Ook is het mogelijk veel technieken uit het [[functioneel programmeren]] te gebruiken met behulp van de functies in Lua. De taal dwingt de programmeur hierdoor niet een bepaald paradigma op.
 
 
== Werking ==
 
[[Broncode|Code]] die geschreven is in Lua wordt niet direct [[Interpreter|geïnterpreteerd]] maar het wordt [[Compiler|gecompileerd]] naar [[bytecode]] die vervolgens uitgevoerd wordt door de [[virtuele machine]] van Lua. Het compileren vindt tijdens het uitvoeren van het programma plaats en het is doorgaans niet merkbaar voor de gebruiker. Het is ook mogelijk dit van tevoren te doen om het geheugengebruik en de benodigde rekentijd te beperken.
 
== Voorbeelden ==
Het [[Hello world (computerprogrammaprogramma)|Hello world]] -programma in Lua is:
 
Het [[Hello world (computerprogramma)|Hello world]] programma in Lua is:
 
<source lang="lua">
 
=== Andere applicaties ===
Enkele andere applicaties die Lua gebruiken zijn:
 
Enkele andere applicaties die Lua gebruiken:
 
* [[Adobe Photoshop Lightroom]]
* [[Celestia]]
 
== Externe links ==
* {{en}} [http://www.lua.org Lua website]
* {{en}} [http://www.lua.org/manual/5.1/ Lua 5.1 reference manual]
 
{{Appendix}}
{{Bronnen/noten/referenties|bronvermelding=<references/>}}
 
[[Categorie:Vrije programmeertaal]]