Mercurial > hg > Members > atton > seminar_slides
view slides/20150317/slide.md @ 158:6e4a6421f168
Fix slide
author | Yasutaka Higa <e115763@ie.u-ryukyu.ac.jp> |
---|---|
date | Tue, 13 Dec 2016 19:48:44 +0900 |
parents | a2b7073f68b6 |
children |
line wrap: on
line source
title: Categorical Formalization of Program Modification author: Yasutaka Higa profile: lang: Japanese # 研究目的 (Categorical Formalization) * プログラムの信頼性を向上させるために開発手法に着目する * プログラムの信頼性が変化するのはプログラムを変更した時である * 信頼性を保ちながらプログラムを変更にプログラムの変更を形式化する * Kleisli Category の Kleisli Triple と対応のある Monad によってプログラムの変更を記述する # 研究目的 (Parallel Debugger) * 本研究では Monad を用いてプログラムの変更を定義する * Monad とは meta computation とデータ構造を対応付ける手法である * プログラムの変更は変更前の動作を保存しつつ変更後の動作を追加することで表現する * 異なるバージョンのプログラムを同時に実行し、トレースを比較することでデバッグを支援する手法を提案する # 近況報告 * objective の論文をちょろっと読んだり * [Haskellでの合成可能なオブジェクトの構成とその応用](http://fumieval.github.io/papers/ja/2015-Haskell-objects.html) * 内部に State を持って Message を受け取って Action する * 継承は Object を合成して Message を受けとる Object を変えて実現 * 異なる型を表現する Delta * Haskell で書けないかちょっと調べてます # 異なる型を表現する Delta * arity を拡張する commit operator があると良い? * 複数の型を内包できるデータ構造? * extensible-effect, HList とかを見てます * 今のところデータ構造を作ったりはできてません # なんか見てたの * Haskalletor * Rank2Types * ExistentialQuantification <!-- vim: set filetype=markdown.slide: -->