2007-10-01から1ヶ月間の記事一覧

ポイントフリースタイル

関数合成や部分適用を使うと、値を返していた関数が、関数を返す関数になります。関数を返す関数というのを言い換えると、関数を定義する関数と言うことになります。関数を関数で定義するコーディングスタイルをポイントフリースタイルと呼ぶそうです。本に…

部分適用

n個の引数を取る関数に対してn個未満の引数で関数を呼び出すと、関数に渡した引数を適用した関数が戻ってきます。厳密には引数を一つ取ってその引数を適用した関数が戻ってきてというのをくり返しているとのことです。なので、引数の数が少ない場合は関数が…

関数合成

複数の関数を合成して一つの関数を作れます。 main = do cs <- getContents print $ numberOfLines cs numberOfLines :: String -> Int numberOfLines = length . lines これまでだとこう書いていました。 numberOfLines cs = length $ lines cs 引数を書か…

問題追加

その14(2x2)を追加しました。

バージョンアップしました

バージョン1.14.1です。 WindowsのDPI設定が120DPIの場合にHTML出力の設定ダイアログのレイアウトが崩れるバグを修正しました。

無名関数

8章の関数の章に入りました。新登場は無名関数。\を使って書きます。無名関数は高階関数と組み合わせて利用可能。いちいち関数定義をしなくても高階関数が使えます。無名関数でもパターンマッチが使えますが、パターンは一つだけ。

120dpiでのレイアウト崩れは解決せず

最新のパッチをあてた状態でコンパイルして実行してみましたが駄目でした。ライブラリのソースを直すという手もあるのかも知れませんが、そこまでのやる気がなくてもっと安易な方法にしました。具体的にはPanelをたくさん使ってのレイアウト。たくさんと言っ…

120dpiでのレイアウト崩れ

掲示板で報告がありました。Windowsの画面のプロパティの設定でdpiを120に設定するとHTML出力の設定ダイアログのレイアウトが崩れて利用に支障があるとのこと。試しに自分のPCでも設定を変更したところ確かにおかしくなりました。動きを見た感じではAnchors…

読めるけど書けない

第7章の練習問題が解けませんでした。回答例を読むと何をやっているのかは分かるので、読めるけど書けないという状態。まだまだ理解が足りませんね。