view anatofuz.tex @ 4:1035c41fc2db

add abstract
author Takahiro SHIMIZU <anatofuz@cr.ie.u-ryukyu.ac.jp>
date Thu, 25 Oct 2018 18:38:14 +0900
parents 154c6acc0e23
children 06f3183ef6c3
line wrap: on
line source

% withpage: ページ番号をつける (著者確認用)
% english: 英語原稿用フォーマット
\documentclass{ipsjprosym}
%\documentclass[withpage,english]{ipsjprosym}

\usepackage[dvips]{graphicx}
\usepackage{latexsym}

\begin{document}

% Title, Author %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\title{CbCを用いたPerl6処理系}

%\affiliate{IPSJ}{情報処理学会}
\affiliate{IERYUKYU}{琉球大学工学部情報工学科}

\author{清水 隆博}{Takahiro SHIMIZU}{IERYUKYU}[anatofuz@cr.ie.u-ryukyu.ac.jp]
\author{河野 真治}{Shinji KONO}{IERYUKYU}[kono@ie.u-ryukyu.ac.jp]

%概要
\begin{abstract}
スクリプト言語であるPerl5の後継言語としてPerl6が現在開発されている.
Perl6は設計と実装が区分されており様々な処理系が開発されている.現在主流なPerl6はRakudoと言われるプロジェクトである.
RakudoではPerl6自体をNQP(NotQuitPerl)と言われるPerl6のサブセットで記述し,NQPをVMが解釈するという処理流れになっている.
このVMは任意のVMが選択できるようになっており,現在はMoarVM,JavaVM,Javascriptが動作環境として選択可能である.
主に利用されているVMにCで書かれたMoarVMが存在する.
MoarVMはJITコンパイルなどをサポートしているが,全体的な起動及び処理速度がPerl5と比較し非常に低速である.
この問題を解決するためにContinuation based C (CbC)という言語を一部用いる.
本論文ではMoarVMの一部をCbCを用いて書き直し,実際にどのようなパフォーマンスが出るかを報告する.


\end{abstract}

\begin{jkeyword}
プログラミング言語, コンパイラ, CbC, Perl6, MoarVM
\end{jkeyword}

\maketitle

% Body %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\section{研究目的}
現在も広く使われているスクリプト言語PerlことPerl5の後継言語としてPerl6が開発されている.
Perl6は設計と実装が区分されており,現在広く使われている実装はRakudoと呼ばれるプロジェクトである.
Rakudoの実装はPerl6コンパイラ開発者用のサブセットであるNQP(NotQuitPerl)で実装されているPerl6の事を指す.
現在RakudoはNQPを解釈できる実行環境として,C言語で実装されたMoarVM,JVM,Javascript上で動作する様に開発されている.
Rakudoとして主に使われている処理系はMoarVMであるが,MoarVMの処理時間がPerl5などの多くのスクリプト言語と比較し非常に低速である.
その為現在日本国内ではPerl6を実務として利用するケースは概ね存在しない.
この問題を解決するために現在当研究室で開発しているContinuation Based C(以下CbC)を用いて改良を行う.
本稿ではまずPerl6の特徴及び実装について述べ,次に改良を行うMoarVMの一連の処理流れについて述べる.
そして今回改良した一部分と今後の展開について記す.


\section{論文1ページ目の情報}

論文の1ページ目には,タイトル,著者名,著者所属,概要,キーワードが配置される.
それぞれ,
\begin{itemize}
\item \verb|\title|
\item \verb|\author|
\item \verb|affiliate|
\item \verb|\begin{abstract}|~\verb|\end{abstract}|
\item \verb|\begin{jkeyword}|~\verb|\end{jkeyword}|
\end{itemize}
によって記述する.
その後,\verb|\maketitle| コマンドによってそれらの情報が配置される.

以下,通常の論文と同様の形式で記述して下さい.

\section{まとめ}

本テンプレートでは,プログラミング・シンポジウム向けの原稿を,
\LaTeX を用いて準備する方法についてごく簡単に示した.

本テンプレートに関する質問・バグ報告は,
第56回プログラミングシンポジウム予稿集担当(松崎公紀)\verb|matsuzaki.kiminori@kochi-tech.ac.jp|
まで連絡下さい.

\begin{acknowledgment}
謝辞が必要であれば,ここに書く.
\end{acknowledgment}

% BibTeX を使用する場合 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% \bibliographystyle{ipsjsort}
% \bibliography{ref}

% BibTeX を使用しない場合
\begin{thebibliography}{9}
\bibitem{latex} 奥村晴彦, 黒木裕介: \textbf{LaTeX2e美文書作成入門}. 技術評論社, 2013.
\end{thebibliography}

\end{document}