コンテンツにスキップ

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

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

Julia[2][3][4]Adapter CFORTRANForeign function interface[5]

LLVMCC++Scheme[6]CPythonR[6] JITPython

[]






C



Lisp

CFortran

[]


Julia@ccall 使CFortran使Python[7]R[8]C++[9]Java[10]SQL[11][12][13][14]

C printf 
@ccall printf("Hello, World!\n"::Cstring)::Cvoid

Python とは同じ動的型付けのプログラミング言語で似ている点も多いため、相互運用がしやすい。下記は Julia から PythonCall を使用した例。[15]

using PythonCall
np = pyimport("numpy")
print(np.array([1, 2, 3], dtype=np.float32))

 JuliaCall Python  Julia Julia  Julia  Python  JuliaCall 使Julia  NumPy 使[16]
from juliacall import Main as jl
import numpy as np
np.array(jl.rand(range(10), 3, 5))

コード例[編集]

Hello world[編集]

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

println("Hello, World!")

行列積[編集]

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

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

MATLABPythonNumPyBLASOpenBLAS[17]CFortran[18]

沿[]


200920122[19][20]

2018881.0[21][22][23]2020811.5[24]

2018123SIAMH[25]

[]


Fortran

Mathematica

NumPy

SciPy

R

MATLAB

GNU Octave

[]



(一)^ Download Julia.  julialang.org. 202453

(二)^ The Julia Language. 2014117

(三)^ Bryant, Avi (201210). Matlab, R, and Julia: Languages for data analysis.  O'Reilly Strata. 201327

(四)^ Krill, Paul. New Julia language seeks to be the C for scientists.  InfoWorld. 201327

(五)^ Suspending Garbage Collection for Performance...good idea or bad idea?. 2017525

(六)^ abJulia: A Fast Dynamic Language for Technical Computing (PDF) (2012). 2014117

(七)^  PythonCall & JuliaCall, JuliaPy, (2023-10-29), https://github.com/JuliaPy/PythonCall.jl 20231030 

(八)^  RCall.jl, JuliaInterop, (2023-10-16), https://github.com/JuliaInterop/RCall.jl 20231030 

(九)^  CxxWrap, JuliaInterop, (2023-10-28), https://github.com/JuliaInterop/CxxWrap.jl 20231030 

(十)^ Julia and Spark, Better Together | juliabloggers.com. juliabloggers.com. 202469

(11)^ Foster, Claire (2023-10-23), SQLREPL.jl, https://github.com/c42f/SQLREPL.jl 20231031 

(12)^ Noh, WooKyoung (2023-10-18), Octo.jl, https://github.com/wookay/Octo.jl 20231031 

(13)^ Usage Guide · FunSQL.jl. mechanicalrabbit.github.io. 20231031

(14)^ Hood, Doug. Using Julia with Oracle Database. blogs.oracle.com. 202469

(15)^ The Julia module PythonCall - Guide · PythonCall & JuliaCall. juliapy.github.io. 202469

(16)^ The Python module JuliaCall - Guide · PythonCall & JuliaCall. juliapy.github.io. 202469

(17)^ julia/deps/openblas.mk at v1.10.4 · JuliaLang/julia. 2024610

(18)^ Basic Comparison of Various Computing Languages (201115). 202215

(19)^ Why We Created Julia (20122). 201327

(20)^ Gibbs, Mark (201319). Gear head. Network World. 201327

(21)^ Julia 1.0.  The Julia Language (201888). 2018812

(22)^ Julia 1.0.  OSDN (201888). 2018812

(23)^ MIT-created programming language Julia 1.0 debuts.  MIT News (2018827). 201891

(24)^ Download Julia.  julialang.org. 2020810

(25)^ Julia language co-creators win James H. Wilkinson Prize for Numerical Software.  MIT News (20181226). 20211219

[]

[]


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. 

Ben Lauwens and Allen B. Downey: "Think Julia: How to Think Like a Computer Scientist", Oreilly & Associates Inc, ISBN 978-1492045038 (20195).

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 (20228.

Noel Kalicharan: "Julia - Bit by Bit: Programming for Beginners", Springer, ISBN 978-3-030-73935-5 (2021).

C. T. Kelley: "Solving Nonlinear Equations with Iterative Methods: Solvers and Examples in Julia"SIAMISBN 978-1-611977-26-42022.

Clemens Heitzinger: "Algorithms with Julia", Springer, ISBN 978-3-031-16559-7 (2022).

[]


Joshi, Anshul  JuliaJulia使NTS20172016 

Kamiński, BogumiłSzufel, Przemysław  Julia 201910 

, :1 JuliaISBN 978-43390290552020326

:Julia  SCC(ISBN 978-48864702252021125

Tanmay Bakshi,   ():JuliaISBN 978-48079202112021214

1! Julia (KS)ISBN 978-40652828232022623

JuliaISBN 978-42971335042023315

JuliaISBN 978-4-06-531819-5 (202361)

JuliaISBN 978-4274230493 2023620

JuliaISBN 978-4-297-14128-8 (2024513).

[]




The Julia Manual

Tobin A. Driscoll and Richard J. Braun: "Fundamentals of Numerical Computation"  Julia version, 6, 2020

, Julia711201774-77doi:10.3169/itej.71.74ISSN 1342-6907NAID 130007633918 

Ben Lauwens and Allen Downey: "Think Julia: How to Think Like a Computer Scientist", (2018).

:使Julia

Julia Computing Receives DARPA Award to Accelerate Electronics Simulation by 1,000x(HPCWire202135)

Julia in physics

Julia  

Julila No.272024