Julia(プログラミング言語)とは、実行速度と書きやすさの両立を目指したプログラミング言語である。
Juliaとは動的型付けのプログラミング言語である(静的型付けも使える)。スクリプト言語に分類されコンパイルは実行時にLLVMを用いて行われる。
C言語で書かれている部分はわずかで、整数の処理なども含めて言語処理系の大半はJuliaで書かれているというのも特徴。
新参言語の例にもれずライブラリは少ないが、C言語やFortranのライブラリを直接呼び出し可能にすることによって補っている。Python, R, C++, Javaを呼び出すためのライブラリもある。
公開されたのが2012年2月、バージョン1.0のリリースが2018年8月8日であり、プログラミング言語としてはかなり新しい部類に入る。開発の中心になったAlan Edelman氏はMITの教授。
科学技術計算その他もろもろを、分散コンピューティングその他もろもろでやりたいというだけでなく、C言語並みの実行速度その他もろもろも目指すという、「ぼくのかんがえたさいきょうのプログラミング言語」臭がしないでもない。
しかし、実際にスクリプト言語最速といわれてきたJavascriptやコンパイル言語であるJavaを上回る実行速度を叩きだして注目を集めた。
バージョン1.0のリリース後は、ディープラーニングなどで行列演算を高速に行う需要があることなどを背景に、2018年から2019年にかけて急速にシェアを伸ばした。
Juliaの最大の特長はその実行速度であるが、言語仕様にもいくつか特色がある。他の言語にはない仕様上の主な特色は以下の2つであろう(異論は認める)。
以上のような仕様により、数式をほぼそのままの形でソースコードに記載できる。
ただ変数 x と y の積を xy とか x y とか書くことはできず、x * y と書かねばならないという細かい弱点はある。
C言語の時代からの流れで、ほとんどのプログラミング言語が配列などにおける先頭の要素は0番として数えてきた(0オリジンという)。行列 A の1行1列目は A[0][0] だったのだ。この仕様のため現実世界の問題をプログラミングに持ち込む時にしばしば先頭を間違えて1ずれるというミスが頻発してきた。
Juliaは、最古のプログラミング言語(というか2020年現在でも科学技術関連で根強い人気がある)FORTRANにまで遡り、先頭を1番から数える1オリジンを復活させた。これにより上記の弊害が解消される。
もっとも、既存言語のプログラマーにしてみれば0オリジンで考えてきたことをJuliaに移植する時に再び1ずれるということであり、アレルギー反応を起こすプログラマーもいる。
REPLで実行する以外の環境としては、主なものでは以下のような環境がある。
Pythonで使われる対話型環境IPythonとその後継のJupyterでJuliaを使用するのがIJuliaである。
Visual Studio Codeのプラグイン。下記Junoの後継として2020年7月にバージョン1.0がリリースされた。
Juliaの統合開発環境。Atomエディタ上で動作する。公式的存在であったが、Atomエディタ開発元のGitHub社がMicrosoftに買収され、Microsoft社製Visual Studio Codeと競合するAtomエディタの開発が鈍ってきたことを受け、こちらは開発終了となっている。
掲示板
急上昇ワード改
最終更新:2024/04/25(木) 13:00
最終更新:2024/04/25(木) 13:00
ウォッチリストに追加しました!
すでにウォッチリストに
入っています。
追加に失敗しました。
ほめた!
ほめるを取消しました。
ほめるに失敗しました。
ほめるの取消しに失敗しました。