TOPSoftware > JuliaとPython、それぞれの特長は(前)

Software

JuliaとPython、それぞれの特長は(前)

2019/07/30

Serdar Yegulalp InfoWorld

 Juliaは、こうした目標を次のような形で実現している。

  • インタープリタではなくコンパイル方式:実行時の速度アップのために、LLVMのコンパイラ基盤の枠組みを使ったJITコンパイルを行う。最高では、C言語に近いほどの速度が出る。
  • インタラクティブ:Pythonと同じようなREPL(対話型のコマンドライン環境)が使える。1回限りのちょっとしたスクリプトやコマンドを、そのまま入力して実行できる。
  • 構文が分かりやすい:簡潔ながらも表現力があって強力という点はPythonに似ている。
  • 動的型付けと静的型付けの特長を兼ね備えている:「32ビット符号なし変数」といった型を明示的に指定できるほか、型の階層構造を使って、個別の型の変数を汎用的に扱う方法もある。例えば、引数に整数を取る関数を、ビット数や符号の有無を指定しない形で作成できる。また、型指定は、必要ない状況では完全に省略してもよい。
  • Python、C言語、Fortranのライブラリを呼び出せる:C言語やFortranで作られた外部ライブラリを直接使える。また、PyCallライブラリを使ってPythonのコードを呼び出したり、PythonとJuliaの間でデータを共有したりもできる。
  • メタプログラミングをサポートしている:LISPのような言語を思い起こさせる方法により、Juliaのコードで別のJuliaのコードを生成したり、自らのコードを改変したりできる。
  • フル装備のデバッガがある:Julia 1.1で導入されたデバッガを使って、ローカルのREPLでコードを実行し、ステップ実行、変数の監視、ブレークポイントの設定などを行える。コードで生成した関数のステップ実行などの細かな作業にも対応している。
翻訳:内山卓則=ニューズフロント

↑ページ先頭へ