haskell

ひさしぶりにArrowLoopをつかってみた

ひさしぶりにArrowLoopをつかってみました。大分忘れていたな、という。いや覚えていたけど。 import Control.Arrow lengthA xs = loop ((snd&&&fst>>>app)&&&lengthA') (xs,0) where lengthA' = snd>>>\f -> cond (null.fst)>>>snd ||| ((tail***(+)1)>>>f)…

一応書いたからのせときます

import Control.Applicative ((<$>)) import Control.Monad (replicateM, mapM_) import System.Environment (getArgs) n :: Int n = 5 main = puts $$ argf_each .$ take n argf_each :: IO [String] argf_each = getArgs >>= f where f [] = replicateM (n…

Programming in Haskellを読了した

Programming in Haskell作者: Professor Graham Hutton出版社/メーカー: Cambridge University Press発売日: 2007/01/18メディア: ペーパーバック購入: 2人 クリック: 67回この商品を含むブログ (22件) を見るページ数も少ないし、英語も平易で読みやすかっ…

GHC6.10.1をインストールしました

http://www.sampou.org/cgi-bin/w3ml.cgi/haskell-jp/msg/243 GHC6.10.1をインストールしました。shelarcyさんいつもレポートありがとうございます。viewパターンいいですね。 http://www.haskell.org/ghc/download_ghc_6_10_1.html#x86linux http://www.nab…

Control.Applicativeについて学びました

http://www.cs.nott.ac.uk/~ctm/IdiomLite.pdf PDFを読んだあとのFizzBuzz。リフトをスッキリと書けるところがいいですね。 import Control.Applicative import Data.Traversable fizz n = if n `mod` 3 == 0 then "Fizz" else "" buzz n = if n `mod` 5 == …

メモ

関数型プログラミング言語Haskell Part9 654 名前:デフォルトの名無しさん [sage]: 2008/08/28(木) 21:41:23 具体的にどういう場合にどうして効率が良くなるんですか? ReadPだと、PがReadPで包まれてるわけだけど、 get' = Get return look' = Look retur…

echoクライアント

http://ja.doukaku.org/comment/7144/ 書きました。ArrowLoopが使いたいんだけど中々使いこなせないというジレンマ。

LL Golf Hole 3 - 13日の金曜日を数え上げる

http://ja.doukaku.org/comment/7039/ 書きました。

LL Golf #1 - tinyurl.comを使ったURLの短縮

http://ja.doukaku.org/comment/6840/ 書いた。Golfでもないけど。

コード圧縮

http://ja.doukaku.org/comment/6729/ 一度使ってみたかったLanguage.Haskell.*が試せて良かった。お題のマイナス評価がすごいけどどうしてなんだろう。

コード中の文字の頻度分析

http://ja.doukaku.org/comment/6725/ 最近マイブームなControl.Arrowを使ってみました。Arrowのシンプルさと柔軟さ(それ故の奧深さ)をまたちょっと理解できたような気がします。 あと、Data.Function.on関数はもっと評価されていい。この関数に"on"という名…

コメントの削除

http://ja.doukaku.org/comment/6698/ 久々にParsecを使った。Parsecかわいいよ、Parsec

比較しないソートの作成

http://ja.doukaku.org/comment/6675/ http://ja.doukaku.org/comment/6676/ (6675をちょっとだけ修正した) 久し振りだからか、今ひとつな感じ。またしばらく勉強させてもらおうと思います。

hsrb-0.1.0をリリースしました

http://code.google.com/p/hsrb/ HaskellからRubyを実行するライブラリhsrbのバージョン0.1.0をリリースしました。おめでとう。ありがとう。 テストが一切ないので、ゴールデンウィークはかっこいいテストを書こうと思います。

hsrb

READMEとかLICENSEとかを書いた。あと呼出し側のインターフェースを整理してカッコよくなった(と思っている)。 今のところこんな感じ。 import Hsrb.Eval main = do (RbString str) cgi'; CGI.escape '123 4/5'" putStrLn str で結果が 123+4%2F5 ソースを整…

LeopardでGHC6.8.2でdarcs

LeopardでGHC6.8.2とdarcsをビルドする際にハマったのでメモ。GHCはGNU readlineを期待しているみたいなんだけど、macのreadlineはGNU readlineとはちょっと異なるようで、portsでinstallしたreadlineを使うとghciでdeleteキーなどが動作しない。しなかった…

もなもなモナド ReaderモナドとWriterモナドの合成について

http://d.hatena.ne.jp/sshi/20071130/p1 疑問には答えられてないんですが、lift,liftMはいらないのかな、と。 *Main> :i MonadReader class (Monad m) => MonadReader r m | m -> r where ask :: m r local :: (r -> r) -> m a -> m a -- Defined in Contro…

printfの自作

http://ja.doukaku.org/91/ http://ja.doukaku.org/comment/4423/

文字列の反転(括弧の対応を保存)

http://ja.doukaku.org/70/ http://ja.doukaku.org/comment/4278/ コメント欄が変になっちゃった。すいません。

文字列のセンタリング

http://ja.doukaku.org/87/ http://ja.doukaku.org/comment/4256/

水の移しかえパズル

http://ja.doukaku.org/73/ http://ja.doukaku.org/comment/3693/ SICPを(今頃)読みはじめました。実は再入門なんだけど。 で、いきおいScheme(Gauche)を書くことが多いんだけど、改めてHaskellをつかってみると型がどれだけ楽チンか、というかプログラマー…

ライフゲーム

http://ja.wikipedia.org/wiki/%E3%83%A9%E3%82%A4%E3%83%95%E3%82%B2%E3%83%BC%E3%83%A0 http://d.hatena.ne.jp/lamuu/20060825/1156520199 Wikipedia見ててグライダーガンを作ってみたくなったので、ライフゲームをHaskellで作りました。wxHaskellの箇所は…

メモ

http://pc11.2ch.net/test/read.cgi/tech/1174211797/l50 881 名前: デフォルトの名無しさん Mail: sage 投稿日: 2007/09/20(木) 22:42:51 http://web.yl.is.s.u-tokyo.ac.jp/~ganat/memo/aboutHaskell.htmlにある qsort [] = [] qsort (x:xs) = qsort elts_…

仲間はずれの判定

http://ja.doukaku.org/53/ http://ja.doukaku.org/comment/2694/

与えられた文字列でピラミッド

http://ja.doukaku.org/52/ http://ja.doukaku.org/comment/2627/

文字列からの情報抽出

Parsecはいつも使い方を忘れるが、思いだす頃には実装が終っている。 http://ja.doukaku.org/51/ http://ja.doukaku.org/comment/2561/

ビンゴの結果を整形表示

http://ja.doukaku.org/47/ http://ja.doukaku.org/comment/2320/

重複なし乱数

http://ja.doukaku.org/46/ http://ja.doukaku.org/comment/2313

与えた条件を満たす候補

http://ja.doukaku.org/43/ http://ja.doukaku.org/comment/2110/

与えられた数字のケタ数

http://ja.doukaku.org/40/ http://ja.doukaku.org/comment/2071/ あんなんで良かったのかな。