Julia 語言作為靈活的動(dòng)態(tài)語言啊奄,適合科學(xué)和數(shù)值計(jì)算辩蛋,性能可與傳統(tǒng)靜態(tài)類型語言媲美。
只要您理解 Julia 的工作方式齐佳,就會(huì)很容易地寫出運(yùn)行效率甚至可以和 C 相媲美的代碼。
通過使用類型推斷和 即時(shí)(JIT)編譯 债沮,以及 LLVM 炼吴, Julia 具有可選的類型聲明,重載疫衩,高性能等特性硅蹦。Julia 是多編程范式的,包含指令式闷煤、函數(shù)式和面向?qū)ο缶幊痰奶卣鳌?它提供了簡易和簡潔的高等數(shù)值計(jì)算童芹,它類似于 R 、 MATLAB 和 Python 鲤拿,支持一般用途的編程假褪。 為了達(dá)到這個(gè)目的,Julia 在數(shù)學(xué)編程語言的基礎(chǔ)上近顷,參考了不少流行動(dòng)態(tài)語言: Lisp 生音、 Perl 、 Python 窒升、 Lua 和 Ruby 缀遍。
Julia 與傳統(tǒng)動(dòng)態(tài)語言最大的區(qū)別是:
核心語言很小饱须;標(biāo)準(zhǔn)庫是用 Julia 本身寫的域醇,如整數(shù)運(yùn)算在內(nèi)的基礎(chǔ)運(yùn)算
完善的類型,方便構(gòu)造對(duì)象和做類型聲明
基于參數(shù)類型進(jìn)行函數(shù) 重載
參數(shù)類型不同蓉媳,自動(dòng)生成高效譬挚、專用的代碼
高性能,接近靜態(tài)編譯語言酪呻,如 C 語言
Julia 想要變成一個(gè)前所未有的集易用减宣、強(qiáng)大、高效于一體的語言号杠。除此之外蚪腋,Julia 的優(yōu)勢還在于:
免費(fèi)開源( MIT 協(xié)議 )
自定義類型與內(nèi)置類型同樣高效丰歌、緊湊
不需要把代碼向量化姨蟋;非向量化的代碼跑得也很快
為并行和分布式計(jì)算而設(shè)計(jì)
輕量級(jí)“綠色”線程( 協(xié)程 )
低調(diào)又牛逼的類型系統(tǒng)
優(yōu)雅、可擴(kuò)展的類型轉(zhuǎn)換
高效支持 Unicode, 包括且不只 UTF-8
直接調(diào)用 C 函數(shù)(不需封裝或 API)
像 Shell 一樣強(qiáng)大的管理其他進(jìn)程的能力
像 Lisp 一樣的宏和其他元編程工具