![企画アイデアがざくざく生まれるUX発想シート+UX的発想の超基本 | 実践! プロも使うラピッドUX手法](https://cdn-ak-scissors.b.st-hatena.com/image/square/aab2e8900d78a6767abc4fd5e6b26dc6d6a12ae7/height=288;version=1;width=512/https%3A%2F%2Fwebtan.impress.co.jp%2Fsites%2Fdefault%2Ffiles%2Fstyles%2F1200x630%2Fpublic%2Fimages%2Farticle2012%2Frapid_ux%2Frapid_ux_icon.png%3Fitok%3DBNIunWBk)
モナドの上にまたモナドって株か?二階建てか?なんて思って敬遠してたのだけど、なんとなくわかってくると、包んで包んでしてるだけじゃないかと。 RWH18章 モナド変換子を使わないでログ記録。これはIO [(FilePath, Int)]型になる。 module CountEntries (listDirectory, countEntriesTrad) where import System.Directory (doesDirectoryExist, getDirectoryContents) import System.FilePath ((</>)) import Control.Monad (forM, liftM, when) listDirectory :: FilePath -> IO [String] listDirectory = liftM (filter notDots
前フリ 最近@seizansさんが新人Haskell使いを増やしまくっている。 で、その人達がググった時のために先にたくさんブログ記事書いて釣ろうぜっていう話をしていたけど、@kazu_yamamotoさんとか@nom4476さんらが仰るように、一旦自分がわかってしまうとなかなか記事を書く気力が起きない(し、子育てで忙しいので後は任せたって言われた)。 そうこうしているうちに@seizansさんがすごい勢いでHaskell力を伸ばしはじめた。 なので最近彼が覚えたらしいモナドトランスフォーマーの入門的な記事をStateモナドと合わせて先回りして書いてしまおうというわけす。引用数を稼ぐには先手必勝です。 Stateモナド Haskellで一時的な状態を持たせたい時はStateモナドを使うらしいですよ。 といっても何が何だかよくわかんないんですけど、 状態モナド遊び - あどけない話 この記事
Here are a few Sudoku solvers coded up in Haskell... Monadic non-deterministic solver Here is a solver by CaleGibbard. It possibly looks even more naïve than it actually is. This does a backtracking search, trying possibilities until it finds one which works, and backtracking when it can no longer make a legal move. import MonadNondet (option) import Sudoku import System import Control.Monad solve
Draft for submission to Haskell 2012 Dependently Typed Programming with Singletons Richard A. Eisenberg University of Pennsylvania Philadelphia, PA, USA eir@cis.upenn.edu Stephanie Weirich University of Pennsylvania Philadelphia, PA, USA sweirich@cis.upenn.edu Abstract Haskell programmers have been experimenting with dependent types for at least a decade, using clever encodings that push the limi
最終更新時間:2008年05月29日 19時15分03秒2008-05-19 【自由課題】重み順列挙を用いた幅優先探索、深さ優先探索(の思慮の足りないバージョン) (2008-05-29 追記: この回で書いているコードは無駄な動きをしている上、幅、深さとも有限な木にしか対応できていないことに気づいた。次回はこの反省に立ったネタを書くつも り)前回(2008-05-17 皿回し)使った列挙方法を幅優先探索にも使えることに気づいた。比較する値として (深さ, 選択した枝番号で構成される path) のペアを用いる。 bfs :: (a -> [a]) -> a -> [a] bfs f a = map snd $ fsort [((0,[]),a)] where fsort = foldr (merge.fsort') [] fsort' x@((d,path),a) = (x:) $ fs
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く