• Lua

    編輯
    本詞條由“匿名用戶” 建檔。

    目錄

    1. 1 Lua
    1. 2 歷史
    1. 3 特點

      Lua(/?lu??/LOO-?;來自葡萄牙語:lua[?lu.(w)?]意思是月亮)是一種輕量級、高級、多范式的編程語言,主要為應用程序嵌入而設計。Lua是跨平臺的,因為編譯字節碼的解釋器是用ANSIC編寫的,Lua有一個相對簡單的CAPI來嵌入到應用程序。Lua起源于1993年,是一種用于擴展軟件應用程序的語言,以滿足當時日益增長的定制化需求。它提供了大多數程序化編程語言的基本設施,但不包括更復雜或特定領域的功能;相反,它包括了擴展語言的機制,允許程序員實現這些功能。由于Lua旨在成為一種通用的可嵌入的擴展語言,Lua的設計者專注于改善其速度、可移植性、可擴展性和開發中的易用性。

      歷史

      編輯

      Lua由RobertoIerusalimschy、LuizHenriquedeFigueiredo和WaldemarCeles于1993年創建,他們是巴西里約熱內盧天主教大學計算機圖形技術小組(Tecgraf)的成員。從1977年到1992年,巴西對計算機硬件和軟件采取了強有力的貿易壁壘政策(稱為市場儲備)。這些原因導致Tecgraf從頭開始實施它所需要的基本工具。Lua/的前身是數據描述/配置語言SOL(簡單對象語言)和DEL(數據輸入語言)。它們是1992-1993年在Tecgraf獨立開發的,為兩個不同的項目增加了一些靈活性(都是巴西石油公司工程應用的互動圖形程序)。由于SOL和DEL中缺乏任何過程控制結構,Petrobras感到越來越需要為它們增加完整的編程能力。在《Lua的演變》中,該語言的作者寫道。1993年,xxx真正的競爭者是Tcl,它被明確地設計為嵌入到應用程序中。然而,Tcl有一個陌生的語法,沒有為數據描述提供良好的支持,而且只在Unix平臺上運行。我們沒有考慮LISP或Scheme,因為它們的語法并不友好。在當時統治Tecgraf的自由、自己動手的氛圍中,我們很自然地嘗試開發自己的腳本語言,........。由于該語言的許多潛在用戶并不是專業的程序員,因此該語言應該避免晦澀的語法和語義。新語言的實現應該是高度可移植的,因為Tecgraf的客戶擁有非常多樣化的計算機平臺。最后,由于我們預計其他Tecgraf產品也需要嵌入腳本語言,新語言應該遵循SOL的例子,并作為一個帶有C語言API的庫。Lua1.0的設計方式是,它的對象構造器,與目前輕巧靈活的構造器風格略有不同,它結合了SOL的數據描述語法(因此被稱為Lua:Sol在葡萄牙語中是指太陽,Lua是指月亮)。Lua的控制結構語法在很大程度上借鑒了Modula(if、while、repeat/until),但也受到CLU(多重賦值和函數調用的多重返回,作為引用參數或顯式指針的更簡單的選擇)、C++(允許局部變量只在我們需要的地方聲明的聰明想法)、SNOBOL和AWK(關聯陣列)的影響。)

      Lua語言交換式編程

      在Dr.Dobb'sJournal上發表的一篇文章中,Lua的創造者還說,LISP和Scheme的單一的、無處不在的數據結構機制(列表)對他們決定發布作為Lua的主要數據結構有很大影響。隨著時間的推移,Lua的語義越來越受到Scheme的影響,特別是隨著匿名函數和全詞范圍的引入。許多功能在Lua的新版本中被添加。5.0版之前的Lua版本是在類似于BSD許可證的許可證下發布的。從5.0版本開始,Lua是在MIT許可下發布的。兩者都是許可性的自由軟件許可證,而且幾乎是相同的。

      特點

      編輯

      Lua編程Lua通常被描述為一種多范式的語言,它提供了一小套通用的功能,可以被擴展以適應不同的問題類型。Lua不包含對繼承的明確支持,但允許用元數據庫來實現它。同樣,Lua允許程序員使用它的單表來實現命名空間、類和其他相關的功能;一流的函數允許使用函數式編程中的許多技術;完全的詞法范圍允許細粒度的信息隱藏以執行最小化原則。

      內容由匿名用戶提供,本內容不代表www.gelinmeiz.com立場,內容投訴舉報請聯系www.gelinmeiz.com客服。如若轉載,請注明出處:http://www.gelinmeiz.com/189973/

      (5)
      詞條目錄
      1. Lua
      2. 歷史
      3. 特點

      輕觸這里

      關閉目錄

      目錄
      91麻精品国产91久久久久