タグ

ブックマーク / www.sampou.org (5)

  • The monad laws

    モナド則 三つの基則 「失敗」は付けたし 出口はない Zero と Plus 要約 このチュートリアルではいままで、技術的な議論を避けてきました。しかし、 モナドについて考えるべき技術的な要点が2、3あります。モナド演算は、 「モナド公理」として知られている、いくつかの法則群に従わなければ なりません。これらの法則は Haskell のコンパイラが強制するものでは ありません。したがって、すべての Monad のインスタンスと 宣言したものが、これらの法則に従うことを保証するのはプログラマ自身です。 Haskell の Monad クラスは、まだ見ていませんが、最小限の定義 以上にいくつかの関数を含んでいます。結局、多くのモナドは標準のモナド則 以外の規則にも従っています。Haskell のクラスにはこうした拡張されたモナド をサポートするためのものがあります。 三つの基則 モナドの概

  • Programming:玉手箱

    ちょっとしたお題やパズル,クイズなどを集めたものです. リストの長さの比較pos+連続した n 要素のリストのリストGraph の統合木の統合集合の統合xzipリストをグループ化するn 番飛ばし毎にグループに分けるn 個ずつグループ化する 組合せ論的な生成関数リストの二分割の生成順列の生成重複順列の生成組合せの生成重複組合せの生成順列の生成 素因数分解既約分数拡張ユークリッドの互除法 コメントの除去コメント対応read正規表現置換words4ApacheLog文字列の先頭から等しい文字列を抜き出すお約束の末尾再帰版文字列から一致する部分文字列を抽出するCSV自分自身のソースコードをプリントするプログラム文字列 C が文字列 A, B から構成されているか 関数型表上向きにも辿れる木平衡木赤黒木AVL 木データタイプから再帰を分離探索深さ優先探索幅優先探索Graphical Sequence

  • A Gentle Introduction to Haskell, Version 98

    Paul Hudak, Yale University John Peterson, Yale University Joseph Fasel, Los Alamos National Laboratory September 28, 1999 翻訳:山下 伸夫 <nobsun@sampou.org> これは、「やさしい Haskell 入門 (バージョン98)」のHTMLバージョンです。 目次要約 イントロダクション 値、型、その他の有用な概念 関数 case 式とパターン照合 型クラスとオーバローディング 再び、型について 入出力 標準の Haskell クラス モナド 数 モジュール 型付けの落し穴 配列 この先の学習 参考文献 目次 このHaskell Tutorialのマスター文書は、 haskell.orgにあります。このレポー トの訂正や変更はすべてそこに反映されるようになっ

  • The Haskell 98 Language Report

    Simon Peyton Jones [editor], Microsoft Research, Cambridge Lennart Augustsson, Sandburst Corporation Dave Barton, Intermetrics Brian Boutel, Victoria University of Wellington Warren Burton, Simon Fraser University Joseph Fasel, Los Alamos National Laboratory Kevin Hammond, University of St. Andrews Ralf Hinze, University of Bonn Paul Hudak, Yale University John Hughes, Chalmers University of Techn

  • モナドのすべて Haskell におけるモナドプログラミングの理論と実践に関する包括的ガイド

    モナドのすべて Haskell におけるモナドプログラミングの理論と実践に関する包括的ガイド Version 1.1.0 このチュートリアルは、モナドの概念とその関数プログラミングにおける応用に ついて、初中級の Haskell プログラマにわかりやすく、利用価値があるような 解説をすることを旨としています。読者は Haskell になれていることを前提と しますが、モナドに関する経験は要求していません。このチュートリアルは、多 くの題材をカバーしています。後半のセクションでは、前半の題材をよく理解し ていることを前提とします。順をおって、モナドプログラミングを例示するため のサンプルコードがたくさん用意されています。一読で、すべての題材を吸収し ようというのはお勧めできません。 このチュートリアルは 3 つの部分で構成されています。最初の部分は、 関数プログラミングにおけるモナドの基

  • 1