Mercurial > hg > Events > OSC2019
comparison slide.md @ 3:e43f47edd11a
update
author | Takahiro SHIMIZU <anatofuz@cr.ie.u-ryukyu.ac.jp> |
---|---|
date | Tue, 16 Apr 2019 19:04:05 +0900 |
parents | 41f44d102cf9 |
children | 8f21c0f19c09 |
comparison
equal
deleted
inserted
replaced
2:41f44d102cf9 | 3:e43f47edd11a |
---|---|
5 | 5 |
6 ## このセッションの内容 | 6 ## このセッションの内容 |
7 | 7 |
8 - Perl6の主要な実装であるRakudoの内部構造を探ります | 8 - Perl6の主要な実装であるRakudoの内部構造を探ります |
9 - Rakudoの内部で利用されているVMや, Perl6のサブセットなどについて探索します | 9 - Rakudoの内部で利用されているVMや, Perl6のサブセットなどについて探索します |
10 - スクリプト言語で主に使われているバイトコードインタプリタの気持ちになります | |
10 | 11 |
11 !SLIDE | 12 !SLIDE |
12 ## Perl6とは | 13 ## Perl6とは |
13 - 当初Perl5の時期バージョンとして開発されていたプログラミング言語 | 14 - 当初Perl5の時期バージョンとして開発されていたプログラミング言語 |
14 - 仕様と実装が分離しており, 現在はテストが仕様となっている | 15 - 仕様と実装が分離しており, 現在はテストが仕様となっている |
69 - NQPもNQPで記述されている為、 セルフビルド(自分自身で自分自身をコンパイルする)を行う | 70 - NQPもNQPで記述されている為、 セルフビルド(自分自身で自分自身をコンパイルする)を行う |
70 - NQPはPerl6の文法をベースにしているが、 制約がいくつか存在する | 71 - NQPはPerl6の文法をベースにしているが、 制約がいくつか存在する |
71 | 72 |
72 !SLIDE | 73 !SLIDE |
73 ## バイトコード | 74 ## バイトコード |
74 - Rakudo/NQPはバイトコードにスクリプトを変換する | 75 - 最近のスクリプト言語は、 ソースコードを直接解釈せず、バイトコードに変換する |
75 - バイトコードはMoarVMのドキュメントで制定されている | 76 - 主に速度改善が目的となっている |
77 - Perl6も、Rakudo/NQPはバイトコードに変換され、 バイトコードをVMが実行する | |
76 - バイトコード実行部分は、 命令に対応するバイト列を読み込み、 解釈し、 次の命令を読み取ることを繰り返す | 78 - バイトコード実行部分は、 命令に対応するバイト列を読み込み、 解釈し、 次の命令を読み取ることを繰り返す |
77 | 79 |