Julia 語言作為靈活的動態(tài)語言,適合科學(xué)和數(shù)值計算丐黄,性能可與傳統(tǒng)靜態(tài)類型語言媲美斋配。
只要您理解 Julia 的工作方式,就會很容易地寫出運行效率甚至可以和 C 相媲美的代碼。
通過使用類型推斷和 即時(JIT)編譯 艰争,以及 LLVM 坏瞄, Julia 具有可選的類型聲明,重載甩卓,高性能等特性鸠匀。Julia 是多編程范式的,包含指令式逾柿、函數(shù)式和面向?qū)ο缶幊痰奶卣鳌?它提供了簡易和簡潔的高等數(shù)值計算缀棍,它類似于 R 、 MATLAB 和 Python 机错,支持一般用途的編程睦柴。 為了達到這個目的,Julia 在數(shù)學(xué)編程語言的基礎(chǔ)上毡熏,參考了不少流行動態(tài)語言: Lisp 、 Perl 侣诵、 Python 痢法、 Lua 和 Ruby 。
Julia 與傳統(tǒng)動態(tài)語言最大的區(qū)別是:
核心語言很卸潘场财搁;標準庫是用 Julia 本身寫的,如整數(shù)運算在內(nèi)的基礎(chǔ)運算
完善的類型躬络,方便構(gòu)造對象和做類型聲明
基于參數(shù)類型進行函數(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 一樣強大的管理其他進程的能力
像 Lisp 一樣的宏和其他元編程工具