コンテンツにスキップ

英文维基 | 中文维基 | 日文维基 | 草榴社区

「Julia (プログラミング言語)」の版間の差分

出典: フリー百科事典『ウィキペディア(Wikipedia)』
削除された内容 追加された内容
Cewbot (会話 | 投稿記録)
m Cewbot: ウィキ文法修正 69: ISBNの構文違反
124行目: 124行目:
* {{Cite journal|author1=Bezanson, J|author2=Edelman, A|author3=Karpinski, S|author4=Shah, V. B|year=2017|title=Julia: A fresh approach to numerical computing|publisher=SIAM Review|volume=59|issue=1|pages=65-98}}
* {{Cite journal|author1=Bezanson, J|author2=Edelman, A|author3=Karpinski, S|author4=Shah, V. B|year=2017|title=Julia: A fresh approach to numerical computing|publisher=SIAM Review|volume=59|issue=1|pages=65-98}}
* Eric Darve and Mary Wootters: "Numerical Linear Algebra with Julia", SIAM, ISBN 978-1-611976-54-0 (2021).
* Eric Darve and Mary Wootters: "Numerical Linear Algebra with Julia", SIAM, ISBN 978-1-611976-54-0 (2021).
* Tobin A Driscoll and Richard J. Braun: "Fundamentals of Numerical Computation: Julia Edition", SIAM, ISBN:978-1-611977-00-4 (2022年8月).
* Tobin A Driscoll and Richard J. Braun: "Fundamentals of Numerical Computation: Julia Edition", SIAM, ISBN 978-1-611977-00-4 (2022年8月).
* C. T. Kelley: "Solving Nonlinear Equations with Iterative Methods: Solvers and Examples in Julia",SIAM,ISBN:978-1-611977-26-4(2022年)。
* C. T. Kelley: "Solving Nonlinear Equations with Iterative Methods: Solvers and Examples in Julia",SIAM,ISBN 978-1-611977-26-4(2022年)。


===和書===
===和書===

2022年9月29日 (木) 00:02時点における版

Julia
Julia
Juliaのロゴ
パラダイム オブジェクト指向プログラミング関数型プログラミング命令型プログラミング、マルチパラダイムプログラミング、配列プログラミング、メタプログラミング手続き型プログラミング並列計算多重ディスパッチ ウィキデータを編集
登場時期 2012年 (13年前) (2012)
開発者 Jeff Bezanson、Stefan Karpinski、Alan Edelman、Viral B. Shah ウィキデータを編集
最新リリース 1.8.1/ 2022年9月6日 (2年前) (2022-09-06)[1]
型付け 付随型アノテーション及び型推論動的プログラミング言語
影響を受けた言語 MATLABPythonLISPC言語FORTRANNumPyLuaR言語SchemePerlRuby ウィキデータを編集
プラットフォーム LinuxMicrosoft WindowsmacOS ウィキデータを編集
ライセンス MIT License
ウェブサイト julialang.org ウィキデータを編集
拡張子 jl ウィキデータを編集
テンプレートを表示

Julia(ジュリア)は、汎用プログラミング言語水準から高度の計算科学数値解析水準まで対処するよう設計された高水準言語かつ仕様記述言語、及び動的プログラミング言語である[2][3][4]並行計算並列計算分散コンピューティング、及びAdapter パターン不要でC言語FORTRANへのForeign function interfaceに対応している。ガベージコレクション[5]を行い先行評価を用いるほか、浮動小数点数計算、線型代数学高速フーリエ変換正規表現照合のライブラリを利用できる。

LLVMコンパイラフレームワークを用いてC言語C++Schemeで組まれており、標準ライブラリの殆どは独自に実装された[6]。注目すべき特徴は速度であり、完全に最適化したC言語(PythonやR言語よりも桁違いに速い場合が多い)と比べて計算パフォーマンスの低下は半分程度であると知られている[6]。 一方で実行時には、JITコンパイラによって処理されるため、表面的にはPythonの様にインタプリタとして動作する。

特徴

コード例

Hello world

JuliaではHello worldを次のように書く。

println("Hello, World")

行列積

次のコードはJuliaで書いた行列A、Bの行列積である。

A = randn(10, 10)
B = randn(10, 10)
C = A*B

このように、MATLABや、PythonのライブラリであるNumPyなどと同様に簡潔に数学的な操作を書くことができるうえに、行列積を含めて多くの機能がC言語Fortranと同程度の速度で動作する [7]


歴史

2009年に開発が始まり、2012年2月にオープンソースとして公表された[8][9]

2018年8月8日にバージョン1.0がリリースされ、[10][11][12]2020年8月1日にバージョン1.5がリリースされた[13]

