Julia 語言作為靈活的動(dòng)態(tài)語言,適合科學(xué)和數(shù)值計(jì)算赃泡,性能可與傳統(tǒng)靜態(tài)類型語言媲美寒波。
只要您理解 Julia 的工作方式,就會(huì)很容易地寫出運(yùn)行效率甚至可以和 C 相媲美的代碼升熊。
通過使用類型推斷和 即時(shí)(JIT)編譯 俄烁,以及 LLVM , Julia 具有可選的類型聲明级野,重載页屠,高性能等特性。Julia 是多編程范式的蓖柔,包含指令式辰企、函數(shù)式和面向?qū)ο缶幊痰奶卣鳌?它提供了簡(jiǎn)易和簡(jiǎn)潔的高等數(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)勢(shì)還在于:
免費(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 一樣的宏和其他元編程工具