Julia 語言作為靈活的動態(tài)語言,適合科學(xué)和數(shù)值計算隅很,性能可與傳統(tǒng)靜態(tài)類型語言媲美撞牢。
只要您理解 Julia 的工作方式,就會很容易地寫出運行效率甚至可以和 C 相媲美的代碼叔营。
通過使用類型推斷和 即時(JIT)編譯 屋彪,以及 LLVM , Julia 具有可選的類型聲明绒尊,重載畜挥,高性能等特性。Julia 是多編程范式的婴谱,包含指令式蟹但、函數(shù)式和面向?qū)ο缶幊痰奶卣鳌?它提供了簡易和簡潔的高等數(shù)值計算,它類似于 R 谭羔、 MATLAB 和 Python 华糖,支持一般用途的編程。 為了達(dá)到這個目的瘟裸,Julia 在數(shù)學(xué)編程語言的基礎(chǔ)上客叉,參考了不少流行動態(tài)語言: Lisp 、 Perl 景描、 Python 十办、 Lua 和 Ruby 。
Julia 與傳統(tǒng)動態(tài)語言最大的區(qū)別是:
核心語言很谐住;標(biāo)準(zhǔn)庫是用 Julia 本身寫的呵燕,如整數(shù)運算在內(nèi)的基礎(chǔ)運算
完善的類型棠绘,方便構(gòu)造對象和做類型聲明
基于參數(shù)類型進(jìn)行函數(shù) 重載
參數(shù)類型不同,自動生成高效再扭、專用的代碼
高性能氧苍,接近靜態(tài)編譯語言,如 C 語言
Julia 想要變成一個前所未有的集易用泛范、強大让虐、高效于一體的語言。除此之外罢荡,Julia 的優(yōu)勢還在于:
免費開源( MIT 協(xié)議 )
自定義類型與內(nèi)置類型同樣高效赡突、緊湊
不需要把代碼向量化对扶;非向量化的代碼跑得也很快
為并行和分布式計算而設(shè)計
輕量級“綠色”線程( 協(xié)程 )
低調(diào)又牛逼的類型系統(tǒng)
優(yōu)雅、可擴展的類型轉(zhuǎn)換
高效支持 Unicode, 包括且不只 UTF-8
直接調(diào)用 C 函數(shù)(不需封裝或 API)
像 Shell 一樣強大的管理其他進(jìn)程的能力
像 Lisp 一樣的宏和其他元編程工具