diff Slide/Slide.html @ 7:126266fc2c30

Slide追加
author e165727 <e165727@ie.u-ryukyu.ac.jp>
date Wed, 25 Dec 2019 14:47:50 +0900
parents
children 3343b5914245
line wrap: on
line diff
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/Slide/Slide.html	Wed Dec 25 14:47:50 2019 +0900
@@ -0,0 +1,156 @@
+
+
+
+
+
+<!DOCTYPE html>
+<html>
+<head>
+   <meta http-equiv="content-type" content="text/html;charset=utf-8">
+   <title>Perl6(Raku)のサーバーを使った高速実行</title>
+
+   <meta name="generator" content="Slide Show (S9) v4.0.1 on Ruby 2.3.7 (2018-03-28) [universal.x86_64-darwin18]">
+   <meta name="author"    content="Kouki Fukuda, Shinji Kono" >
+
+<!-- style sheet links -->
+<link rel="stylesheet" href="s6/themes/projection.css"   media="screen,projection">
+<link rel="stylesheet" href="s6/themes/screen.css"       media="screen">
+<link rel="stylesheet" href="s6/themes/print.css"        media="print">
+<link rel="stylesheet" href="s6/themes/blank.css"        media="screen,projection">
+
+<!-- JS -->
+<script src="s6/js/jquery-1.11.3.min.js"></script>
+<script src="s6/js/jquery.slideshow.js"></script>
+<script src="s6/js/jquery.slideshow.counter.js"></script>
+<script src="s6/js/jquery.slideshow.controls.js"></script>
+<script src="s6/js/jquery.slideshow.footer.js"></script>
+<script src="s6/js/jquery.slideshow.autoplay.js"></script>
+
+<!-- prettify -->
+<link rel="stylesheet" href="scripts/prettify.css">
+<script src="scripts/prettify.js"></script>
+
+<script>
+  $(document).ready( function() {
+    Slideshow.init();
+
+    $('code').each(function(_, el) {
+      if (!el.classList.contains('noprettyprint')) {
+        el.classList.add('prettyprint');
+      }
+    });
+    prettyPrint();
+  } );
+
+</script>
+
+<!-- Better Browser Banner for Microsoft Internet Explorer (IE) -->
+<!--[if IE]>
+<script src="s6/js/jquery.microsoft.js"></script>
+<![endif]-->
+
+    
+
+</head>
+<body>
+
+<div class="layout">
+  <div id="header"></div>
+  <div id="footer">
+    <div align="right">
+      <img src="s6/images/logo.svg" width="200px">
+    </div>
+  </div>
+</div>
+
+<div class="presentation">
+
+  <div class='slide cover'>
+    <table width="90%" height="90%" border="0" align="center">
+      <tr>
+        <td>
+          <div align="center">
+              <h1><font color="#808db5">Perl6(Raku)のサーバーを使った高速実行</font></h1>
+          </div>
+        </td>
+      </tr>
+      <tr>
+        <td>
+          <div align="left">
+              Kouki Fukuda, Shinji Kono
+              琉球大学
+            <hr style="color:#ffcc00;background-color:#ffcc00;text-align:left;border:none;width:100%;height:0.2em;">
+          </div>
+        </td>
+      </tr>
+    </table>
+  </div>
+
+
+
+<div class='slide'>
+  
+<!-- _S9SLIDE_ -->
+<h2 id="研究背景">研究背景</h2>
+<ul>
+  <li>現在開発の進んでいる言語に Perl6 がある.
+スクリプト言語 Perl6 は任意の VM が選択できるようになっており, 主に利用されている VM に C で書かれた MoarVM が存在する.</li>
+  <li>MoarVM は JIT コンパイルなどをサポートしているが, 全体的な起動時間及び処理速度が Perl5 や Python , Ruby などの他のスクリプト言語と比較し非常に低速である.
+その為, 現在日本国内では Perl6 は実務としてあまり使われていない.</li>
+  <li>Perl6 の持つ言語機能や型システムは非常に柔軟かつ強力であるため, 実用的な処理速度に達すれば, 言語の利用件数が向上することが期待される.</li>
+</ul>
+
+
+
+</div>
+
+<div class='slide'>
+  <!-- _S9SLIDE_ -->
+<h2 id="研究概要">研究概要</h2>
+<ul>
+  <li>Perl6 の実装の一つであるRakudoは、Byte code である MoarVM と、それ上で動作する Perl6 のsubsetであるnqp (Not Quite Perl)上に構成されている。</li>
+  <li>現状のPerl6の実行はPerl6で記述されたコンパイラをloadしてJITしながら実行すること自体に時間がかかっている。</li>
+  <li>そこで、Perl6をサーバとして動作させ、実行するファイルをサーバに投げて実行する方法を検討する</li>
+</ul>
+
+
+
+</div>
+
+<div class='slide'>
+  <!-- _S9SLIDE_ -->
+<h2 id="perl6-による-abyss-の実装">Perl6 による Abyss の実装</h2>
+
+<pre><code>unit class Abyss::Server:ver&lt;0.0.1&gt;;
+use MONKEY-SEE-NO-EVAL;
+
+method readeval {
+  my $listen = IO::Socket::INET.new( 
+    :listen,
+    :localhost&lt;localhost&gt;,
+    :localport(3333) 
+    );
+  loop {
+    my $conn = $listen.accept;
+    while my $buf = $conn.read(1024) {
+      EVALFILE $buf.decode;
+    }
+    $conn.close;
+  }
+}
+</code></pre>
+
+
+
+</div>
+
+<div class='slide'>
+  <!-- _S9SLIDE_ -->
+<h2 id="todo">Todo</h2>
+
+</div>
+
+
+</div><!-- presentation -->
+</body>
+</html>