view slides/20140715/slide.html @ 68:ae20b978b159

auto-Update generated slides by script
author Yasutaka Higa <e115763@ie.u-ryukyu.ac.jp>
date Thu, 29 Jan 2015 16:59:59 +0900
parents dfd2f6a3c82d
children d4e4ecc1c347
line wrap: on
line source

<!DOCTYPE HTML>

<html lang="Japanese">
<head>
	<title>プログラムのデバッグ支援(仮)</title>
	<meta charset="UTF-8">
	<meta name="viewport" content="width=1274, user-scalable=no">
	<meta name="generator" content="Slide Show (S9)">
	<meta name="author" content="Yasutaka Higa">
	<link rel="stylesheet" href="themes/ribbon/styles/style.css">
	<style>
		#Cover H2 {
			color:#FFF;
			text-align:center;
			font-size:70px;
			}
	</style>
</head>
<body class="list">
	<header class="caption">
		<h1>プログラムのデバッグ支援(仮)</h1>
		<p>Yasutaka Higa</p>
	</header>
	<div class="slide bg" id="Cover"><div>
		<section>
			<header>
				<h2>プログラムのデバッグ支援(仮)</h2>
			</header>
			
			<img src="pictures/" alt="">
			<!-- © John Carey, http://fiftyfootshadows.net/ -->
		</section>
	</div></div>

<!-- todo: add slide.classes to div -->
<!-- todo: create slide id from header? like a slug in blogs? -->

<div class="slide" id="2"><div>
		<section>
			<header>
				<h1 id="section">研究目的(仮)</h1>
			</header>
			<!-- === begin markdown block ===

      generated by markdown 1.1.1 on Ruby 2.1.2 (2014-05-08) [x86_64-darwin13.0]
                on 2014-08-05 16:09:30 +0900 with Markdown engine kramdown (1.3.3)
                  using options {}
  -->

<!-- _S9SLIDE_ -->

<ul>
  <li>プログラミングにおいて、ソースコードを改変するとプログラムの挙動も変わる</li>
  <li>挙動は予想されていた挙動と異なる場合があり、それはバグとなる</li>
  <li>ソースコードの改変前と改変後の挙動を比較することで、デバッグの支援になるのでは無いか</li>
  <li>異なるバージョンのプログラムを同時に実行できるデバッグ支援ツールを開発する</li>
</ul>



		</section>
</div></div>

<div class="slide" id="3"><div>
		<section>
			<header>
				<h1 id="section-1">近況報告</h1>
			</header>
			<!-- _S9SLIDE_ -->

<ul>
  <li>オープンキャンパスは土曜日です</li>
  <li>ハッカーズチャンプルー行ってきました</li>
  <li>glibc の printf ちょっと見たりしました</li>
  <li>parallel debugger の 例探しは難航中</li>
  <li>Reflection without remorse を一通り流し読み</li>
</ul>



		</section>
</div></div>

<div class="slide" id="4"><div>
		<section>
			<header>
				<h1 id="parallel-debugger-sample-session">parallel debugger sample session</h1>
			</header>
			<!-- _S9SLIDE_ -->

<ul>
  <li>Cerium を clone してみました</li>
  <li>debugger なので実行できるコードを考える</li>
  <li>あるならそれで bisect できる
    <ul>
      <li>VCS にさせるべきなのかな、と思ってしまったり</li>
    </ul>
  </li>
  <li>もっと内部的な処理が分かる実行コード?
    <ul>
      <li>それってもうテストなのでは</li>
    </ul>
  </li>
  <li>うーん、ってなってます</li>
</ul>



		</section>
</div></div>

<div class="slide" id="5"><div>
		<section>
			<header>
				<h1 id="reflection-without-remorse">reflection without remorse</h1>
			</header>
			<!-- _S9SLIDE_ -->

<ul>
  <li>所感まとめ
    <ul>
      <li>モノイドに対する演算で右結合だと遅いやつ</li>
      <li>それを右結合で書かれても CPS にすることで左結合にしよう</li>
      <li>データ型の変換で CPS に変えることができそう</li>
    </ul>
  </li>
  <li>適応例
    <ul>
      <li>list の ++ とか</li>
      <li>Monad にも適用可能っぽいです</li>
    </ul>
  </li>
</ul>



		</section>
</div></div>

<div class="slide" id="6"><div>
		<section>
			<header>
				<h1 id="reflection-without-remorse---diff-list">reflection without remorse - diff list</h1>
			</header>
			<!-- _S9SLIDE_ -->

<ul>
  <li>hg/Members/atton/haskell/reflection_without_remorse にあります</li>
  <li>DiffList を定義</li>
  <li>リストを取ってリストを返す</li>
</ul>

<pre><code>type DiffList a = [a] -&gt; [a]
</code></pre>



		</section>
</div></div>

<div class="slide" id="7"><div>
		<section>
			<header>
				<h1 id="reflection-without-remorse---abs-and-rep">reflection without remorse - abs and rep</h1>
			</header>
			<!-- _S9SLIDE_ -->

<ul>
  <li>List から DiffList にする rep と DiffList から List にする abs</li>
</ul>

<pre><code>absFromDiffList :: DiffList a -&gt; [a]
absFromDiffList a = a []
rep :: [a] -&gt; DiffList a
rep = (++)
</code></pre>



		</section>
</div></div>

<div class="slide" id="8"><div>
		<section>
			<header>
				<h1 id="reflection-without-remorse---concat-diffliset">reflection without remorse - concat diffliset</h1>
			</header>
			<!-- _S9SLIDE_ -->

<ul>
  <li>difflist の concat は 関数合成</li>
  <li>difflist 最後に abs されるまで ++ は評価されないので速い</li>
  <li>実行例はリポジトリで</li>
</ul>

<pre><code>(+++) :: DiffList a -&gt; DiffList a -&gt; DiffList a
(+++) = (.)
</code></pre>

<!-- vim: set filetype=markdown.slide: -->
<!-- === end markdown block === -->

		</section>
</div></div>


	<!--
		To hide progress bar from entire presentation
		just remove “progress” element.
		-->
	<div class="progress"><div></div></div>
	<script src="scripts/script.js"></script>
	<!-- Copyright © 2010–2011 Vadim Makeev, http://pepelsbey.net/ -->
</body>
</html>