タグ

関連タグで絞り込む (0)

  • 関連タグはありません

タグの絞り込みを解除

ProgrammingとhaskellとHaskellに関するclavierのブックマーク (48)

  • Programming Haskell Chapter8

    The document describes how to build a parser for Backus-Naur Form (BNF) grammars in Haskell using the attoparsec parsing library. It defines types and parsers to represent BNF syntax, rules, expressions, lists and terms. The parsers use functions like spaces, string, text from attoparsec to parse individual components and combine them using operators like <*>, <|> to build up the full BNF grammar

    Programming Haskell Chapter8
  • 右も左も分かる再帰 - あどけない話

    「函数プログラミングの集い」のチュートリアル資料を作成するためのメモ。リストに対する再帰を2つに分類することで理解する。 再帰 関数プログラミングでは、繰り返しを再帰で実現する。入力がリストである関数を実装するとする。この種の関数は、出力の種類により以下の2つに分類できる。 同じ順番のリストを作る 数値などを作る。あるいは逆順のリストを作る。 リストからリストを作る再帰 例として、(++)、concat、map、filter の利用例と実装を示す。 (++) (++) は連結(append)関数。 [1,2] ++ [3,4,5] → [1,2,3,4,5] 実装はこう。 (++) :: [a] -> [a] -> [a] (++) [] ys = ys (++) (x:xs) ys = x : (xs ++ ys) concat concat は、リストのリストをリストに平坦化する。 c

    右も左も分かる再帰 - あどけない話
  • エラーハンドリング勉強会で発表してきました - Yet Another Ranha

    発表資料はココで : http://ranha.kerox.info/start_exception.pdf 全体構成は3部です。 しかし、そのうち1つは、Exceptional C++とか(何か聞く所に依るともっと適切ながあるらしいですが)読むと例外安全とか例外中立を一々気にする姿勢について分かるし良いのではないでしょうか、ということの紹介みたいなものなので、実質2つです。 Haskellのパートは,StackのPushを何も気にせず代数的データ構造で表現すると data Stack a = Empty | Push a (Stack a) となって、このPushの型が -- Push :: a -> Stack a -> Stack a Stack aというEmptyであるかもしれない型を返すのが良くない。 更に、PopってPushの逆操作だからーということで pop :: Stac

    エラーハンドリング勉強会で発表してきました - Yet Another Ranha
  • カリー化と部分適用の違いと誤用

    kmizu @kmizu 正直に言うと、Groovy自体は別に好きでも嫌いでもないのだけど、カリー化してないのにcurryとかいうメソッド名付けてたり(標準で)、概念の無理解が目立つ部分があって、その辺がちょっと…という思いがあったり。 #scalajp #groovy 2011-09-04 19:43:37

    カリー化と部分適用の違いと誤用
  • オライリー本の原書をフリーで読む - minus9d's diary

    (2011/12/18, 2012/10/15, 2013/03/07, 2016/09/12 追記あり) 現在、オライリー・ジャパンが、Ebook Storeの商品を期間限定(2011年3月26日の午前0時まで)ですべて半額セール中。どれを買おうかと色々探しているうちに、いくつかのの原書はフリーで公開されていることに気づいたので、それをまとめておく。 O'Reilly Japan - ソフトウェアアーキテクトが知るべき97のこと →97 Things Every Software Architect Should Know - The Book - Softarch 97Things ただし、日語版には11編が追加 O'Reilly Japan - プログラマが知るべき97のこと →http://programmer.97things.oreilly.com/wiki/index.p

    オライリー本の原書をフリーで読む - minus9d's diary
  • 檜山正幸のキマイラ飼育記 - 世界で一番か二番くらいにやさしい「モナド入門」

    気まぐれと偶然となりゆきで、ここ2,3回はモナドを話題にしました。googleで「モナド」を引いてザッと眺めると、「モナドはむずかしいー」とか「モナドで挫折した」みたいな雰囲気が感じられて、説明芸人の血が少し騒ぎましたね。「なら、予備知識ゼロでモナドの説明をしてやろうじゃねーか」と。 タイトルはだいぶ煽っちゃった…… けど、ハッタリじゃないつもり…… けど、実際はどうかな? ※印刷のときはサイドバーが消えます。 内容: とりあえず、あたりさわりなくモナドの来歴を紹介する こんな課題を考えてみよう:副作用付き計算 カウントアップする関数達 カウントアップしたい意志を戻り値で伝える それでは、いったい誰がカウントアップをするのだ 関数の引数の型をCountup型にまで拡張する そして、これがモナドだ とりあえず、あたりさわりなくモナドの来歴を紹介する 今からここで説明する「モナド(monad)

    檜山正幸のキマイラ飼育記 - 世界で一番か二番くらいにやさしい「モナド入門」
  • 人力検索 - 関数型言語(プログラミング言語Scheme, Haskellなど)を勉強しようと思っています。 関数型言語の勉強方法

    関数型言語(プログラミング言語Scheme, Haskellなど)を勉強しようと思っています。 初心者にも関数型言語のメリットや考えかたがスラスラ分かる勉強の材料を教えてください。 言語の習得よりも、関数型言語の考え方の習得に重きを置いています。 例えば - このを読め - このサイトを読め のように、入門から実用レベルまできちんと筋の通ったものをお願いします。 ちなみに 以前Schemeを勉強しましたが末尾再起辺りでなんとなくうやむやになってしまいました。 あと「計算機プログラムの構造と解釈」は僕には難しすぎでした。

  • MYCOM BOOKS - 入門Haskell〜はじめて学ぶ関数型言語〜

    ■内容紹介 「実際にHaskellを利用し、プログラムを組む。」 他のプログラミング言語にも多大な影響をあたえる関数型言語。 書では純粋関数型と言われるプログラミング言語Haskell(ハスケル)について、「宣言的」とはどういうことか、またパターンマッチング、再帰的定義、モナド、静的な型付け、型クラスとインスタンス宣言などの重要な概念について、プログラムを組んでいきながら、実践的な解説を試みます。 Haskellは、それをモノにした悟り体験のために勉強をしましょう。この体験は、その後のよりよいプログラマー人生での手助けとなるはずです。 Happy Hacking with Haskell! 表紙の鳥:ケリ(チドリ目チドリ科) ●の中身を見てみる