Julia(プログラミング言語)

ジュリア
パラダイムマルチパラダイム多重ディスパッチ(主要パラダイム)、関数型配列型手続き型命令型)、構造化反射型メタ多段階型[1]
デザイン:ジェフ・ブザンソンアラン・エデルマンステファン・カルピンスキーヴィラル・B・シャー
開発者ジェフ・ベザンソン、ステファン・カルピンスキー、バイラル・B・シャー、その他寄稿者[2] [3]
初登場2012年; 13年前[4] (2012)
安定版リリース
1.12.2 [5]  / 2025年11月20日; 7日前 (20 November 2025)
および 1.10.10 [8] ( LTS ) / 2025年6月27日; 5か月前 (2025-06-27)
プレビューリリース
1.13.0-alpha1 [6] [7] / 2025年11月17日; 10日前. 作業中: 1.13、1.12.3、[9] 1.11.8、1.10.11 LTS ; および1.14.0-DEV(毎日更新) (2025-11-17)
タイピングの規律動的[10] 推論的任意的主格媒介変数強い[10]
実装言語Julia、CC++LLVM[11] Scheme(パーサーとしてほぼ独占的に使用)
プラットフォームTier 1: 64 ビットおよび 32 ビットLinuxWindows 10 +、 64ビットmacOS IA-32x86-64Apple シリコン ( ARM64 ) Mac、Nvidia GPU/ CUDA 11.0+ (Linux 上、Windows 用Tier 2 ) [12] [13] [14]

Tier 2: 64 ビットFreeBSD 13.4+ (x86-64 用)、Windows 11 (Prism [15] ) および Linux 用64 ビット Arm、macOS 13+ 上の Apple GPU/Metal、Intel GPU/ OneAPI 6.2+、Nvidia GPU (Windows 上) Tier 3: 64 ビットRISC-V [16]64 ビットmusl ( Alpine Linuxなど)、AMD GPU/ ROCm 5.3+。

OSLinuxmacOSWindows  10+、 FreeBSD
ライセンスマサチューセッツ工科大学
ファイル名拡張子.jl
WebサイトJuliaLang.org
影響を受けた

Juliaは動的 汎用 プログラミング言語です高水準言語として、Juliaの設計の特徴としては、パラメトリック多態性を備えた型システム、多重ディスパッチを中核としたプログラミングパラダイムジャストインタイムコンパイル、並列ガベージコレクションの実装などが挙げられます。特に、Juliaはカプセル化されたメソッドを持つクラスをサポートしておらず、関数のすべての引数の型に基づいてどのメソッドが呼び出されるかを決定します。

デフォルトでは、Juliaはスクリプト言語と同様にランタイムを使用して実行され、インタラクションを可能にします。[22]しかし、Juliaプログラムは、例えばJuliaC.jlコンパイラを使用して、小さなバイナリスタンドアロン実行可能ファイル(またはPythonなどの小さなライブラリ)にコンパイルすることもできます[23] [24] [25] [26]

Juliaプログラムは他の言語のライブラリを再利用でき、その逆も可能です。JuliaはCC++FortranRustPythonRと相互運用性があります。一部のJuliaパッケージには、PythonおよびRライブラリへのバインディングが含まれています

Julia は、IDE (下記参照) などのプログラマー ツールや、Pluto.jl、Jupyterなどのノートブックによってサポートされており、2025 年からはGoogle Colab がJulia をネイティブに公式にサポートしています。

Juliaは組み込みシステムで使用されることもあります(例えば、 Raspberry Pi Compute Module 4に搭載された宇宙衛星で使用されています。64ビットのPiはJuliaに最適に動作し、JuliaはRaspbianでサポートされています)。[27]

歴史

Juliaの開発は2009年に始まり、ジェフ・ベザンソンステファン・カルピンスキーバイラル・B・シャーアラン・エデルマンが、高水準かつ高速なフリー言語の開発に着手した。2012年2月14日、チームは言語の使命を説明するブログ記事を掲載したウェブサイトを立ち上げた。[4] 2012年4月のInfoWorldとのインタビューで、カルピンスキーは「Julia」という名前について、「特に理由はない。ただ、いい名前だと思っただけだ」と述べている。[28]ベザンソンは友人の勧めでこの名前を選んだと述べ、[29]数年後にこう記している。

おそらくJuliaは「 Jeff珍しいLispが自動化されている」という意味でしょうか? [30]

Juliaの構文は2018年のバージョン1.0以降安定しており、 1.xとの下位互換性が保証されているほか、ドキュメント化された(安定した) APIの安定性も保証されています。一方、0.7以前の開発初期段階では、新しいバージョンで構文(およびセマンティクス)が変更されていました。(登録パッケージの)エコシステム全体では、新しく改良された構文が使用されており、ほとんどの場合、定期的に追加される新しいAPIに依存しています。また、Julia 1.7などでは、前方互換性を保つためにマイナーな構文が追加される場合もあります。

2012年にJulia 1.0以前のバージョンがリリースされてから10年が経ち、コミュニティは成長を遂げました。Juliaパッケージのエコシステムは、1,180万行を超えるコード(ドキュメントとテストを含む)を誇ります。[31] Juliaユーザーと開発者のための学術会議JuliaConは、2014年から毎年開催されており、JuliaCon2020 [32]は28,900人以上のユニークビューワーを獲得し、[33] JuliaCon2021では過去の記録を塗り替え(JuliaCon2021のプレゼンテーションはYouTubeで300件以上が無料公開され、前年の162件から増加)、会議期間中のユニークビューワー数は43,000人に達しました。[34]

Juliaの共同開発者3名が、2019年のジェームズ・H・ウィルキンソン数値ソフトウェア賞(4年ごとに授与)を受賞しました。受賞理由は「計算科学の問題の分析と解決を可能にする高性能ツールを作成するための革新的な環境であるJuliaの開発」です。[35]また、MIT応用数学教授のアラン・エデルマン高性能コンピューティング、線形代数、計算科学における傑出したブレークスルーとJuliaプログラミング言語への貢献」により、 2019年のIEEEコンピュータソサエティ ・シドニー・ファーンバック賞を受賞しました。 [36]

Julia 0.7 [37]とバージョン1.0はともに2018年8月8日にリリースされた。Julia 0.7の作業は「大規模な取り組み」であり(例えば、「完全に新しい最適化ツール」のため)、セマンティクスにいくつかの変更が加えられ、例えば反復インターフェースが簡素化された。[38] Julia 1.6は1.0以降最大のリリースであり、最も長い期間の長期サポート(LTS)バージョンであり、多くの面で高速化され、例えば並列プリコンパイルやパッケージの高速ロードが導入され、場合によっては「バイナリ成果物の大規模なツリーのロード時間が50倍高速化」された。[39] 1.7以降、Juliaの開発は時間ベースのリリースに戻った[40] Julia 1.7は2021年11月にリリースされ、新しいより高速な乱数ジェネレーターなど多くの変更が加えられ、 Julia 1.7.3では少なくとも1つのセキュリティ問題が修正された。[41] Julia 1.8は2022年にリリースされ、[42] ソースコードなしでJuliaプログラムを配布するための1.8.xの改善、コンパイラの高速化(場合によっては25%)、[43] およびより制御可能なインライン展開(関数自体だけでなく、呼び出し元での適用も可能になりました@inline)が含まれています。 Julia 1.9は2023年5月7日にリリースされました。 パッケージをネイティブマシンコードにプリコンパイルする機能など、多くの改善が加えられています(以前のバージョンのJuliaにもパッケージのプリコンパイルはありましたが、部分的にしか行われず、完全にネイティブコードには適用されませんでした。そのため、以前のバージョンでは「初回使用」ペナルティがあり、完全にコンパイルされるまで待機している間は速度が低下しました)。 バージョン1.9以降、プリコンパイルされたパッケージは、初回使用時に最大数百倍高速になり(例:CSV.jlおよびDataFrames.jl)、パッケージのプリコンパイルを改善するために、新しいパッケージPrecompileTools.jlが導入されました。 Julia 1.10 は、2023 年 12 月 25 日にリリースされ、並列ガベージ コレクション、パッケージのロード時間の改善、新しいパーサー (Julia で書き直された新しいパーサー) などの多くの新機能が追加されました。これにより、エラー メッセージが改善され、スタック トレースのレンダリングが改善されました。[44] Julia 1.11 は 2024 年 10 月 7 日にリリースされ、1.10.5 が次の長期サポート(LTS) バージョンになりました (つまり、これら 2 つのバージョンのみがサポートされます)。その後、6 月 27 日にリリースされた 1.10.10 に置き換えられ、1.6 は LTS バージョンではなくなりました。Julia 1.11 では、並列ガベージ コレクションや、安全なパブリック API を示す新しいキーワードが追加されました(Julia ユーザーは、Julia またはパッケージの内部ではなく、このような API を使用することをお勧めします。また、パッケージ作成者は、一般的に間接的に、たとえばCompat.jlからマクロpublicをプレフィックスとして付けてキーワードを使用することをお勧めします)。@compat、古いバージョンの Julia (少なくとも LTS バージョン) もサポートします。Julia 1.11.1 では起動が大幅に改善されており、これは一部のベンチマークでは重要になる場合があります。

