Scala Warrior and type-safe front-end development with Scala.jstakezoe
Haskellの記事です。 Applicativeを勉強していて、このブログを読んだ。 Applicative勉強中 2008年の記事なんで、何周周回遅れだよ。(´・ω・`) とかは、置いといて、記事中に、こんなコード。 ap :: (Monad m) => m (a -> b) -> m a -> m b ap = liftM2 id liftM2 :: (Monad m) => (a1 -> a2 -> r) -> m a1 -> m a2 -> m r liftM2 f m1 m2 = do { x1 <- m1; x2 <- m2; return (f x1 x2) } liftM2にidを適用することで、 liftM2 :: (Monad m) => (a1 -> a2 -> r) -> m a1 -> m a2 -> m r が ap :: (Monad m) => m (a
aW1wb3J0IENvbnRyb2wuQXBwbGljYXRpdmUKaW1wb3J0IERhdGEuTWF5YmUKaW1wb3J0IERhdGEuTW9ub2lkCgpmaXp6ID0gY3ljbGUgW05vdGhpbmcsIE5vdGhpbmcsIEp1c3QgIkZpenoiXQpidXp6ID0gY3ljbGUgW05vdGhpbmcsIE5vdGhpbmcsIE5vdGhpbmcsIE5vdGhpbmcsIEp1c3QgIkJ1enoiXQpudW1zID0gbWFwIChKdXN0IC4gc2hvdykgWzEuLjEwMF0KCig8PikgPSBtYXBwZW5kIC0tIGZvciBnaGMgPCA3LjQKCm1haW4gOjogSU8gKCkKbWFpbiA9CiAgbWFwTV8gcHV0U3RyTG4KICAkIGNhdE1heWJlcwogICQgemlw
I'm spinning off the Control.Monad.Trans.Free module from pipes into its own package: transformers-free. Some people requested this because they wanted to experiment with the FreeT type in their own code without making pipes a full-blown dependency. Recently I've evangelized the use of free monads for building abstract syntax trees that let you abstract away the interpreter. This lets you seamless
来年も作りたい!ふきのとう料理を満喫した 2024年春の記録 春は自炊が楽しい季節 1年の中で最も自炊が楽しい季節は春だと思う。スーパーの棚にやわらかな色合いの野菜が並ぶと自然とこころが弾む。 中でもときめくのは山菜だ。早いと2月下旬ごろから並び始めるそれは、タラの芽、ふきのとうと続き、桜の頃にはうるい、ウド、こ…
はじめに¶ 巷に溢れているHaskell本はいきなりのIOを避けているものが多いですよね。こ れらの本を読んでわかった気になっても、実際に日々のタスクに使おうとした 場合に結構ハマることが多いんですよね。 「習うより慣れろ」みたいなスタイルでHaskellの学習をするとどういう学習曲 線をたどることになるんだろうか? phpのように動けばいいや(偏見?)というス タンスでHaskellのコードを書くことは可能なんだろうか? と疑問に思ったので、よくあるスクリプト言語の入門書(IOから入る系)のよう な話題を取り扱ってみようかなと。 Sphinxという良い感じに文章をかけるツー ルと、書いた文章をGitHub Pagesで手軽に公開できるような環境の存在も、こ の試みを後押ししました。というか書いていて楽しいので、みなさんもSphinx つかうとハッピーになれると思います。 フィードバックな
先日Yesod勉強会第2回でHaskellでJSON Web APIを作る話しをしました。 内容的には下記のような感じです。 Web開発はクライアントサイドの技術が発達して、Web APIを作る機会が多くなった最近のフロントエンドは難しいし、分業したほうがいいっぽいYesodは独自技術&フルスタックすぎて分業辛いではscotty + persistent + aesonでJSON Web API作ろうぞなんか想像以上の相性の良さ。幸せになれそうなイキフンがビシビシ来てる発表資料はこちら。 ちなみにscottyはsinatraみたいな奴、aesonはJSONライブラリ、persistentはORマッパーです。 何しろaeson + persistentの相性がバッチリでした。発表後に@thimuraさんが見つけた じつは persistent のスキーマ定義で、テーブル名の横に js
この記事は http://www.yesodweb.com/blog/2012/06/conduit-0-5 の翻訳です。 conduit-0.5 をリリースしました。 conduitはストリームデータを扱うためのライブラリです。 conduitを用いると、様々な形のデータを生成、変形、消費するような処理を、 簡単に組み合わせることができるようになります。 enumerator/iterateeパラダイムと同じ問題を解決することを目的に作られましたが、 アプローチはこれらのものとは異なります。 conduitは簡単に理解して利用できるものになることを一番の目的としています。 遅延I/Oとは異なり、リソースの即時開放を保証し、 また、純粋なコードに例外を持ち込みません。 今回のリリースでSource、Sink、Conduitのそれぞれを作るための、 シンプルで効率の良い、高レベルのインターフ
前フリ 最近@seizansさんが新人Haskell使いを増やしまくっている。 で、その人達がググった時のために先にたくさんブログ記事書いて釣ろうぜっていう話をしていたけど、@kazu_yamamotoさんとか@nom4476さんらが仰るように、一旦自分がわかってしまうとなかなか記事を書く気力が起きない(し、子育てで忙しいので後は任せたって言われた)。 そうこうしているうちに@seizansさんがすごい勢いでHaskell力を伸ばしはじめた。 なので最近彼が覚えたらしいモナドトランスフォーマーの入門的な記事をStateモナドと合わせて先回りして書いてしまおうというわけす。引用数を稼ぐには先手必勝です。 Stateモナド Haskellで一時的な状態を持たせたい時はStateモナドを使うらしいですよ。 といっても何が何だかよくわかんないんですけど、 状態モナド遊び - あどけない話 この記事
0. 目次 1. 同じ名前のフィールドラベルを持つ型を定義したい 2. モジュールを分割し、階層化する 3. 型の意味 4. 型クラスの役割 5. パラメータ多相と、アドホック多相 6. 多相性とオブジェクト指向 7. 演算子の意味 8. 継承とジェネリクス 9. Ad hoc の意味 10. 型クラスの定義と、インスタンス化 11. 余談: モジュールに分けない場合 1. 同じ名前のフィールドラベルを持つ型を定義したい 2 つの型が、類似している場合、フィールド名に同じ名前を使いたい。 例えば、「名前」と「年齢」を持つ、「犬」型を定義する。 このとき、フィールドラベルを使うなら、 data Dog = Dog {name :: String, age :: Int} deriving Show 「犬」型と同様のフィールドを持つ、「猫」型も定義。 data Cat = Cat {name
リツイート数が30を超えたので、Haskell での例外処理について説明します。僕が思うに、Haskell での例外処理が分かりにくいのには、2つ理由があります。 ライブラリの混乱 パラダイムの違い 歴史的経緯により、Prelude にも Control.OldException にも Control.Exception にも catch があります。歴史的経緯を説明するのは面倒なので、これだけ覚えて下さい。「Control.Exception だけを使って、それ以外は忘れる」 そもそも純粋関数型で catch とか言われても分からないかもしれません。Haskell では、純粋な関数と IO とでは、例外処理の方法が異なります。命令的な catch などを使うのは IO です。純粋な関数には Maybe か、Either を使います。 純粋な関数 純粋な関数では、原則として例外を投げてはい
Not your computer? Use a private browsing window to sign in. Learn more about using Guest mode
来年も作りたい!ふきのとう料理を満喫した 2024年春の記録 春は自炊が楽しい季節 1年の中で最も自炊が楽しい季節は春だと思う。スーパーの棚にやわらかな色合いの野菜が並ぶと自然とこころが弾む。 中でもときめくのは山菜だ。早いと2月下旬ごろから並び始めるそれは、タラの芽、ふきのとうと続き、桜の頃にはうるい、ウド、こ…
ゾウ本こと「Learn You a Haskell for Great Good!」の訳本が、ついに発売されます。 Learn You a Haskell for Great Good!: A Beginner's Guide 作者: Miran Lipovaca出版社/メーカー: No Starch Press発売日: 2011/04/15メディア: ペーパーバック購入: 1人 クリック: 1,024回この商品を含むブログ (7件) を見る 訳本のタイトルは、「すごいHaskellたのしく学ぼう!」です。 すごいHaskellたのしく学ぼう! 作者: Miran Lipovača,田中英行,村主崇行出版社/メーカー: オーム社発売日: 2012/05/23メディア: 単行本(ソフトカバー)購入: 25人 クリック: 580回この商品を含むブログ (73件) を見る すごいタイトルですね!
What is Snap? Snap is a simple web development framework for unix systems, written in the Haskell programming language. Snap has a high level of test coverage and is well-documented. Features include: A fast HTTP server library A sensible and clean monad for web programming An HTML-based templating system for generating pages Snaplets Snap includes an optional system for building reusable pieces w
Conduitの今田中英行 tanakh@preferred.jp 2012/04/22 Yesod 1.0 勉強会 自己紹介田中英行 (@tanakh)(株)Preferred Infrastracture 研究開発部門社内ライブラリ pficommon https://github.com/pfi/pficommon分散機械学習フレームワーク jubatus http://jubat.us/検索エンジン SedueHaskell愛好家2003~Learn You a Haskell for Great Good!訳してます近々でます!ConduitとはConduitとはI/O を良い感じにやるためのライブラリ良い感じのストリーミング的なパーザ良い感じのバッファの自動管理良い感じのFlushing良い感じのリソース管理get rid of lazy-eval遅延I/O は良くないhttp
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く