Lua (bahasa pemrograman): Perbedaan antara revisi

Konten dihapus Konten ditambahkan
v5.4.2
Dewinta88 (bicara | kontrib)
Fitur saranan suntingan: 3 pranala ditambahkan.
 
(9 revisi perantara oleh 6 pengguna tidak ditampilkan)
Baris 1:
{{Infobox programming language
| name = Lua
| logo = [[Berkas:Lua-Logo.svg|128px]]
| paradigm = [[paradigma pemrograman#Multiparadigma|Multiparadigma]]: [[bahasa skrip|skrip]], [[pemrograman imperatif|imperatif]] ([[pemrograman prosedural|prosedural]], [[pemrograman berbasis prototipe|berbasis prototipe]] [[pemrograman berorientasi objek|berorientasi objek]]), [[pemrograman fungsional|fungsional]]
|paradigm=[[Multi-paradigm]]: [[scripting language|scripting]], [[imperative programming|imperative]] ([[procedural programming|procedural]], [[prototype-based programming|prototype-based]] [[object-oriented programming|object-oriented]]), [[functional programming|functional]]
| year = {{Start date and age|df= yes|1993}}
| designer = [[Roberto Ierusalimschy]]<br /> Waldemar Celes<br /> Luiz Henrique de Figueiredo
| developer = =
| latest_release_version = 5.4.2<ref>{{Cite webwikidata|url=https://github.com/lua/lua/releasesproperty|Releases lua/luareference|via=GitHubedit|access-date=21 Februari 2021Q207316|P348}}</ref>
| latest_release_date = {{start date|{{wikidata|qualifier| andQ207316 age|2020|12P348|07P577}}}}
| latest_preview_version =
| latest preview date = =
| typing = [[DynamicPengetikan typingdinamis|dynamicDinamis]], [[TypeTipe systemsistem#StrongPengetikan andkuat weakdan typinglemah|strongkuat]], [[Duck typing|duck]]
| implementations ='''Lua''', [http://luajitwww.lua.org/download.html LuaJITLua], [http://code.google.com/p/llvm-lua/ LLVM-Lua[LuaJIT]], [http://codeeliasdaler.googlegithub.comio/p/lua-alchemyluavela/ LuaLuaVela], Alchemy]
[https://www.moonsharp.org/ MoonSharp], [//luvit.io Luvit], [//www.luart.org LuaRT], [https://luau-lang.org LuaU]
| dialects = [http://metalua.luaforge.net/ Metalua], [http://idle.thomaslauer.com/ Idle], [http://www.nongnu.org/gsl-shell/ GSL Shell], [https://luau-lang.org/ Luau]
| influenced_by = [[C++]], [[CLU (programmingbahasa languagepemrograman)|CLU]], [[Modula-2|Modula]], [[Scheme (programmingbahasa languagepemrograman)|Scheme]], [[SNOBOL]]
| influenced = [[Io (programmingbahasa languagepemrograman)|Io]]<!--2002-->, [[GameMonkey Script|GameMonkey]]<!--2003-->, [[Squirrel (programmingbahasa languagepemrograman)|Squirrel]]<!--2003-->, [[Falcon (programmingbahasa languagepemrograman)|Falcon]]<!--2003-->, [[MiniD]]<!--2006-->
| operating_system = [[Cross-platform]]
| license operating_system = [[MIT LicenseMultiplatform]]
| license = [[Lisensi MIT]]
| website = {{URL|http://www.lua.org/}}
| File extensions = <code>.lua</code>
| wikibooks =
| website = {{URL|http://www.lua.org/}}
| wikibooks = =
}}
'''Lua''' ({{IPAc-en|ˈ|l|uː|ə}} {{Respell|LOO|ə}}; dari {{lang-pt|[[wikt:en:lua#Portugis|lua]]}} yang berarti "[[bulan]]") merupakan [[bahasa pemrograman]] ringkas yang dirancang sebagai [[bahasa pemrograman dinamis]] berbasis [[bahasa skrip|skrip]] dengan semantik yang dapat dikembangkan atau ditambahkan. Sebagai bahasa skrip, Lua memiliki [[API]] dalam bahasa [[C (bahasa pemrograman)|C]] yang relatif lebih sederhana dibandingkan bahasa skrip lainnya.
 
== Sejarah ==
Lua ditulis pertama kali oleh Roberto Ierusalimschy, Luiz Henrique de Figueiredo, dan Waldemar Celes yang merupakan anggota '''Computer Graphics Technology Group''' ('''Tecgraf''') pada universitas '''Pontifical Catholic''', [[Rio de Janeiro]], [[Brasil]], pada tahun 1993.
 
Sebelumnya, sejak tahun 1977 hingga tahun 1992, pemerintah Brazil menerapkan kebijakan perdagangan yang membatasi perdagangan termasuk pertukaran baik [[perangkat keras]] ataupun [[Perangkat lunak|perangkat lunak komputer]]. Dalam atmosfer yang demikian, banyak klien '''Tecgraf''' tidak mampu, baik secara politik maupun finansial, untuk membeli perangkat lunak dari luar. Alasan itulah yang mendorong Tecgraf untuk mengimplementaskan perangkat utilitas dasar yang dibutuhkan.<ref name=hopl2007>{{Cite book|last1 = Ierusalimschy|first1 = R.|last2 = Figueiredo|first2 = L. H.|last3 = Celes|first3 = W.|contribution = The evolution of Lua|contribution-url = http://www.lua.org/doc/hopl.pdf|doi = 10.1145/1238844.1238846|title = Proc. of ACM HOPL III|url = http://www.acm.org/sigs/sigplan/hopl|year = 2007|pages = 2–1–2–26|isbn = 978-1-59593-766-X}}</ref>
 
Secara historis, bahasa pemrograman Lua berawal dari bahasa pemrograman yang digunakan untuk pendeskripsian serta entri data, serta pengkonfigurasian suatu sistem yang masing-masing dikembangkan secara terpisah oleh tecgraf dari tahun 1992 hingga tahun 1993.<ref name=luahist2001>{{cite web|url=http://www.lua.org/history.html|title=The evolution of an extension language: a history of Lua|accessdate=2008-12-18|year=2001}}</ref> Tujuan pengembangan tersebut awalnya merupakan usaha untuk menambahkan fitur serta meningkatkan fleksibilitas atas dua proyek pengembangan perangkat lunak yang sedang mereka kerjakan saat itu. Namun terdapat kekurangan atas alur kontrol atas bahasa tersebut sehingga menumbuhkan ide untuk mengembangkannya lebih lanjut dengan fitur-fitur dasar yang lengkap sebagai sebuah bahasa pemrograman.
Baris 71 ⟶ 73:
== Bacaan lanjutan ==
{{refbegin}}
* {{en}} {{Cite book|last1 = Ierusalimschy|first1 = R.|last2 = Figueiredo|first2 = L. H.|last3 = Celes|first3 = W.|title = Lua 5.1 Reference Manual|year = 2006|publisher = Lua.org|isbn = 85-903798-3-3|url = http://www.lua.org/manual/5.1/ }}
* {{en}} {{Cite book|last1 = Ierusalimschy|first1 = R.|title = Programming in Lua <!-- Blue PiL -->|edition = 2nd|year = 2006|publisher = Lua.org|isbn = 85-903798-2-5|url = http://www.inf.puc-rio.br/~roberto/pil2/ }} (1st ed. is available [http://www.lua.org/pil/ online])
* {{en}} {{Cite book|editor-last = Figueiredo|editor-first = L. H.|editor2-last = Celes|editor2-first = W.|editor3-last = Ierusalimschy|editor3-first = R.|title = Lua Programming Gems|publisher = Lua.org|year = 2008|isbn = 978-85-903798-4-3|url = http://www.lua.org/gems/ }}
* {{en}} {{Cite book|last1 = Gutschmidt|first1 = T.|title = Game Programming with Python, Lua, and Ruby|year = 2003|publisher = Course Technology PTR|isbn = 1592000770 }}
* {{en}} {{Cite book|last1 = Schuytema|first1 = P.|last2 = Manyen|first2 = M.|title = Game Development with Lua|url = https://archive.org/details/gamedevelopmentw0000schu|year = 2005|publisher = Charles River Media|isbn = 1-58450-404-8 }}
* {{en}} {{Cite book|last1 = Jung|first1 = K.|last2 = Brown|first2 = A.|title = Beginning Lua Programming|year = 2007|publisher = Wrox|isbn = 0-470-06917-1|url = http://www.wrox.com/WileyCDA/WroxTitle/productCd-0470069171.html|access-date = 2011-07-07|archive-date = 2013-10-22|archive-url = https://web.archive.org/web/20131022235736/http://www.wrox.com/WileyCDA/WroxTitle/productCd-0470069171.html|dead-url = yes}}
* {{en}} {{cite journal|last=Quigley|first=Joseph|date=1 June 2007|title=A Look at Lua|journal=Linux Journal|url=http://www.linuxjournal.com/article/9605}}
* {{en}} {{cite web|url=http://www.ibm.com/developerworks/linux/library/l-lua.html|title=Embeddable scripting with Lua|last=Streicher|first=Martin|date=28 April 2006|work=developerWorks|publisher=[[IBM]]}}
* {{en}} {{cite news|url=http://www.computerworld.com.au/article/260022/a-z_programming_languages_lua/|title=The A-Z of Programming Languages: Lua|last=Hamilton|first=Naomi|date=11 September 2008|work=Computerworld|publisher=IDG}}{{Pranala mati|date=Februari 2021 |bot=InternetArchiveBot |fix-attempted=yes }} – Interview with Roberto Ierusalimschy
* {{en}} {{cite journal|url=http://queue.acm.org/detail.cfm?id=1983083|title=Passing a Language through the Eye of a Needle|last1=Ierusalimschy|first1=Roberto|last2=de Figueiredo|first2=Luiz Henrique |last3=Celes|first3=Waldemar|date=12 May 2011|journal=[[ACM Queue]]|publisher=[[ACM]]}} – How the embeddability of Lua impacted its design
{{refend}}
 
Baris 88 ⟶ 90:
* {{en}} [http://lua-users.org lua-users.org] – Community website for and by users (and authors) of Lua
* {{en}} [http://www.lua.org/papers.html Lua papers and theses]
* {{en}} {{cite web|url=http://www.onlamp.com/pub/a/onlamp/2006/02/16/introducing-lua.html|title=Introducing Lua|last=Fieldhouse|first=Keith|date=16 February 2006|work=ONLamp.com|publisher=O'Reilly Media|access-date=2011-07-07|archive-date=2006-03-12|archive-url=https://web.archive.org/web/20060312124121/http://www.onlamp.com/pub/a/onlamp/2006/02/16/introducing-lua.html|dead-url=yes}}
* {{en}} [http://www.eluaproject.net/en_overview.html eLua – Embedded Lua] {{Webarchive|url=https://web.archive.org/web/20110723114641/http://www.eluaproject.net/en_overview.html |date=2011-07-23 }}
* {{en}} [http://luaforge.net Projects in Lua] {{Webarchive|url=https://web.archive.org/web/20070202005230/http://luaforge.net/ |date=2007-02-02 }}
 
{{Bahasa pemrograman}}
 
{{Authority control}}
 
{{DEFAULTSORT:Lua}}