Julia 1.12は2025年10月7日にリリースされ(1.12.2は11月20日にリリース)、それに対応するコンパイラを含むJuliaC.jlパッケージもjuliacリリースされました。これにより、従来よりも大幅に小さなバイナリ実行ファイル(いわゆるトリミング機能の導入により、以前よりもはるかに小さなサイズ)が作成されます。現在、Julia 1.10 LTSが唯一サポート対象のブランチですが、1.11.8もリリースされる予定です(ソースコードはすでにダウンロード可能ですが、最終版ではない可能性があります)。[45]

ジュリアコン

2014年以来[46]、Juliaコミュニティは開発者とユーザーに焦点を当てたJuliaカンファレンスを毎年開催しています。最初のJuliaConはシカゴで開催され、カンファレンスの年次開催のきっかけとなりました。2014年以来、カンファレンスはMIT [47]やメリーランド大学ボルチモア校[48]など、多くの場所で開催されています。イベントの聴衆は、バーチャルで開催されたJuliaCon 2020の期間中、数十人から28,900人以上のユニーク参加者に増加しました[49]。JuliaCon 2021もバーチャルで開催され[50] 、 IEEE 754浮動小数点標準(Juliaを含むほぼすべてのCPUと言語が使用)の主要な設計者であるWilliam Kahan教授、 [51] Jan Vitek教授、[52] Xiaoye Sherry Li教授、 PyTorchの共同作成者であるSoumith Chintala教授が基調講演を行いました[53] JuliaConは43,000人のユニーク参加者と300以上のプレゼンテーション(古い年のものも含めて、引き続き無料でアクセス可能)に成長しました。JuliaCon 2022は、2022年7月27日から29日まで、初めて英語だけでなく複数の言語でバーチャル開催されます。

スポンサー

Julia言語は、プロジェクトの長期的な持続可能性を確保するため、2014年にNumFOCUSの財政支援プロジェクトとなりました。[54] MITリンカーン研究所のジェレミー・ケプナーは、Juliaプロジェクト初期の創設スポンサーでした。さらに、ゴードン・アンド・ベティ・ムーア財団アルフレッド・P・スローン財団インテル、そしてNSFDARPANIHNASAFAAなどの機関からの資金提供もJuliaの開発に不可欠なものでした。[55] Firefoxウェブブラウザの開発元である Mozillaは、2019年上半期の研究助成金により、「Bringing Julia to the Browser」プロジェクトに「公式Juliaチームのメンバー」をスポンサーしました。[56]これは、 Firefoxと他のウェブブラウザの両方にJuliaを導入することを意味します。[57] [58] [59] [60] Julia言語は、GitHubの個人寄付者からもサポートされています。[61]

ジュリア社

JuliaHub, Inc.は、2015年にViral B. Shah、Deepak Vinchhi、Alan EdelmanJeff BezansonStefan KarpinskiKeno FischerによってJulia Computing, Inc.として設立されました。[62] [63]

2017年6月、ジュリア・コンピューティングはゼネラル・カタリストとファウンダー・コレクティブ から460万ドルのシード資金を調達し、 [64]同月「アルフレッド・P・スローン財団からオープンソースのジュリア開発を支援するため91万ドルの助成金を受け、そのうち16万ドルはジュリア・コミュニティの多様性を促進するためのもの」だった[65]。そして2019年12月には米国政府から「建物の暖房、換気、空調(HVAC)システムの総エネルギー消費量を削減するためのニューラルコンポーネント機械学習ツールの開発」のため110万ドルの資金提供を受けた[66] 。 2021年7月、ジュリア・コンピューティングは、ジュリア・コンピューティングと提携したフォーミュラワンチームのウィリアムズ・レーシングも所有するドリルトン・ベンチャーズ[67]が主導するシリーズAラウンドで2400万ドルを調達したと発表した。ウィリアムズのコマーシャルディレクターは、「クラス最高のクラウドテクノロジーを構築する企業への投資はドリルトンの戦略的焦点であり、シミュレーションとモデリングの革新的な機能を備えたJuliaの多用途プラットフォームは私たちのビジネスと非常に関連しています。私たちは、世界で最も技術的に進歩したスポーツにJuliaコンピューティングを組み込むことを楽しみにしています」と述べた。[68] 2023年6月、JuliaHubは(再び、今度は新しい名前で)AE Industrial Partners Horizo​​nX(「AEI Horizo​​nX」)が主導する1300万ドルの戦略的新規投資を受けた。AEI Horizo​​nXは、Juliaを使用するボーイング社と提携して設立されたベンチャーキャピタル投資プラットフォームである。 [69]ティム・ホーリーの(セントルイス・ワシントン大学のホーリー研究所での)Julia 1.9(応答性の改善)に関する研究は、チャン・ザッカーバーグ・イニシアチブによって資金提供された 

言語機能

Juliaは汎用プログラミング言語[ 70]ですが、元々は数値計算や技術計算向けに設計されました。低水準システムプログラミング[71]仕様記述言語[72]高水準合成(HLS)ツール(ハードウェア、例えばFPGA用)[73] 、そしてサーバー側[75] [76]とクライアント側[ 77] [78]の両方でのWebプログラミング[74]にも有用です。

この言語の主な特徴は次のとおりです。

多重ディスパッチ( Lisp ではマルチメソッドとも呼ばれますが、速度は遅く、ほとんどの言語には最適化された実装がありません)は、単一ディスパッチ (継承を使用するPythonC++JavaJavaScriptSmalltalkなどの一般的なオブジェクト指向プログラミング(OOP) 言語で使用される多態的メカニズム)の一般化 です

Juliaでは、すべての具象型は抽象型のサブタイプであり、型階層の最上位にある型の直接的または間接的なサブタイプです。具象型は、他の言語のようにサブタイプ化することはできません。代わりに合成が使用されます(継承とサブタイプ化Anyも参照)。

デフォルトでは、ユーザー提供のソースコードを実行する際にJuliaランタイムを事前にインストールする必要があります。一方、AppBundler.jl [26]を使用することで、Julia(GUI)アプリを単一のファイルに簡単にバンドルできます。AppBundler.jlは、「最新のデスクトップアプリケーションインストーラー形式でJulia GUIアプリケーションを構築します。Linuxの場合はSnap、 Windowsの場合はMSIX、MacOSの場合はDMGをターゲットとして使用します。アプリ内にJuliaの完全版がバンドルされています」。[79] PackageCompiler.jlは、Juliaのソースコードを実行せずに実行できるスタンドアロンの実行ファイルを構築できます[22]

Julia では、オブジェクト指向言語と同様にすべてがオブジェクトです。ただし、ほとんどのオブジェクト指向言語とは異なり、すべての関数は単一のディスパッチではなく、複数のディスパッチを使用してメソッドを選択します。

