說明:如果您有任何疑問或想咨詢其他業務請撥打電話 400 685 0732
全網監測海量數據按需發布監測預警
實時把握輿情動態精準追溯信息源頭
lua的優點是夠小夠簡潔。但缺點也就是這五個字。對我來說,沒有內建utf-8支持的語言在我的工作環境中非常不便。雖然可以自己寫庫,但引入了額外的工作。另一個問題是它的c接口風格。相對于python和perl使用的接口,lua的接口風格和匯編更接近。開始寫起來時多少有些別扭。好在時間長了就慢慢習慣了。
lua語言——lua語言特性是什么
只有一種復合數據結構table,實際上dict和array是應該分開的,用lua做過實際項目,應該能明白這是種不小的困擾沒有continue,白白增加了一層循環,增加了縮進層次,費電且看起來不方便只有一種數字類型(double),這不僅僅有性能問題,語義也不對不支持異常處理,默認的方式對編程不友好,不管如何強調保持語言的精簡,也不應該不支持異常處理不支持decorator,這是非常重要的語法糖先寫這么多,另外談談對上面一些朋友的看法的看法:沒有多核(線程)支持,這個問題基本上不成立,多線程支持不見得非得通過語言提供,尤其是對lua這種以嵌入為基本目標的語言,lua要保持純ansic實現,就不能支持多線程,因為多線程不在c標準中。這里面值得討論的是如何在lua中提供多線程支持,第一種是在宿主程序中提供,第二種是作為庫提供,具體的問題談起來比較復雜,不過,如果你需要一個和本地線程n-n的,能好好的按照你的預期工作的平凡的多線程系統,參考《lua程序設計》第二版,某章就用pthread實現了這么一個東西,你只需照抄代碼就可以取得。如果使用luajit,可以用luajit/ffi對luajit編程,可以實現一個沒有外部依賴的多線程系統。c/api難用,至少lua的c/api和python的比屬于非常非常好用的,可以說lua是大體上最容易編程的解釋器/虛擬。
lua是什么編程語言
lua是一個小巧的腳本語言。作者是巴西人。該語言的設計目的是為了嵌入應用程序中,從而為應用程序提供靈活的擴展和定制功能。它的主頁是www.lua.org。
lua最著名的應用是在暴雪公司的網絡游戲wow中。
lua腳本可以很容易的被c/c++代碼調用,也可以反過來調用c/c++的函數,這使得lua在應用程序中可以被廣泛應用。不僅僅作為擴展腳本,也可以作為普通的配置文件,代替xml,ini等文件格式,并且更容易理解和維護。
lua由標準c編寫而成,代碼簡潔優美,幾乎在所有操作系統和平臺上都可以編譯,運行。
一個完整的lua解釋器不過200k,在目前所有腳本引擎中,lua的速度是最快的。這一切都決定了lua是作為嵌入式腳本的最佳選擇。
lua有一個同時進行的jit項目,提供在特定平臺上的即時編譯功能,這將給lua帶來更加優秀的性能。請訪問http://luajit.org/來了解這個項目。
其它特性lua還具有其它一些特性:同時支持面向過程編程和面向對象編程;自動內存管理;提供一系列數據結構,包括數組、鏈表、集合、字典、散列表等;語言內置正則表達式匹配;閉包(closure);函數也可以看做一個值;提供多線程支持;等等。如果大家還想了解更多與之有關的信息,歡迎關注我們文軍營銷的官網。
推薦閱讀
說明:如果您有任何疑問或想咨詢其他業務請撥打電話 400 685 0732