2018年12月、開発者の3人がSIAM(アメリカ工業及び応用数学会)によるJ.H.Wilkinson 賞を受賞したことが発表された[14]

関連項目

脚注

  1. ^ Download Julia”. julialang.org. 2022年2月10日閲覧。
  2. ^ The Julia Language”. 2014年1月17日閲覧。
  3. ^ Bryant, Avi (2012年10月). “Matlab, R, and Julia: Languages for data analysis”. O'Reilly Strata. 7 February 2013閲覧。
  4. ^ Krill, Paul. “New Julia language seeks to be the C for scientists”. InfoWorld. 7 February 2013閲覧。
  5. ^ Suspending Garbage Collection for Performance...good idea or bad idea?”. 2017年5月25日閲覧。
  6. ^ a b Julia: A Fast Dynamic Language for Technical Computing” (PDF) (2012年). 2014年1月17日閲覧。
  7. ^ Basic Comparison of Various Computing Languages” (2011年1月5日). 2022年1月5日閲覧。
  8. ^ Why We Created Julia” (2012年2月). 7 February 2013閲覧。
  9. ^ Gibbs, Mark (2013年1月9日). “Gear head”. Network World. 7 February 2013閲覧。
  10. ^ Julia 1.0”. The Julia Language (2018年8月8日). 2018年8月12日閲覧。
  11. ^ プログラミング言語「Julia 1.0」リリース”. OSDNマガジン (2018年8月8日). 2018年8月12日閲覧。
  12. ^ MIT-created programming language Julia 1.0 debuts”. MIT News (2018年8月27日). 2018年9月1日閲覧。
  13. ^ Download Julia”. julialang.org. 2020年8月10日閲覧。
  14. ^ Julia language co-creators win James H. Wilkinson Prize for Numerical Software”. MIT News (2018年12月26日). 2021年12月19日閲覧。

参考文献

洋書

  • Nagar, Sandeep (2017). Beginning Julia Programming-For Engineers and Scientists. Springer 
  • Bezanson, J; Edelman, A; Karpinski, S; Shah, V. B (2017). Julia: A fresh approach to numerical computing. 59. SIAM Review. pp. 65-98. 
  • Eric Darve and Mary Wootters: "Numerical Linear Algebra with Julia", SIAM, ISBN 978-1-611976-54-0 (2021).
  • Tobin A Driscoll and Richard J. Braun: "Fundamentals of Numerical Computation: Julia Edition", SIAM, ISBN 978-1-611977-00-4 (2022年8月).
  • C. T. Kelley: "Solving Nonlinear Equations with Iterative Methods: Solvers and Examples in Julia",SIAM,ISBN 978-1-611977-26-4(2022年)。

和書

  • Joshi, Anshul 著、石井一夫、岩中公紀、太田博三、大前奈月、兼松正人、古徳純一、菅野剛、高尾克也、中村和敬 訳『Juliaデータサイエンス―Juliaを使って自分でゼロから作るデータサイエンス世界の探索』NTS、2017年(原著2016年)。 
  • Kamiński, Bogumił、Szufel, Przemysław 著、中田秀基 訳『Juliaプログラミングクックブック 言語仕様からデータ分析、機械学習、数値計算まで』オライリー・ジャパン、2019年10月。 
  • 進藤裕之, 佐藤建太:「1から始める Juliaプログラミング」、コロナ社、ISBN 978-4339029055(2020年3月26日)。
  • 石井一夫:「基礎から学ぶJulia  基本文法からデータサイエンスまで」、SCC(エスシーシー)、ISBN 978-4886470225(2021年1月25日)。
  • 永井佑紀:「1週間で学べる! Julia数値計算プログラミング」、講談社 (KS情報科学専門書)、ISBN 978-4065282823(2022年6月23日)。

外部リンク

  • 公式ウェブサイト
  • The Julia Manual
  • Tobin A. Driscoll and Richard J. Braun: "Fundamentals of Numerical Computation" ※ Julia version, 原著の第6章まで, 2020年夏版。
  • 佐藤純一, 鷲沢嘉一「動的プログラミング言語Juliaの紹介」『映像情報メディア学会誌』第71巻第1号、映像情報メディア学会、2017年、74-77頁、doi:10.3169/itej.71.74ISSN 1342-6907NAID 130007633918 
  • 永井佑紀:「物理で使う数値計算入門:Julia言語による簡単数値計算」
  • Julia Computing Receives DARPA Award to Accelerate Electronics Simulation by 1,000x(HPCWire誌記事、2021年3月5日)
  • Julia in physicsでのチュートリアル講演