Julia(ジュリア)とは、科学計算処理向けの高水準/動的プログラミング言語です。比較的新しい言語で、「JITコンパイラによる高速性」「外部ライブラリ連携」などの特徴があります。

オープンソースの言語/Juliaとは

Julia(ジュリア)とは、科学計算処理向けの高水準/動的プログラミング言語です。比較的新しい言語で、「JITコンパイラによる高速性」「外部ライブラリ連携」などの特徴があります。

基本情報

概要

Julia(ジュリア)とは、科学計算処理向けの高水準/動的プログラミング言語です。比較的新しい言語で、「JITコンパイラによる高速性」「外部ライブラリ連携」などの特徴があります。

基本説明

Juliaは、「実行速度」と「記述性」の両立を目指した科学技術計算向けプログラミング言語です。

オフィシャルサイトでは、『他の技術計算環境のユーザに馴染みのある構文を備えた、高レベル・高パフォーマンスな技術計算のための動的プログラミング言語』と説明されています。

科学技術計算向け言語 とは

専門的な科学技術分野(線形代数、数値解析、統計解析など)での計算処理に特化させた言語です。多くの専門的計算用ライブラリが用意され、計算処理をシンプルに記述できるように設計されています。

「MATLAB」や「numpy/scipy」と同じような感覚で扱え、多次元配列などを簡単に扱えます。

Juliaは、「LLVMコンパイラフレームワーク」を用いて「C言語」「C++」「Scheme」などで実装されています。ほとんどの標準ライブラリは独自実装です。

経緯

2012年2月、オープンソース公開されました。

TOPに戻る

主な特徴

言語仕様

主な言語仕様ポイント

・スクリプト言語
・動的型付け
・「オブジェクト指向」と「関数型プログラミング」のマルチパラダイム
・オプショナル型チェック
・関数の引数での型チェック機能
・構文は「MATLAB」ベース
・「Perl」「Python」「Ruby」「Lisp」などの要素を取り入れ改良
・コンパイルは実行時にLLVMを用いて行われる

高速性(JITコンパイラ)

Julia最大の特徴は「実行速度の高速性」です。

実行時コンパイル(JIT)

JuliaのJITコンパイラは、コード実行前に型推論/最適化を行い、その後コードを実行します。型推論の結果、型が決定できる部分では強力な最適化を行い、曖昧性が残る部分では実行時の型に合わせて実行するようになっています。この仕組より、ネイティブコンパイル言語並の高速動作を行えます。

実行速度比較

・スクリプト言語最速といわれる「JavaScript」を上回る速度
・「R言語」「MATLAB」の数百倍高速
・「Python」の数十倍高速
・「Go」「Java」と良い勝負ができるレベル
・「Fortran」「C言語」の半分程度の速度
などの報告があがっています。

立ち上がりがかなり遅い

「他のスクリプト言語よりも、立ち上がりがかなり遅い」という報告もあります。
※今後の開発で、さらなる改善も期待できます。

分散コンピューティング

Juliaは、「並列処理」や「分散(クラウド)コンピューティング」も視野に入れて設計が行われています。

外部ライブラリ連携

Juliaは、「歴史が浅いためライブラリ数が少ない」という問題を、外部ライブラリ連携でカバーできるようになっています。
・「C言語」「Fortran」のライブラリをラッパーなしで直接呼び出し可能
・「Python」「PyLab」「iPython Notebook」のためのインターフェース

TOPに戻る

同様製品

同様な機能を提供する製品として、次のようなものがあります。

オープンソース製品:「R言語」「Python」など。

TOPに戻る

ライセンス情報

Juliaのライセンスは「MIT License」です。

詳細について、こちらを参照ください。
→GitHub →JuliaLang/julia →LICENSE.md

TOPに戻る

ダウンロード

→「Julia」オフィシャルサイト →downloads

TOPに戻る

参考元サイト

・「Julia」オフィシャルサイト
・Qiita →科学計算が得意な言語Juliaを試してみた
・Wikipedia →Julia (プログラミング言語)
・SlideShare →Juliaを使った機械学習
・りんごがでている →Julia現状確認 (言語編)
・プログラマーズ雑記帳 →Julia : スクリプト言語最速? 手軽さと速さを求めた科学技術計算向け言語
・Python使いをJuliaに引き込むサンプル集

TOPに戻る

※定期的にメンテナンスを実施しておりますが、一部情報が古い場合がございます。ご了承ください。

Julia最新TOPICS

最新情報はありません。

Julia最新CLOSEUPコラム

イベント情報

無料資料プレゼント

AI技術の方向性と企業の活用シナリオ

講演資料を見るには、 プライバシーポリシーに同意して、送付先メールアドレスをご入力しご請求ください。

またご入力いただきました情報は、当該資料の作成・提供企業とも共有させていただき、当社及び各社のサービス、製品、セミナー、イベントなどのご案内に使用させていただきます。

本資料を見るには次の画面でアンケートに回答していただく必要があります。



  • 20171130-netapp サイド
  • OSSNEWSに広告を掲載しませんか?

facebook

twitter