Mercurial > hg > Papers > 2019 > anatofuz-thesis
diff paper/chapter3.tex @ 86:3bab40636107
update
author | anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp> |
---|---|
date | Mon, 18 Feb 2019 23:47:20 +0900 |
parents | 0118da5b64f4 |
children | 0bdadb2a7355 |
line wrap: on
line diff
--- a/paper/chapter3.tex Mon Feb 18 21:51:47 2019 +0900 +++ b/paper/chapter3.tex Mon Feb 18 23:47:20 2019 +0900 @@ -47,7 +47,7 @@ 現在はMoarVMの他にJVMも動作環境として選択可能であるが、 JVM側にはMoarVMと比較して実装された機能が少ないなどの特徴がある。 MoarVMそのものはPerl6やNQPプログラムを直接は評価する事が出来ない。 -従って、 NQP及びPerl6で書かれているRakudoをソースコードからビルドする際は、 予めNQPインタプリタであるコマンドのnqpをビルドする必要が存在する。 +従って、 NQP及びPerl6で書かれているRakudoをソースコードからビルドする際は、 予めNQPインタプリタであるコマンドの小文字のnqpをビルドする必要が存在する。 Rakudoのビルド時にはこのnqpと、 nqpが動作するVMを設定として与える必要がある。 この両者を指定しない場合、 ビルド時に動的にNQP、 MoarVMのソースコードをダウンロードし自動的にビルドを行う。 実際にNQPで記述されたRakudoの実装の一部をソースコード\ref{nqp_on_rakud}に示す。 @@ -63,10 +63,10 @@ MoarVMはC言語で実装されており、 レジスタマシンである。 MoarVMはNQPやPerl6から与えられたMoarVMバイトコードを評価する。 -MoarVM自体の改良は現在も行われているが、 開発者の多くは新機能の実装などを中心に行っている。 -速度上昇を目指したプロジェクトも存在はするが、 介入する余地があると考えられる。 -また内部ではLuaJitというJITコンパイル用のライブラリを利用しているが、 JITに対して開発者チームの力が注がれていない。 -その為、 本研究ではJITや速度上昇を最終的な目標として考え、 速度上昇までに必要なモジュール化などの実装を行う。 +%MoarVM自体の改良は現在も行われているが、 開発者の多くは新機能の実装などを中心に行っている。 +%速度上昇を目指したプロジェクトも存在はするが、 介入する余地があると考えられる。 +%また内部ではLuaJitというJITコンパイル用のライブラリを利用しているが、 JITに対して開発者チームの力が注がれていない。 +%その為、 本研究ではJITや速度上昇を最終的な目標として考え、 速度上昇までに必要なモジュール化などの実装を行う。 \section{NQP} NQPとはRakudoにおけるPerl6の実装に利用されているプログラミング言語である。