週に一回は書きますよ 月に4つ記事を書けばノルマは満たされます。
上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。

型レベルプログラミングの会にいってきました。何度もコンパイラに整数計算を強制させるアツい会でした。

C++の可変長テンプレートを使うと型リストが異常に定義しやすくなっていて衝撃でした。cons cell定義しなくても型リストが使えます。どうしたC++。

template <typename... Args>
class Hoge {};  // Primary template.

template <>
class Hoge<> {};  // template with [].

template <typename Head, typename... Tail>
class Hoge<Head, Tail...>  {};  // template with cons.

パターンマッチさえあればcons cellは不要でしたの巻。

さらに、"..."で自明な繰り返しを表現できます。そのため、再帰せずにmapが定義できます。ちなみにこの...の使い方は他の何かの言語でもあった覚えがあります。どの言語か忘れてしまいましたが、...を複数使った時にどのようにループするかの定義があったはず。

scalaはとりあえずインストールしてみないといけないと思いました。それから正直Haskellの型レは私が慣れてなさすぎるのか全くついていけませんでした。ちょっといろいろ読まないといけない。FunDepsの何故型チェック通らないのかの下りとかが掴めませんでした。Prologと違って型がバックトラック無しに単一に解決できないといけないからかしら。

スポンサーサイト
コメント
この記事へのコメント
コメントを投稿する
URL:
Comment:
Pass:
秘密: 管理者にだけ表示を許可する
 
トラックバック
この記事のトラックバックURL
http://gusmachine.blog49.fc2.com/tb.php/439-15c3ca3e
この記事にトラックバックする(FC2ブログユーザー)
この記事へのトラックバック
管理人の承認後に表示されます
2009/04/20(月) 23:53:39 |
上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。