Yicho: A Combinator Library for Program Calculation


Overview

Yicho is a monadic combinator library for supporting declarative specification of program transformation in Haskell. The combinator library uses higher-order patterns as first-class values which can be passed as parameters, constructed by smaller ones in compositional way, and returned as values. As a result, our library provides more flexible binding than simple ones, and enables more abstract and modular description of program transformation. Our library is developed by Template Haskell, a meta extension to Haskell 98.

Documents

Download

Reference papers

  1. Zhenjiang Hu, Tetsuo Yokoyama, and Masato Takeichi, Program Optimizations and Transformations in Calculational Form (Tutorial Paper), Summer School on Generative and Transformational Techniques in Software Engineering, 4 - 8 July, 2005, Braga, Portugal.
  2. Tetsuo Yokoyama, Zhenjiang Hu, and Masato Takeichi, Design and Implementation of Deterministic Higher-order Patterns. Submitted for publication, 2005.
  3. Tetsuo Yokoyama, Zhenjiang Hu, and Masato Takeichi, Deterministic Second-order Patterns. Information Processing Letters, 89(6):309--314, March 2004.
  4. Masato Takeichi and Zhenjiang Hu Calculation Carrying Programs: How to Code Program Transformations (Invited Paper), International Sumposium on Principles of Software Evolution (ISPSE 2000), Kanazawa, Japan, 1-2 November 2000. IEEE Press.

This page is maintained by T. Yokoyama