Lua
閱讀設定
編程範式 | 多重編程範式:腳本、指令式(程序式、基於原型、物件導向)、函數 |
---|---|
設計者 | Roberto Ierusalimschy Waldemar Celes Luiz Henrique de Figueiredo |
第一次出現 | 1993年 |
穩定版本 | 5.4.7[1]
/ 2024年6月25號年 |
類型系統 | 動態、強、鴨仔 |
實作語言 | ANSI C |
操作系統 | Cross-platform |
軟件授權 | MIT協議 |
副檔名 | .lua |
網站 | www |
Major 實作版本 | |
Lua, LuaJIT, LuaVela Luvit | |
衍生變體 | |
Metalua, Idle, GSL Shell, Luau | |
啟發語言 | |
C++、CLU、Modula、Scheme、SNOBOL | |
影響語言 | |
GameMonkey、Io、JavaScript、Julia、MiniD、Red、Ring[2]、Ruby、Squirrel、MoonScript、C-- |
Lua(來自葡文:lua,解月亮)係隻輕量高階多重編程範式程式語言,設計來嵌入應用程式。[3]由於Lua編譯出來嘅位元組碼嘅直譯器係用ANSI C寫,Lua係隻跨平台嘅語言。[4]Lua亦有比較簡單嘅C API嚟嵌入應用程式度。[5]
可以編譯做Lua嘅語言
[編輯]- Moonscript,係對動態、空白敏感嘅腳本語言,佢受到CoffeeScript嘅啟發,編譯做Lua[6][7][8]。
- Haxe,支持編譯做Lua目標,支持Lua 5.1-5.3仲有LuaJIT 2.0同埋2.1。
- Fennel,目標為Lua的Lisp方言[9]。
- Urn,建造喺Lua之上嘅Lisp方言[10]。
- Amulet,類似ML嘅函數式語言,佢嘅編譯器可以輸出Lua文件[11]。
語法
[編輯]經典嘅「Hello World」程式可以噉寫:[12]
print("Hello World!")
噉寫都得:
print 'Hello World!'
參考資料
[編輯]- ↑ "[ANN] Lua 5.4.7 now available". 2024年6月25號. 喺2024年6月27號搵到.
- ↑ Ring Team (5 December 2017). "The Ring programming language and other languages". ring-lang.net. ring-lang. 原著喺2018年12月25號歸檔. 喺2021年3月11號搵到.
- ↑ Ierusalimschy, Roberto; de Figueiredo, Luiz Henrique; Filho, Waldemar Celes (June 1996). "Lua—An Extensible Extension Language". Software: Practice and Experience. 26 (6): 635–652. doi:10.1002/(SICI)1097-024X(199606)26:6<635::AID-SPE26>3.0.CO;2-P. 喺24 October 2015搵到.
- ↑ "About Lua". Lua.org. 喺2011-08-11搵到.
- ↑ Yuri Takhteyev (21 April 2013). "From Brazil to Wikipedia". Foreign Affairs. 喺25 April 2013搵到.
- ↑ "Language Guide - MoonScript 0.5.0". moonscript.org. 原先內容歸檔喺2020-11-19. 喺2020-09-25搵到.
- ↑ leaf (2020-09-23), leafo/moonscript, 原先內容歸檔喺2020-12-02, 喺2020-09-25搵到
- ↑ Andre Alves Garzia. "Languages that compile to Lua". AndreGarzia.com. 原先內容歸檔喺2020-12-18. 喺September 25, 2020搵到.
- ↑ "fennel-lang.org".
- ↑ "Urn: A Lisp implementation for Lua | Urn". urn-lang.com. 喺2021-01-12搵到.
- ↑ "Amulet". amulet.work. 喺2021-01-12搵到.
- ↑ "Programming in Lua : 1".