Julia 是一個(gè)面向科學(xué)計(jì)算的高性能動(dòng)態(tài)高級(jí)程序設(shè)計(jì)語(yǔ)言。其語(yǔ)法與其他科學(xué)計(jì)算語(yǔ)言相似。在許多情況下?lián)碛心芘c編譯型語(yǔ)言相媲美的性能。
Julia詳細(xì)介紹
該應(yīng)用程序擁有一個(gè)可靠的編譯器,分布式并行執(zhí)行,高精度和大型數(shù)學(xué)函數(shù)庫(kù)。它也支持某些C和Fortran庫(kù)。
當(dāng)運(yùn)行在命令行中,Julia Language為您提供在其中創(chuàng)建和編譯朱莉婭腳本進(jìn)行全面的工作空間。它的語(yǔ)法類似于其它的編碼語(yǔ)言,這使得它一個(gè)簡(jiǎn)單易用的工具,用于開(kāi)發(fā)誰(shuí)是新的朱莉婭。
對(duì)于更高的精度和更高的效率,該工具包括幾個(gè)函數(shù)庫(kù),寫(xiě)的朱莉婭,而且在C和Fortran。線性代數(shù),數(shù)生成,信號(hào)處理和字符串處理可以使用這些庫(kù)得到改善。
Julia性能優(yōu)勢(shì)
1. 速度快
2. 有時(shí)(其實(shí)是經(jīng)常)可以當(dāng)做 Lisp 寫(xiě)
3. 可以方便的部分達(dá)到 CPP 的 template-based programming 的效果,增強(qiáng)穩(wěn)健性(防御式編程)和運(yùn)行速度(型別已知)
4. 隨意調(diào)用 Python 包
5. 有 best (coding) practice 做參考
6. 暫時(shí)我還沒(méi)有玩過(guò),但是可以用 JuMP 的方法用 macro 寫(xiě) DSL
Julia不足
1. 雖然對(duì)我來(lái)說(shuō)不是缺點(diǎn),但是每次準(zhǔn)備安利時(shí)發(fā)現(xiàn)沒(méi)有 IDE 安利不能
2. 自用的包每次更新的時(shí)候要調(diào)整不少避免 warning
3. 雖然常常有 pre-compiled 的版本,但是不編譯一個(gè)最新 master 版本會(huì)不舒服
4. 偶爾編譯時(shí)會(huì)有蛋疼情況,比如系統(tǒng)上的 llvm 和編譯要求的不一樣
- PC官方版
- 安卓官方手機(jī)版
- IOS官方手機(jī)版