2012-11-01から1ヶ月間の記事一覧
少し前にふと、手続き型言語だとちょっと大変かな?と思ったプログラム - しんちゃんの日記でファイルの内容を全部逆にしてナンバリングするのは関数型言語では簡単だったのだけど、手続き型言語ではちょっと大変なのでは?と書いたわけですが、本当かどうかP…
鹿児島在住なのですが、何故か(?)PCのradikoだと東京の番組が聞けるようで、アニオタとしては天国と言えるラジオ環境のため、中々眠れません。 いや、眠いんですけどね? 文化放送。良いですね。 アニメ関係の番組が連続してます。 で・も・ね? もう10年…
Haskell入門以前を書く時、最初RubyとHaskellでコード比較をしようと思っていて、試にlength関数を両方で作ろうと思って、以下のような関数を作ったのですが、数列はうまく動くのに、文字列を渡すとRubyからeachが無いよ!!と怒られてしまい、Haskellとの純…
前回、numberingコマンドを作ってて思ったのですが、手続き型言語はファイルから読む時に1行毎に読むと言うのをコードからも指定している訳ですが、ファイルの中身を全部逆にして、ナンバリングするコマンド(仮にrevnumberingコマンドとします)だと、手続…
前回の記事が一応の決着を見せたので、次に行こうと思います。 私が思ったよりもHaskellがずっと速かったようで、Haskellは実用的な言語ではないと言う風潮を払拭すると言う目標の前途は明るそうで何よりです。さて、今回のお題はファイルを読み込んで、行毎…
「Haskell入門以前」のネタバレになってしまいますが、[ [1,2,3],[4,5,6],[7,8,9] ]を受け取って、各要素を反転させた[ [3,2,1],[6,5,4],[9,8,7] ]を受け取り、その最後尾の要素の最後尾(このデータでは7)を表示する処理を作り、なるべく大きなデータを渡…
import Data.Time import System.Process import System.Environment import System.IOmain = getCurrentTime >>= \start -> getArgs >>= \(c:cs) -> runInteractiveProcess c cs Nothing Nothing >>= \(_,out,err,_) -> hGetContents out >>= putStrLn >> h…
"Haskell iPhone"や"Haskell Android"で検索すると、こんなページが検索に引っかかりました。Haskell iPhone http://www.haskell.org/haskellwiki/IPhoneHaskell Android http://www.haskell.org/haskellwiki/Android英語は少ししか読めないのですが、iPhone…
import Graphics.UI.Gtkmain = initGUI >> windowNew >>= \window -> vBoxNew True 0 >>= \vbox -> entryNew >>= \entry -> buttonNew >>= \button -> labelNew Nothing >>= \label -> set window [windowTitle := "初めてのWindowアプリ", windowDefaultWid…
ブクログのパブーというサイトにて、Haskell入門以前というタイトルの電子書籍を出版してます。 何分、素人の文章ですので、どんな層をターゲットにしているのか、何を伝えたいのかも定まってないと今更ながら思いますが、無料で公開していますので、良かっ…