初識lua

  常常看到別人在討論redis lua,說其如何如何好用,如何如何強大。那麼lua究竟是什麼呢?linux

  接下來,咱們對lua進行一個入門級瞭解。 git

  Lua 是一種輕量小巧的腳本語言,用標準C語言編寫並以源代碼形式開放, 其設計目的是爲了嵌入應用程序中,從而爲應用程序提供靈活的擴展和定製功能。github

  Lua 是巴西里約熱內盧天主教大學(Pontifical Catholic University of Rio de Janeiro)裏的一個研究小組,由Roberto Ierusalimschy、Waldemar Celes 和 Luiz Henrique de   Figueiredo所組成並於1993年開發。redis

爲何要使用lua呢

  其設計目的是爲了嵌入應用程序中,從而爲應用程序提供靈活的擴展和定製功能。數據庫

  知乎上給出的答案更精彩,咱們來看下:macos

其一:編程

其二:windows

  由此,能夠知道lua普遍應用與遊戲鄰域,但它毫不僅限於遊戲領域。由於它的特性。數組

lua特性

  • 輕量級: 它用標準C語言編寫並以源代碼形式開放,編譯後僅僅一百餘K,能夠很方便的嵌入別的程序裏。
  • 可擴展: Lua提供了很是易於使用的擴展接口和機制:由宿主語言(一般是C或C++)提供這些功能,Lua能夠使用它們,就像是原本就內置的功能同樣。
  • 其它特性:
    • 支持面向過程(procedure-oriented)編程和函數式編程(functional programming);
    • 自動內存管理;只提供了一種通用類型的表(table),用它能夠實現數組,哈希表,集合,對象;
    • 語言內置模式匹配;閉包(closure);函數也能夠看作一個值;提供多線程(協同進程,並不是操做系統所支持的線程)支持;
    • 經過閉包和table能夠很方便地支持面向對象編程所須要的一些關鍵機制,好比數據抽象,虛函數,繼承和重載等。

lua應用場景

  • 遊戲開發
  • 獨立應用腳本
  • Web 應用腳本
  • 擴展和數據庫插件如:MySQL Proxy 和 MySQL WorkBench
  • 安全系統,如入侵檢測系統

lua環境安裝

  Linux & Mac上安裝 Lua 安裝很是簡單,只須要下載源碼包並在終端解壓編譯便可,本文使用了5.3.0版本進行安裝:安全

linux系統上安裝

curl -R -O http://www.lua.org/ftp/lua-5.3.0.tar.gz
tar zxf lua-5.3.0.tar.gz
cd lua-5.3.0
make linux test
make install

Mac OS X系統上安裝

curl -R -O http://www.lua.org/ftp/lua-5.3.0.tar.gz
tar zxf lua-5.3.0.tar.gz
cd lua-5.3.0
make macosx test
make install

window系統上安裝

  window下你能夠使用一個叫"SciTE"的IDE環境來執行lua程序,下載地址爲:

  雙擊安裝後便可在該環境下編寫 Lua 程序並運行。

  你也能夠使用 Lua 官方推薦的方法使用 LuaDist:http://luadist.org/

 

hello world

  咱們建立一個 HelloWorld.lua 文件,代碼以下:

print("Hello World!")

執行如下命令:

$ lua HelloWorld.lua

輸出結果爲:

Hello World!
 

  這就是lua的入門瞭解。具體語法和使用,包括redis內置lua解釋器會在後面學習中補充。

相關文章
相關標籤/搜索