ほとんどのプログラミングパラダイムは、Juliaのホモイコニックマクロとパッケージを用いて実装できます。Juliaの構文マクロ(メタプログラミングに使用)は、Lispマクロと同様に、抽象構文木(AST)レベルで動作するため、C言語などの他の言語のプリプロセッサで使用されるテキスト置換マクロよりも強力です。Juliaのマクロシステムは衛生的ですが、必要に応じて(アナフォリックマクロなど構文を用いて意図的に捕捉することもできます。esc

Juliaは、 SchemeCommon Lispを含むLispの様々な方言からインスピレーションを得ており多重ディスパッチ指向の動的言語であるDylan ( Lispのような接頭辞構文ではなく中置構文を特徴とし、Juliaでは「すべて」 [80]は式である)や、別の数値プログラミング言語であるFortress(多重ディスパッチと洗練されたパラメトリック型システムを特徴とする)と多くの機能を共有している。Common Lisp Object System(CLOS)はCommon Lispに多重ディスパッチを追加しているが、すべての関数がジェネリック関数であるわけではない。

Julia、Dylan、Fortress では、拡張性がデフォルトであり、システムの組み込み関数はすべてジェネリックで拡張可能です。 Dylan では、多重ディスパッチは Julia と同じくらい基本的です。つまり、すべてのユーザー定義関数や、 のような基本的な組み込み操作もジェネリックです。 ただし、Dylan の型システムは、 ML 系統の言語+でより一般的であるパラメトリック型を完全にはサポートしていません。 デフォルトでは、CLOS は Common Lisp のパラメトリック型のディスパッチを許可していません。このような拡張ディスパッチ セマンティクスは、 CLOS メタオブジェクト プロトコルを介した拡張機能としてのみ追加できます。 収束設計により、Fortress もパラメトリック型の多重ディスパッチを備えています。 ただし、Julia とは異なり、Fortress は動的ではなく静的に型付けされ、コンパイルと実行のフェーズが分離されています。 言語機能を次の表にまとめます。

言語型システム汎用関数パラメトリック型
ジュリア動的デフォルトはい
コモンリスプ動的オプトインはい(ただし発送は行いません)
ディラン動的デフォルト一部(発送なし)
要塞静的デフォルトはい

Julia の拡張性の一例として、Unitful.jlパッケージは言語に 物理的な測定単位のサポートを追加します。

相互運用性

Juliaは、マクロを使用してCまたはFortran言語のライブラリを呼び出すための組み込みサポートを備えています@ccall。追加のライブラリを使用することでPython [81] C++ [82] 、 [83] 、 Rust [84] 、R [85] Java [86]などの他の言語との呼び出しや、 SQL [87] [88 ] [89]での使用が可能になります

個別にコンパイルされた実行ファイルオプション

JuliaはPackageCompiler.jl [22](または)を使ってバイナリ実行ファイルにコンパイルできます。より小さな実行ファイルは、 StaticCompiler.jlによって提供される言語の静的サブセットを使用して作成することもできます。このサブセットはランタイムディスパッチ(ガベージコレクションもサポートしていません。ガベージコレクションは、 がそれを提供するランタイムを除外するため)をサポートしていません。[90]juliac

交流

Juliaの公式ディストリビューションには、対話型の(オプションで色分けされた[91]読み取り・評価・印刷ループ(REPL;「コマンドライン」)[92]が含まれており、検索可能な履歴、タブ補完、専用のヘルプモードとシェルモード[93]を使用して、コードを素早く実験したりテストしたりすることができます。[94]次のコードは、文字列が自動的に連結されるセッションの例を示していますprintln[95]

julia> p ( x ) = 2 x ^ 2 + 1 ; f ( x , y ) = 1 + 2 p ( x ) y ; julia> println ( "Hello world!" , " I'm on cloud " , f ( 0 , 4 ), " as Julia supports recognizable syntax!" ) Hello world! I'm on cloud 9 as Julia supports recognizable syntax!                

変数や関数を含め、 Unicodeがサポートされているため、たとえば次のようにRiemann xi 関数を定義できます

SpecialFunctions使用:ガンマΓ ゼータξ ( s ) = 1 / 2 * s * ( s - 1 ) * π ^ ( - s / 2 ) * Γ ( s / 2 ) * ζ ( s )                   

可読性や一部のエディタでのサポート不足が懸念されるため、特に他のエディタ向けに作成されたパッケージにおいて、ユーザーにUnicode/ギリシャ文字の使用を強制する目的での使用は議論の的となっています。例えば、gammaは使用されているパッケージによってASCIIで定義されています(サンプルコードでは、それを使用することも、定義されているエイリアスを使用することもできます。キーワード引数はASCIIのみで定義できますが、実際にはトリックを使えばギリシャ文字/Unicodeで定義すること可能です。後者のみを定義する場合のみ議論の的となります。登録済みパッケージでは両方を定義することが可能であり、ユーザーはASCIIと定義された代替文字のどちらかを使用できるため、ほとんどの人は問題ないと考えています)。

REPLは、プロンプト(各コマンドの前)の後に;またはを押すことで、それぞれシステムシェルとヘルプモードへのアクセスを提供します。また、セッション間を含むコマンド履歴も保持します。 [96]コードはJuliaの対話型セッション内でテストすることも、ファイルに保存して(慣用的な拡張子が最適と考えられる方法で)コマンドラインから実行することもできます。[80]?.jl

$ julia  <ファイル名>

JuliaはUTF-8LaTeXコードを使用しており、多くの演算子で一般的な数学記号をサポートしています。たとえば、in演算子の∈は、\in入力して を押すことで入力できますTab ↹(つまり、 LaTeXコードを使用するか、単にコピーアンドペーストすることもできます。たとえば、√と∛はsqrt関数とcbrt関数で可能です)。Julia 12.xは、ソースコード(たとえば変数名)でも世界中の言語のUnicode 16 [97]をサポートしています Julia 1.13 - DEV最新の17.0リリース[98]をサポートし、下付き文字のq文字をサポートします。 [99]おそらくこれをサポートする最初のプログラミング言語です)。(ただし、公開コードやパッケージ名などには英語を使用することをお勧めします。)

Juliaは、オンラインのインタラクティブな「ノートブック」環境であるJupyter [100]と、「リアクティブノートブック」(ノートブックを純粋なJuliaファイルとして保存する)であるPluto.jlによってサポートされており、前者の代替となる可能性があります。[101]さらに、Posit(旧RStudio Inc)のQuarto出版システムは、Julia、Python、R、Observable JavaScriptをサポートしています(これらの言語は同社によって公式にサポートされており、同じノートブックドキュメントに組み込むこともできます。さらに多くの言語が非公式にサポートされています)。[102] [103]

REPLは追加のモードで拡張することができ、例えばデータベースアクセス用のSQLモード[104]などのパッケージで拡張されており、RCall.jlはR言語で動作するようにRモードを追加します[105]

JuliaのVisual Studio Code拡張機能は、「組み込みの動的自動補完、インライン結果、プロットペイン、統合REPL、変数ビュー、コードナビゲーション、その他多くの高度な言語機能」を備えたフル機能の統合開発環境を提供します。 [106]例えば、デバッグ、リンティングプロファイリングが可能です[107] [108] [109] [110]

他の言語で使用する

Juliaは実際には他の言語、実際はよく使われている上位20言語の大部分と相互運用可能です。JuliaはCやFortranで書かれたものなどの共有ライブラリ関数を個別に呼び出すために使用できます。また、Cでエクスポートされた関数を直接提供しない他の言語を呼び出すためのパッケージも用意されており、たとえばPython( PythonCall.jlを使用)、R、[111] MATLAB、C#(および他の.NET言語からはDotNET.jlを使用、そこからはJdotNETを使用)、JavaScript、Java(および他のJVM言語からはJavaCall.jlを使用、 Scalaなど)などです。また、他の言語用のパッケージを使用すると、Python、R(現在Julia 1.10.xまで可能[112])、Rust、Ruby、C#などからJuliaを呼び出すことができます。例えば、Pythonから呼び出すためのjuliacall( PythonCall.jlの一部)や、RからJulia 1.10.xまでの呼び出し用の別のJuliaCallパッケージなどがあります。Juliaはハードウェアにも使用され、 VHDLにコンパイルしたり、FPGAなどの高位合成ツールとしても使用されています[73]

Juliaには、 HTML ( HTTPも含む)、XMLJSONBSONなどのマークアップ言語や、 PostgreSQL、 [113] Mongo、[114] Oracle(TimesTen[115] MySQL、SQLite、Microsoft SQL Server、[114] Amazon Redshift、Vertica、ODBCを含む)などのデータベース、そして一般的なWebでの使用をサポートするパッケージがあります。[116] [117]

パッケージシステム

Juliaにはパッケージマネージャーが組み込まれており、デフォルトのレジストリシステムも備えています。[118]パッケージはGitHubでホストされたソースコードとして配布されることが最も多いですが、代替手段も同様に利用できます。また、アーティファクトを使用してバイナリとしてインストールすることもできます。[119] Juliaのパッケージマネージャーは、パッケージのクエリとコンパイル、および環境の管理に使用されます。統合パッケージレジストリがサポートされているため、公式レジストリ以外のレジストリをローカルに追加できます。[120]

実装

JuliaのコアはJuliaとCで実装されており、 LLVM依存のためC++使用されています。コード解析、コードローワーリング、ブートストラップは、バージョン1.10まではScheme方言であるFemtoLispで実装されていました。 [121]このバージョン以降、新しい純粋Julia標準ライブラリで あるJuliaSyntax.jlが解析に使用されています(古いバージョンも選択可能です)[122]。これにより速度が向上し、「様々なケースでパーサーのエラーメッセージが大幅に改善されました」。[123] LLVMコンパイラインフラストラクチャプロジェクトは、一般的に使用されるすべてのプラットフォーム向けに最適化されたマシンコードを生成するためのバックエンドとして使用されています。いくつかの例外を除き、標準ライブラリはJuliaで実装されています。

現在のプラットフォームと将来のプラットフォーム

Juliaには4つのサポートレベルがあります。[124]

Juliaは64ビットApple Silicon MacをネイティブでサポートするTier 1 macOSサポートを備えています(以前はApple M1ベースのMacはRosetta 2エミュレーションでの実行によってのみサポートされていました[125] [126])。また、IntelベースのMacも完全にサポートしています(完全にサポートされていますが、AppleはIntel Macを販売しなくなったため、公式の層には記載されなくなりました)。64ビットARMは、Windows 11とLinuxなどの他のプラットフォームではTier 2サポートでサポートされています(FreeBBSD 14.1+ではTier 3)。「WSL 2(Ubuntu LTS)」はWindows 10+でTier 2サポートされており(WSL 1も動作するようです)、他のディストリビューションで使用する場合も動作するはずです。OpenBSDは「初期サポート」を受けており、積極的に開発されています。

i686サブアーキテクチャを完全に実装しているすべてのIA-32プロセッサがサポートされており、すべての 64 ビットx86-64 (別名amd64 )、つまり、約 10 年未満のものがすべてサポートされています。64 ビットArmv8 (およびそれ以降、つまりAArch64 ) プロセッサは第 1 層 (macOS の場合) でサポートされ、それ以外の場合は Linux の第 2 層でサポートされます。ARMv7 (AArch32) は第 4 層にはリストされておらず、「過去のある時点でビルドされましたが、現在はビルドされないことがわかっています」(以前の Julia バージョンでは 3 つでした)。[127]数百のパッケージがGPUアクセラレーションされています。[128] Nvidia GPUはCUDA .jl (64ビットLinuxのTier 1と64ビットWindowsのTier 2、コンピューティング能力3.5(Kepler)以上のPTXを実装するパッケージ。どちらもCUDA 11以上が必要ですが、古いバージョンのパッケージはCUDA 9まで動作します)をサポートしています。また、GoogleのTPUなどの他のアクセラレータをサポートするパッケージもあり、[ 129]、一部のIntel(統合)GPUはoneAPI.jlを介してサポートされています。[130] AMDのGPUはOpenCLなどをサポートしておりAMD ROCmスタックの実験的なサポートがあります。[131]

小型のRaspberry Piから、世界最速(最近まで)スーパーコンピュータ富岳のARMベースA64FXまで、いくつかのARMプラットフォーム向けです。[132] PowerPC LE(64ビット)はTier 3のサポートがあり、「ビルドできる場合とできない場合がある」ことを意味します。1.12ではTier 4に下がり、ビルド/動作しなくなります。[133]

Juliaは64ビットARMv8の公式(ティア2)サポートを備えているため、例えば新しい64ビット(ARMv8-A)Raspberry PiコンピューターはJuliaで動作します(例えば、Pi Compute Module 4は宇宙でJuliaコードを実行するのに使用されています)。[134]多くのPi、特に古い32ビットのPiでは、ユーザーのJuliaコードをクロスコンパイルすると便利です。古い32ビットARMv7のPiは古いバージョンのJuliaで動作しました(現在も動作しますが、最新のJuliaバージョンでは、ティア3から現在のティア4にダウングレードされています。「Juliaは過去のある時点でビルドされましたが、現在はビルドできないことが知られています。」)。オリジナルのRaspberry Pi 1には公式サポートがありません(新しいバージョンにはサポートティアがありましたが、いくつかの縮小版JuliaがそのPiで動作することが知られています)。[135] [136] Pico版のRaspberry Piは動作しないことが知られています(MプロファイルArmを使用しているため、Linuxでは動作せず、まだサポートされていません)。Juliaは現在Raspbianでサポートされていますが[137]、Armv7以降を搭載した新しいRaspberry Piではサポートが充実しています。JuliaのサポートはRaspberry Pi Foundationによって推進されています。[138]

一部のプラットフォームでは、Juliaをソースコードからコンパイルする必要がある場合があります(例:オリジナルのRaspberry Pi)。特定のビルドオプションを使用してコンパイルする必要がありますが、これはすでに実行されており、非公式のビルド済みバイナリ(およびビルド手順)が利用可能です。[139] [140]

Juliaは64ビットRISC-V(Tier 3サポートあり)用に構築されており、[141]つまり、Juliaコアにいくつかのサポートコードが含まれています。

Juliaはデフォルトでオペレーティングシステムを必要とし、オペレーティングシステムなしで実行したり、 Arduinoなどの組み込みシステムプラットフォームで実行するための公式サポートはありませんが、Juliaのコードは、2KBのRAM(および32KBのフラッシュメモリ)を搭載したベアメタル16MHz 8ビット(ATmega328P)AVRマイクロコントローラArduinoでいくつかの制限付きで 実行ます[142] [143]

採択

Juliaは、 MITスタンフォード大学カリフォルニア大学バークレー校、マシュハド大学(フェルドウスィー大学)、ケープタウン大学など、多くの大学で採用されています。また、 AmazonIBMJP Morgan AI Research、[144]ASMLなど、様々な分野の大手民間企業でも採用されています。Juliaは、 NASAFAAなどの政府機関や、米国のすべての国立エネルギー研究所でも使用されています。 [145] [146]

科学計算と工学

医薬品および医薬品開発

Juliaは製薬業界の医薬品開発に広く使用されており、ModernaPfizerAstraZenecaProcter & GambleUnited Therapeuticsなどで採用されています。[167] [168]

経済学、金融学、政治学

参照

参考文献

  1. ^ 「Juliaの@generated関数によるデータの平滑化」。2015年11月5日。2016年3月4日時点のオリジナルよりアーカイブ2015年12月9日閲覧。Juliaの生成された関数は、TahaとSheardによって普及したマルチステージプログラミング(MSP)パラダイムと密接に関連しています。MSPパラダイムは、複数段階の遅延コード実行を可能にすることで、プログラム実行のコンパイル時/実行時の段階を一般化します。
  2. ^ “LICENSE.md”. GitHub . 2017年9月. 2021年1月23日時点のオリジナルよりアーカイブ2014年10月20日閲覧。
  3. ^ “Contributors to JuliaLang/julia”. GitHub . 2021年1月23日時点のオリジナルよりアーカイブ。 2014年10月20日閲覧
  4. ^ abcde Jeff Bezanson; Stefan Karpinski; Viral Shah; Alan Edelman (2012年2月). 「Juliaを作った理由」. Juliaウェブサイト. 2020年5月2日時点のオリジナルよりアーカイブ。 2013年2月7日閲覧
  5. ^ “Julia v1.12.2がリリースされました”. 2025年11月22日. 2025年11月22日閲覧
  6. ^ "set VERSION to 1.13.0-alpha1 by KristofferC · Pull Request #60151 · JuliaLang/julia". GitHub . 2025年11月17日閲覧
  7. ^ “GitHub - JuliaLang/julia at release-1.13”. GitHub . 2025年11月17日閲覧
  8. ^ 「Juliaをダウンロード」julialang.org . 2025年10月1日閲覧
  9. ^ "Backports for 1.12.3 by KristofferC · Pull Request #60225 · JuliaLang/julia". GitHub . 2025年11月25日閲覧
  10. ^ ab Engheim, Erik (2017年11月17日). 「動的型付け言語はあなたが考えているものではない」. Medium . 2021年3月5日時点のオリジナルよりアーカイブ。 2021年1月27日閲覧
  11. ^ “Building Julia (Detailed)”. GitHub . 2017年9月. 2022年5月16日時点のオリジナルよりアーカイブ2022年5月16日閲覧。
  12. ^ 「Juliaをダウンロード」julialang.org . 2025年9月15日閲覧
  13. ^ “NVIDIA CUDA ⋅ JuliaGPU”. juliagpu.org . 2025年9月15日閲覧
  14. ^ 「NVIDIA CUDA ⋅ JuliaGPU」juliagpu.org。2022年1月29日時点のオリジナルよりアーカイブ2022年1月17日閲覧。Rodiniaベンチマークスイートのいくつかのアプリケーションにおいて、パフォーマンスがCUDA Cに近づき、時にはそれを上回ることさえあることを示しました。
  15. ^ 「Armでのエミュレーションの仕組み」learn.microsoft.com . 2025年11月17日閲覧
  16. ^ 「RISC-V (Linux) · The Julia Language」. docs.julialang.org . 2025年11月24日閲覧
  17. ^ Stokel-Walker, Chris. 「Julia: The Goldilocks language」. Increment . Stripe. 2020年11月9日時点のオリジナルよりアーカイブ。 2020年8月23日閲覧
  18. ^ “JuliaCon 2016”. JuliaCon. 2017年3月4日時点のオリジナルよりアーカイブ2016年12月6日閲覧。彼はプログラミング言語Schemeの共同設計者であり、Juliaの設計に大きな影響を与えています。
  19. ^ abcd "Home · The Julia Language". docs.julialang.org . 2021年1月11日時点のオリジナルよりアーカイブ2018年8月15日閲覧。
  20. ^ “Programming Language Network”. GitHub. 2020年12月20日時点のオリジナルよりアーカイブ。 2016年12月6日閲覧
  21. ^ Wolfram, Stephen (2013年2月12日). 「What Should We Call the Language of Mathematica?—Stephen Wolfram Writings」. writings.stephenwolfram.com . 2024年9月4日時点のオリジナルよりアーカイブ。 2021年6月24日閲覧
  22. ^ abc “GitHub - JuliaLang/PackageCompiler.jl: Juliaパッケージをコンパイルする”. Julia言語. 2019年2月14日. 2019年3月23日時点のオリジナルよりアーカイブ。 2019年2月15日閲覧
  23. ^ “JuliaLang/JuliaC.jl”.ジュリアラング。 2025 年 11 月 24 日2025 年11 月 24 日に取得
  24. ^ 「Juliaにおける静的コンパイル」。Juliaプログラミング言語。2025年11月20日。 2025年11月24日閲覧
  25. ^ "[ANN] AppBundler.jl - Julia GUIアプリケーションをバンドルする". Juliaプログラミング言語. 2025年11月13日. 2025年11月24日閲覧
  26. ^ ab "AppBundler.jl". PeaceFounder. 2023年12月13日. 2023年12月18日時点のオリジナルよりアーカイブ。 2023年12月18日閲覧
  27. ^ 「Raspberry PiのRaspbianでJuliaが利用可能」。JuliaはすべてのPiの派生モデルで動作しますが、Pi 3の使用をお勧めします。
  28. ^ Krill, Paul (2012年4月18日). 「新しいJulia言語は科学者のためのC言語を目指している」InfoWorld . 2014年9月13日時点のオリジナルよりアーカイブ。 2021年7月4日閲覧
  29. ^ Torre, Charles. 「Stefan KarpinskiとJeff Bezanson on Julia」Channel 9. MSDN. 2018年12月4日時点のオリジナルよりアーカイブ。 2018年12月4日閲覧
  30. ^ Bezanson, Jeff (2021年4月2日). 「CASベンチマーク」. discourse.julialang.org . 2021年4月2日時点のオリジナルよりアーカイブ。 2021年4月2日閲覧
  31. ^ “ニュースレター 2021年8月 - Julia ComputingがシリーズAで2,400万ドルの資金調達を完了、元Snowflake CEOのBob MugliaがJulia Computingの取締役に就任 - JuliaHub”. juliahub.com . 2022年11月16日時点のオリジナルよりアーカイブ。 2022年11月16日閲覧
  32. ^ “JuliaCon 2020”. JuliaCon 2020 . 2023年10月12日時点のオリジナルよりアーカイブ2023年10月6日閲覧。
  33. ^ “JuliaCon 2020 Wrap-up”. julialang.org . 2020年8月11日. 2020年11月30日時点のオリジナルよりアーカイブ。 2020年12月20日閲覧
  34. ^ “JuliaCon 2021 Highlights”. julialang.org . 2021年9月6日時点のオリジナルよりアーカイブ。 2021年9月6日閲覧
  35. ^ “Julia言語の共同開発者が数値ソフトウェア分野のジェームズ・H・ウィルキンソン賞を受賞”. MITニュース. 2018年12月26日. 2019年1月28日時点のオリジナルよりアーカイブ。 2019年1月22日閲覧
  36. ^ “MITのアラン・エデルマン氏が権威ある2019 IEEEコンピュータ協会シドニー・ファーンバッハ賞を受賞 | IEEEコンピュータ協会” (プレスリリース). 2019年10月1日. 2019年10月9日時点のオリジナルよりアーカイブ。 2019年10月9日閲覧
  37. ^ “What is Julia 0.7? How does it relate to 1.0?” JuliaLang . 2018年3月26日. 2018年7月27日時点のオリジナルよりアーカイブ。 2018年10月17日閲覧
  38. ^ Davies, Eric. 「Writing Iterators in Julia 0.7」. julialang.org . 2018年8月6日時点のオリジナルよりアーカイブ。 2018年8月5日閲覧
  39. ^ Jeff Bezanson、Stefan Karpinski、Viral Shah、Alan Edelman、他「Julia 1.6 Highlights」julialang.org . 2021年3月26日時点のオリジナルよりアーカイブ。 2021年3月26日閲覧
  40. ^ “Upgrade to OpenBLAS 0.3.13 · Pull Request #39216 · JuliaLang/julia”. GitHub . 2022年3月23日時点のオリジナルよりアーカイブ。 2021年4月26日閲覧。1.7のリリースはそう遠くないことを考えると(今後、予定通りリリースされる予定)。
  41. ^ "[Zlib_jll] Update to v1.2.12+3 by giordano · Pull Request #44810 · JuliaLang/julia". GitHub . 2022年5月25日時点のオリジナルよりアーカイブ。 2022年5月25日閲覧
  42. ^ “Backports for Julia 1.8.5 by KristofferC · Pull Request #48011 · JuliaLang/julia”. GitHub . 2023年1月4日時点のオリジナルよりアーカイブ。 2023年1月8日閲覧
  43. ^ “compiler: speed up bootstrap time by 25% by aviatesk · Pull Request #41794 · JuliaLang/julia”. GitHub . 2022年3月3日時点のオリジナルよりアーカイブ2022年3月3日閲覧。以前はブートストラップに約80秒かかっていましたが、このPRでは約60秒に短縮されています。
  44. ^ “julia/HISTORY.md at master · JuliaLang/julia”. GitHub . 2024年12月1日閲覧
  45. ^ “GitHub - JuliaLang/julia at release-1.11”. GitHub . 2025年11月7日閲覧
  46. ^ “JuliaCon 2014”. juliacon.org . 2021年6月20日閲覧
  47. ^ “JuliaCon 2016 at MIT”. mit.edu . 2016年7月18日. 2021年6月24日時点のオリジナルよりアーカイブ。 2021年6月20日閲覧
  48. ^ “JuliaCon 2019 at UMB”. technical.ly . 2019年7月23日. 2021年6月24日時点のオリジナルよりアーカイブ。 2021年6月20日閲覧
  49. ^ “JuliaCon 2020 wrap up”. julialang.org . 2020年11月30日時点のオリジナルよりアーカイブ。 2021年6月20日閲覧
  50. ^ “JuliaCon 2021”. Juliacon.org . 2021年6月20日時点のオリジナルよりアーカイブ。 2021年6月20日閲覧
  51. ^ “JuliaCon 2021 Highlights”. julialang.org . 2021年9月6日時点のオリジナルよりアーカイブ2022年3月3日閲覧。今年のJuliaConは過去最大かつ最高のイベントとなり、300以上のプレゼンテーションがYouTubeで無料視聴可能となり、20,000人以上が登録、会議中のYouTubeユニーク視聴者数は43,000人を超えました。これは昨年の会議のプレゼンテーション162件、登録10,000人、YouTubeユニーク視聴者数28,900人から増加しています。
  52. ^ “Jan Vitek Homepage”. janvitek.org . 2024年1月22日時点のオリジナルよりアーカイブ。 2021年6月20日閲覧
  53. ^ “Soumith Chintala Homepage”. soumith.ch . 2021年6月24日時点のオリジナルよりアーカイブ2021年6月20日閲覧。
  54. ^ “Julia: NumFOCUSが2014年から支援するプロジェクト”. numfocus.org . 2020年9月28日時点のオリジナルよりアーカイブ。 2020年9月29日閲覧
  55. ^ “The Julia Language”. julialang.org . 2019年7月26日時点のオリジナルよりアーカイブ2019年9月22日閲覧。
  56. ^ Cimpanu, Catalin. 「Mozilla、FirefoxでJuliaをサポートする方法に資金提供」ZDNet . 2019年7月10日時点のオリジナルよりアーカイブ。 2019年9月22日閲覧
  57. ^ “Julia in Iodide”. alpha.iodide.io . 2019年9月22日時点のオリジナルよりアーカイブ。 2019年9月22日閲覧
  58. ^ “Language plugins - Iodide Documentation”. iodide-project.github.io . 2019年9月22日時点のオリジナルよりアーカイブ。 2019年9月22日閲覧
  59. ^ “Mozilla Research Grants 2019H1”. Mozilla . 2019年10月9日時点のオリジナルよりアーカイブ。 2019年9月22日閲覧。WebAssemblyで言語インタープリターを実行する。主要なデータサイエンスツールへのアクセスをさらに拡大するため、RまたはJuliaをWebAssemblyに移植し、Iodideのレベル3言語プラグイン(R/JuliaとJavascript間のデータ基本型の自動変換、およびR/JuliaとJavascript間のクラスインスタンスの共有機能)の提供を試みる方を募集しています。
  60. ^ “Webのためのリテラルな科学計算とコミュニケーション:iodide-project/iodide”. iodide. 2019年9月20日. オリジナルから2018年8月24日時点のアーカイブ2019年9月22日閲覧。私たちは、Pythonでデータ加工を行い、RまたはJAGSで簡単なモデルをフィッティングし、Juliaで微分方程式を解き、結果をインタラクティブなライブd3+JavaScriptビジュアライゼーションで表示できるような将来のワークフローを構想しています。これらすべてを、単一のポータブルで共有可能、そしてハッキング可能なファイル内で実現します。
  61. ^ “Julia言語のスポンサーになる”. github.com . 2021年7月5日時点のオリジナルよりアーカイブ。 2021年6月5日閲覧
  62. ^ “About Us – Julia Computing”. juliacomputing.com . 2019年9月1日時点のオリジナルよりアーカイブ2017年9月12日閲覧。
  63. ^ “About Us - JuliaHub”. juliahub.com . 2022年11月16日時点のオリジナルよりアーカイブ。 2022年11月16日閲覧
  64. ^ 「Julia Computing、シード資金で460万ドルを調達」(プレスリリース)。2019年5月10日時点のオリジナルよりアーカイブ。
  65. ^ 「Julia Computing、アルフレッド・P・スローン財団から91万ドルの助成金を受賞。うち16万ドルはSTEM多様性支援」juliacomputing.com 2017年6月26日。2020年8月3日時点のオリジナルよりアーカイブ。 2020年7月28日閲覧
  66. ^ 「DIFFERENTIATE—強力なエネルギー削減を促進し、まったく新しい、完全に影響力のある高度なテクノロジー強化を可能にする設計インテリジェンス」(PDF)
  67. ^ “Julia Computing、Dorilton Ventures主導の資金調達ラウンドで2400万ドルを調達”.ロイター. 2021年7月19日. 2021年8月18日時点のオリジナルよりアーカイブ。 2021年8月18日閲覧
  68. ^ “Williams welcomes Julia Computing as Dorilton Ventures partner”. www.williamsf1.com (プレスリリース). 2021年9月2日時点のオリジナルよりアーカイブ。 2021年9月2日閲覧
  69. ^ 「JuliaHub、AE Industrial Partners Horizo​​nXから1,300万ドルの戦略的投資を受ける」info.juliahub.com(プレスリリース)2023年6月27日。 2023年6月30日閲覧
  70. ^ 「Julia言語」(公式サイト)。2017年2月21日時点のオリジナルよりアーカイブ2016年12月9日閲覧。汎用 [..] Juliaを使用すると、UIの作成、コードの静的コンパイル、さらにはWebサーバーへのデプロイが可能です。
  71. ^ Green, Todd (2018年8月10日). 「高水準Juliaによる低水準システムプログラミング」. 2018年11月5日時点のオリジナルよりアーカイブ。 2018年11月5日閲覧
  72. ^ Moss, Robert (2015年6月26日). 「次世代航空機衝突回避システムのための仕様言語としてのJuliaの使用」(PDF) . 2015年7月1日時点のオリジナルよりアーカイブ。 2015年6月29日閲覧航空機衝突回避システム
  73. ^ ab Biggs, Benjamin; McInerney, Ian; Kerrigan, Eric C.; Constantinides, George A. (2022). 「Julia言語を用いた高位合成」. arXiv : 2201.11522 [cs.SE]. Juliaで記述され、JuliaコードをVHDLに変換するJulia HLSツールのプロトタイプを紹介します。
  74. ^ “Announcing Dash for Julia”. plotly (プレスリリース). 2020年10月26日. 2021年9月2日時点のオリジナルよりアーカイブ。 2021年9月2日閲覧
  75. ^ Anaya, Richard (2019年4月28日). 「JuliaでマルチスレッドHTTPサーバーを作成する方法」. Medium . 2019年7月25日時点のオリジナルよりアーカイブ。 2019年7月25日閲覧まとめると、Juliaには現在すぐに使えるマルチスレッドサーバーソリューションが搭載されていませんが、プロセス分散機能と非常に普及している負荷分散技術を活用することで、HTTP処理にCPUを最大限に活用することができます。
  76. ^ Anthoff, David (2019年6月1日). 「Node.js installation for julia」. GitHub . 2024年9月4日時点のオリジナルよりアーカイブ2019年7月25日閲覧。
  77. ^ “JuliaをJavaScriptに翻訳する”. JuliaGizmos. 2019年7月7日. 2019年3月28日時点のオリジナルよりアーカイブ。 2019年7月25日閲覧
  78. ^ Fischer, Keno (2019年7月22日). “Running julia on wasm”. GitHub . 2020年11月21日時点のオリジナルよりアーカイブ2019年7月25日閲覧。
  79. ^ "[ANN] AppBundler.jl - Julia GUIアプリケーションをバンドルする". Juliaプログラミング言語. 2023年11月30日. 2024年9月4日時点のオリジナルよりアーカイブ2023年12月18日閲覧。
  80. ^ ab “Learn Julia in Y Minutes”. Learnxinyminutes.com . 2018年8月15日時点のオリジナルよりアーカイブ2017年5月31日閲覧。
  81. ^ “PythonCall & JuliaCall”. JuliaPy. 2023年10月29日. 2023年10月31日時点のオリジナルよりアーカイブ2023年10月30日閲覧。
  82. ^ Cords, Clem (2024年11月12日). “Clemapfel/jluna”. GitHub . 2024年11月26日閲覧
  83. ^ "CxxWrap". JuliaInterop. 2023年10月28日. 2023年10月30日閲覧
  84. ^ “RCall.jl”. JuliaInterop. 2023年10月16日. 2019年4月30日時点のオリジナルよりアーカイブ。 2023年10月30日閲覧
  85. ^ “JuliaとSpark、一緒に使えばもっと良くなる”. juliacomputing.com . 2020年6月2日. 2020年7月14日時点のオリジナルよりアーカイブ。
  86. ^ Foster, Claire (2023年10月23日). “SQLREPL.jl”. GitHub . 2022年9月27日時点のオリジナルよりアーカイブ2023年10月31日閲覧。
  87. ^ Noh, WooKyoung (2023年10月18日). “Octo.jl”. GitHub . 2023年10月31日閲覧
  88. ^ “Usage Guide · FunSQL.jl”. mechanicalrabbit.github.io . 2023年10月31日時点のオリジナルよりアーカイブ2023年10月31日閲覧。
  89. ^ “Using Julia with Oracle Databases”. 2022年10月21日. 2022年11月8日時点のオリジナルよりアーカイブ。 2022年11月8日閲覧
  90. ^ Short, Tom (2023年10月30日). “StaticCompiler”. GitHub . 2023年10月31日時点のオリジナルよりアーカイブ2023年10月30日閲覧。
  91. ^ 「REPLの色に関する質問:変数名、変数の確認、RGB値の設定」『Juliaプログラミング言語』2022年10月14日。 2025年9月12日閲覧
  92. ^ “The Julia REPL · The Julia Language”. docs.julialang.org . 2019年9月22日時点のオリジナルよりアーカイブ2019年9月22日閲覧。
  93. ^ 「Julia/REPLの紹介 - Wikibooks、オープンな世界のためのオープンブック」en.wikibooks.org。2019年6月23日時点のオリジナルからのアーカイブ。 2019年9月22日閲覧。REPLの外観と動作をカスタマイズできるJuliaパッケージOhMyREPL.jl [..]をインストールできます。
  94. ^ “Getting Started · The Julia Language”. docs.julialang.org . 2019年8月10日時点のオリジナルよりアーカイブ2018年8月15日閲覧。
  95. ^ 文字列補間についてはdocs.julialang.org/en/v1/manual/strings/を、文字列連結の推奨方法については例を参照してください。Juliaにはprintln関数とprint関数がありますが、C言語の同種の関数とは異なり、実行時のフォーマット処理のオーバーヘッドを削減するための@printfマクロ(つまり関数形式ではない)も用意されています。string(greet, ", ", whom, ".\n")
  96. ^ “Julia Documentation”. JuliaLang.org . 2016年12月17日時点のオリジナルよりアーカイブ2014年11月18日閲覧。
  97. ^ "support Unicode 16 via utf8proc 2.10.0 by stevengj · Pull Request #56925 · JuliaLang/julia". GitHub . 2025年1月8日閲覧
  98. ^ "support Unicode 17 via utf8proc 2.11.0 by stevengj · Pull Request #59534 · JuliaLang/julia". GitHub . 2025年9月11日閲覧
  99. ^ “Support superscript small q by eschnett · Pull Request #59544 · JuliaLang/julia”. GitHub . 2025年9月12日閲覧
  100. ^ “Project Jupyter”. 2017年6月29日時点のオリジナルよりアーカイブ2015年8月19日閲覧。
  101. ^ Boudreau, Emmett (2020年10月16日). 「冥王星は本当に木星の代わりとなるのか?」Medium . 2023年4月12日時点のオリジナルよりアーカイブ。 2020年12月8日閲覧
  102. ^ Machlis, Sharon (2022年7月27日). 「RStudioがPositに名称変更、PythonとVS Codeへの対応を拡大」InfoWorld . 2023年1月18日閲覧
  103. ^ “Heads up! Quarto is here to stay. Immediately combine R & Python in your next document: An extension on a recent post”. ds-econ . 2022年7月20日. 2023年1月31日時点のオリジナルよりアーカイブ。 2023年1月18日閲覧
  104. ^ Foster, Chris (2022年4月4日). “SQLREPL.jl”. GitHub . 2022年9月27日時点のオリジナルよりアーカイブ。 2022年9月27日閲覧
  105. ^ “Getting Started · RCall.jl”. juliainterop.github.io . 2024年9月4日時点のオリジナルよりアーカイブ2022年9月27日閲覧。
  106. ^ 「Visual Studio Code の Julia」。
  107. ^ Holy, Tim (2019年9月13日). 「GitHub - timholy/ProfileView.jl: Juliaプロファイリングデータの視覚化」GitHub . 2020年1月31日時点のオリジナルよりアーカイブ。 2019年9月22日閲覧
  108. ^ Gregg, Brendan (2019年9月20日). 「GitHub - brendangregg/FlameGraph: Stack trace visualizer」. GitHub . 2019年9月26日時点のオリジナルよりアーカイブ2019年9月22日閲覧。
  109. ^ 「Juliaインタープリターとデバッガー」julialang.org . 2019年4月10日閲覧
  110. ^ “Home · Rebugger.jl”. timholy.github.io . 2019年3月31日時点のオリジナルよりアーカイブ2019年4月10日閲覧。
  111. ^ 「RCallモジュールのインストール時にJuliaがクラッシュする」。Juliaプログラミング言語。2024年10月21日。 2024年10月22日閲覧私の環境では、MacOS上のJulia 1.11でRCallは問題なく読み込まれます。
  112. ^ "juliacall が julia 1.11 で 'undefined symbol: jl_stdout_obj' で失敗する · Issue #234 · Non-Contradiction/JuliaCall". GitHub . 2024年10月22日閲覧
  113. ^ “Home · LibPQ.jl”. invenia.github.io . 2022年11月8日時点のオリジナルよりアーカイブ。 2022年11月8日閲覧
  114. ^ ab "Home · FunSQL.jl". docs.juliahub.com . 2022年11月8日時点のオリジナルよりアーカイブ2022年11月8日閲覧。
  115. ^ Hood, Doug (2022年10月21日). “Using Julia with Oracle Databases”. 2022年11月8日時点のオリジナルよりアーカイブ。 2022年11月8日閲覧
  116. ^ “Genie Builder - Visual Studio Marketplace”. marketplace.visualstudio.com . 2022年11月8日時点のオリジナルよりアーカイブ。 2022年11月8日閲覧
  117. ^ “How to Build Your First Web App in Julia with Genie.jl”. freeCodeCamp.org . 2022年2月1日. 2022年11月8日時点のオリジナルよりアーカイブ。 2022年11月8日閲覧
  118. ^ “JuliaRegistries / General”. GitHub . 2020年8月3日時点のオリジナルよりアーカイブ2020年4月30日閲覧。
  119. ^ “Pkg.jl - Artifacts”. 2020年8月2日時点のオリジナルよりアーカイブ2020年6月4日閲覧。
  120. ^ “Pkg.jl - Registries”. 2020年6月13日時点のオリジナルよりアーカイブ2020年4月30日閲覧。
  121. ^ Bezanson, Jeff (2019年6月6日). “JeffBezanson/femtolisp”. GitHub . 2022年12月22日時点のオリジナルよりアーカイブ2019年6月16日閲覧。
  122. ^ “JuliaSyntax”. Juliaプログラミング言語. 2022年8月28日. 2022年8月28日時点のオリジナルよりアーカイブ。 2022年8月28日閲覧
  123. ^ “Enable JuliaSyntax.jl as an alternative Julia parser by c42f · Pull Request #46372 · JuliaLang/julia”. GitHub . 2022年8月28日時点のオリジナルよりアーカイブ。 2022年8月28日閲覧
  124. ^ “Julia Downloads”. julialang.org . 2021年1月26日時点のオリジナルよりアーカイブ2019年5月17日閲覧。
  125. ^ “Julia v1.7.3がリリースされました”. JuliaLang . 2022年5月25日. 2022年5月26日時点のオリジナルよりアーカイブ2022年5月26日閲覧。
  126. ^ “Darwin/ARM64 トラッキング問題 · Issue #36617 · JuliaLang/julia”. GitHub . 2020年11月11日時点のオリジナルよりアーカイブ。 2020年12月8日閲覧
  127. ^ "julia/arm.md". The Julia Language. 2021年10月7日. 2022年5月15日時点のオリジナルよりアーカイブ2022年5月15日閲覧。ARMの既知の問題の一覧が利用可能です。
  128. ^ “JuliaGPU”. juliagpu.org . 2020年5月23日時点のオリジナルよりアーカイブ2022年11月16日閲覧。約300個のパッケージが直接的または間接的にJuliaのGPU機能に依存しています。
  129. ^ “Julia on TPUs”. JuliaTPU. 2019年11月26日. 2019年4月30日時点のオリジナルよりアーカイブ2019年11月29日閲覧。
  130. ^ “Introducing: oneAPI.jl ⋅ JuliaGPU”. juliagpu.org . 2021年9月6日閲覧
  131. ^ “AMD ROCm · JuliaGPU”. juliagpu.org . 2020年6月13日時点のオリジナルよりアーカイブ2020年4月20日閲覧。
  132. ^ Giordano, Mosè (2022年9月29日). “Julia on Fugaku (2022-07-23)”. GitHub . 2022年11月8日時点のオリジナルよりアーカイブ。 2022年11月8日閲覧
  133. ^ 「PowerPCはJulia 1.12以降でTier 4に降格されます」。Juliaプログラミング言語。2025年2月18日。 2025年2月23日閲覧
  134. ^ ab 「JuliaとWaratah Seed-1衛星搭載GPSペイロード」。Juliaプログラミング言語。2024年12月13日2025年2月4日閲覧。私たちはGPS受信機ペイロードHarry v3をWaratah Seed-1 6Uキューブサットに搭載しました。[..] Juliaは、GPSペイロードコンピューターに使用したプロセッサであるRaspberry Pi CM4でも動作します。
  135. ^ 「ARMv6向けクロスコンパイル」GitHub 。 2015年5月16日閲覧#10917でこの問題が解決するはずです。ここで使用されているCPUは…です。解決しない場合は再度オープンしてください。arm1176jzf-s
  136. ^ 「Raspberry Pi 2のブートストラップ中にARMビルドが失敗する」GitHub 。 2015年5月16日閲覧。Raspberry Pi 2で動作することを(ついに)確認できました。[..] 0.4でもARMのアルファサポートを発表できると思います。
  137. ^ 「Raspberry PiのRaspbianでJuliaが利用可能」。2017年5月4日時点のオリジナルよりアーカイブ2017年6月6日閲覧。JuliaはすべてのPiバリアントで動作しますが、Pi 3の使用をお勧めします。
  138. ^ “Julia language for Raspberry Pi”. Raspberry Pi Foundation . 2017年5月12日. 2017年6月2日時点のオリジナルよりアーカイブ。 2017年6月6日閲覧
  139. ^ “RaspberryPi Zero用Juliaのビルド”. Gist . 2020年12月1日時点のオリジナルよりアーカイブ2020年8月14日閲覧。
  140. ^ “JuliaBerry: Julia on the Raspberry Pi”. juliaberry.github.io . 2020年7月8日時点のオリジナルよりアーカイブ。 2020年8月14日閲覧
  141. ^ “julia/doc/src/devdocs/build/riscv.md at master · alexfanqi/julia”. GitHub . 2024年10月9日閲覧
  142. ^ “ArduinoでJuliaベアメタルを実行する”. seelengrab.github.io . 2022年5月24日時点のオリジナルよりアーカイブ2022年5月24日閲覧。
  143. ^ Sukera (2023年7月31日). “AVRDevices.jl”. GitHub . 2023年8月5日時点のオリジナルよりアーカイブ。 2023年8月5日閲覧
  144. ^ Chen, Jiahao. "Jiahao Chen". Jiahao Chen . 2023年2月23日時点のオリジナルよりアーカイブ。 2023年2月23日閲覧
  145. ^ “『Why We Created Julia』10周年”. juliahub.com . 2022年2月16日. 2022年11月16日時点のオリジナルよりアーカイブ。 2022年11月16日閲覧
  146. ^ “ニュースレター2022年1月 - Juliaの成長統計 - Julia Computing”. juliacomputing.com . 2022年1月26日時点のオリジナルよりアーカイブ。 2022年1月26日閲覧
  147. ^ “Braket.jl の紹介 - Julia による量子コンピューティング”. Julia コミュニティ 🟣 . 2022年11月15日. 2024年6月19日時点のオリジナルよりアーカイブ2023年2月23日閲覧。Python SDK のほぼすべての機能は Julia で再実装されています。再実装されていない少数の機能については、補助パッケージ PyBraket.jl も提供しています。このパッケージを使用すると、Julia オブジェクトを Python の同等の機能に変換し、Python SDK を呼び出すことができます。
  148. ^ “Getting started with Julia on Amazon SageMaker: Step-by-step Guide” (PDF) . 2020年5月. 2024年3月9日時点のオリジナルよりアーカイブ(PDF) . 2023年2月23日閲覧
  149. ^ “Towards Using Julia for Real-Time applications in ASML JuliaCon 2022”. pretalx.com . 2022年7月27日. 2023年2月23日時点のオリジナルよりアーカイブ。 2023年2月23日閲覧
  150. ^ “Home - CliMA”. CliMA – Climate Modeling Alliance . 2023年6月18日時点のオリジナルよりアーカイブ。 2023年6月18日閲覧
  151. ^ “Julia Computing Brings Support for NVIDIA GPU Computing on Arm Powered Servers - JuliaHub”. juliahub.com (プレスリリース). 2022年11月16日時点のオリジナルよりアーカイブ。 2022年11月16日閲覧
  152. ^ 「HEPミニワークショップのためのJulia」indico.cern.ch . 2021年9月27日. 2022年8月11日時点のオリジナルよりアーカイブ2022年8月23日閲覧。JuliaとΩ _b → Ξ + _c K π の最初の観測
  153. ^ Mikhasenko, Misha (2022年7月29日). “ThreeBodyDecay”. GitHub . 2022年8月23日時点のオリジナルよりアーカイブ2022年8月23日閲覧。
  154. ^ Mikhasenko, Misha (2021年7月). 「QCD分光法のためのJulia」(PDF) . indico.cern.ch . 2022年8月23日時点のオリジナルよりアーカイブ(PDF) . 2022年8月23日閲覧.概要: Juliaは物理学のHEP解析に使用できる状態にある
  155. ^ “JuliaHEP/UnROOT.jl”. JuliaHEP. 2022年8月19日. 2024年6月19日時点のオリジナルよりアーカイブ。 2022年8月23日閲覧
  156. ^ “Julia · Search · GitLab”. GitLab . 2022年8月23日時点のオリジナルよりアーカイブ。 2022年8月23日閲覧
  157. ^ “Commits · master · sft / lcgcmake · GitLab”. GitLab . 2023年4月12日時点のオリジナルよりアーカイブ。 2022年8月23日閲覧。Juliaのバージョンを1.7.3にアップグレード
  158. ^ “Modeling Spacecraft Separation Dynamics in Julia - Jonathan Diegelman”. YouTube . 2021年3月9日. 2021年9月6日時点のオリジナルよりアーカイブ。 2021年9月6日閲覧
  159. ^ “Circuitscape/Circuitscape.jl”. Circuitscape. 2020年2月25日. 2020年7月30日時点のオリジナルよりアーカイブ。 2020年5月26日閲覧
  160. ^ “Conservation through Coding: 5 Questions with Viral Shah | Science Mission Directorate”. science.nasa.gov . 2020年5月25日時点のオリジナルよりアーカイブ。 2020年5月26日閲覧
  161. ^ “Julia in the Wild - Julia Data Science”. juliadatascience.io . 2022年9月12日時点のオリジナルよりアーカイブ。 2022年9月12日閲覧
  162. ^ 「7つの岩石質TRAPPIST-1惑星は類似の物質でできている可能性がある」。太陽系外惑星探査:太陽系外惑星。2021年1月21日。2022年10月6日時点のオリジナルよりアーカイブ。 2022年10月6日閲覧
  163. ^ “Julia in Astronomy & Astrophysics Research | Eric B. Ford | JuliaCon 2022”. YouTube . 2022年7月25日. 2022年10月6日時点のオリジナルよりアーカイブ。 2022年10月6日閲覧
  164. ^ “JuliaSpace/SatelliteToolbox.jl”. JuliaSpace. 2020年5月20日. 2021年6月16日時点のオリジナルよりアーカイブ2020年5月26日閲覧。
  165. ^ Juliaプログラミング言語(2024年10月1日)。Juliaを使った衛星群の設計 | Clement de Givry | JuliaCon 2024 。 2025年2月4日閲覧– YouTube経由。
  166. ^ Hobbs, Kerianne (2022年12月). 「アラスカの氷河、飛行、地球軌道、地球月周回宇宙、そして火星における自律飛行の年」. Aerospace America Year in Review. p. 48. 2024年6月19日時点のオリジナルよりアーカイブ。 2023年1月26日閲覧飛行試験チームは、電気推進システムと従来型燃料推進システムの両方を搭載した垂直離着陸機の実証に成功した。[無人航空機システム]は、搭載ハードウェアを用いてこれらのミッションを自律的に計画・実行することができた。Juliaプログラミング言語が組み込みハードウェア上で飛行したのはこれが初めてであり、アルゴリズムは事前にコンパイルされていた。
  167. ^ “Case Study - JuliaHub”. juliahub.com . 2023年2月10日時点のオリジナルよりアーカイブ。 2023年2月10日閲覧
  168. ^ “Pumas-AI”. Pumas-AI . 2023年2月10日時点のオリジナルよりアーカイブ。 2023年2月10日閲覧
  169. ^ “リリース v1.3.0 · FRBNY-DSGE/DSGE.jl”. GitHub . 2022年1月3日時点のオリジナルよりアーカイブ。 2022年1月3日閲覧。COVID -19ショックを考慮したDSGE推定のためのModel1002の新しいサブスペック
  170. ^ 「金融と経済のユースケース」. Juliaプログラミング言語. 2023年5月2日. 2023年5月4日閲覧
  171. ^ ab D'Cunha, Suparna Dutt (2017年9月20日). 「4人の科学者が開発した新しいプログラミング言語が、世界最大級の企業で利用されるようになった経緯」Forbes . 2022年10月1日時点のオリジナルよりアーカイブ。 2022年10月1日閲覧
  172. ^ “Julia for Election Security”. Julia Forem. 2022年9月23日. 2024年9月4日時点のオリジナルよりアーカイブ。 2022年9月27日閲覧
  173. ^ “ノーベル賞受賞者トーマス・J・サージェント - JuliaHub”. juliahub.com . 2023年2月10日時点のオリジナルよりアーカイブ。 2023年2月10日閲覧
  • Juliaのドキュメント

さらに読む

  • Nagar, Sandeep (2017). 『Juliaプログラミング入門:エンジニアと科学者向け』Springer. ISBN 978-1-4842-3171-5
  • ブザンソン、J;エデルマン、A;カルピンスキー、S;シャー、V.B (2017)。 「ジュリア: 数値コンピューティングへの新しいアプローチ」。サイアムレビュー59 (1): 65–98 . arXiv : 1411.1607CiteSeerX  10.1.1.760.8894土井:10.1137/141000671。S2CID  13026838。
  • ジョシ、アンシュル (2016). 『Julia for Data Science - Julia を味方につけ、データサイエンスの世界をゼロから探求しよう』Packt. ISBN 978-1-78355-386-0
  • トビン・A・ドリスコル、リチャード・J・ブラウン(2022年8月)。『数値計算の基礎:Julia版』SIAM出版。ISBN 978-1-611977-00-4
  • CT Kelley (2022). 『反復法による非線形方程式の解法:Juliaのソルバーと例』 SIAM. ISBN 978-1-611977-26-4
  • カリチャラン、ノエル (2021). Julia - Bit by Bit. 学部生向けコンピュータサイエンストピックス. Springer. doi :10.1007/978-3-030-73936-2. ISBN 978-3-030-73936-2. S2CID  235917112。
  • Clemens Heitzinger (2022): Algorithms with Julia、Springer、ISBN 978-3-031-16559-7。
  • Kenneth Lange (2025 年 6 月): Algorithms from THE BOOK (第 2 版)、SIAM、ISBN 978-1-61197-838-4。
Retrieved from "https://en.wikipedia.org/w/index.php?title=Julia_(programming_language)&oldid=1324083848"