2013-06-01から1ヶ月間の記事一覧

関係代数(3)

Template Haskell でコード生成を行うようにしたので、関係演算の実装に戻る。project 演算は、集合に対する演算と見なせば以下のように単純に実装できる。 project :: (Eq a, Eq b) => (a -> b) -> R a -> R b project f (R s) = R (S.map f s) 実例は以下…

Raspberry Pi

購入。 無線LAN 資料 http://www.lifehacker.jp/2013/02/130226raspberry_pi_guide.html Raspberry Pi初心者のためのOS別セットアップガイド http://blog.bnikka.com/raspberrypi/raspberrypi-install.html Raspberry Pi マウス・キーボード無しでインストー…

Template Haskell の例

追記: さらに更新(6/23)。 追記: ちょっと更新。Template Haskell を以下のように進めている。 生成したいボイラープレートの一部を書き下し、コンパイルが通ることを確認する。 インデントによるレイアウト規則を使っている場合は、次に行う構文木の調査の…

関係代数(2)

属性、タプル、リレーショナルを以下のように実装した。いまのところ、5つの属性からなるタプルまでしか実装していない。 type Attr = String -- | Attribute data A a = A Attr a deriving (Eq, Show) -- | Tuple data T1 a = T1 (A a) deriving (Eq, Show…

関係代数(1)

Haskell の練習に関係代数を実装しよう。関係代数は強い静的型ととても相性が良さそうだ。データ構造は色々な定義ができそうだけど、可能な限り、シンプルに行こう。 以下はまだ試行錯誤中のデータ構造。 -- 'Database in Depth', Chapter Two. -- Suppliers…