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

明瞭。

今更ながらフォントをメイリオに変更した。 以前試みた時にはClearTypeを有効にすることを知らかったため、 汚いじゃんと思ってずっと放置してたのです。馬鹿みたいな話。 手順 こちらからDL meiryo.ttc と meiryob.ttc を C:\WINDOWS\Fonts\ にコピー 画面…

FLT

フェルマーの最終定理 (新潮文庫)作者: サイモンシン,Simon Singh,青木薫出版社/メーカー: 新潮社発売日: 2006/05/30メディア: 文庫購入: 105人 クリック: 1,697回この商品を含むブログ (575件) を見る 文庫化してたので買ってみた。これは熱い。正直、ここ…

ブログエントリのプライベートモード

Web

特定のエントリだけプライベート(自IDでのみ見られる)にできたらいいのに。下書きにも自分用メモにも使えるように。プライベートカテゴリなんかもあると便利だなぁ。

Adapter パターンの実装についての話。

久しぶりに結城浩氏のデザパタ本読み返したんだけど、委譲を使ったAdapterの例で、インターフェースとして使っているクラスを敢えてインターフェースではなく抽象クラスとして定義してるのには何か意味があるんだろうか。abstractじゃないメソッドとかが入っ…

Apache2とRoRとPHP5とその他もろもろを入れた

つかれた('A`)簡単なWebアプリは今までPHPでやってたけど、eRubyってのを見て、なんだこれ使えば今までPHPでやってたのも全部Rubyでやればいいじゃんって思った。で、流行ってるしRuby on Railsをちょろっと触ってみることに。まず今までほとんどデフォの設…

foldl と foldr

定義をド忘れしてた。 foldl :: (a -> b -> a) -> a -> [b] -> a foldl f z [x1, x2, ..., xn] == f (.. (f (f z x1) x2)..) xn == (..((z `f` x1) `f` x2)..) `f` xn foldr :: (a -> b -> b) -> b -> [a] -> b foldr f z [x1, x2, ..., xn] == f x1 (f x2 .…

「モナドのすべて」読み中

モナドのすべてとりあえず第一部を読んだ。最後の節、「Haskell におけるモナドのサポート」がなかなか重い。 メモ。 do記法はあらゆるモナドに適用できる。 でもあくまで、モナド計算を命令型っぽく書くための syntax sugarである。 doの中でパターンマッチ…

bind

>>= を、(>>= f) という、右辺を部分適用させたセクション単位で考えると見やすいかもしれない。 f :: a -> m b ならば (>>= f) :: m a -> m b >>= を、上のように、「(a -> m b) な関数に被せて (m a -> m b) という関数を作る仕組み」だと考えるんである。…

Hotmail

「Hotmail」から子音を抜き出すと「HTML」になるのか! 今さら気づいた!!!!!!あまり良いイメージ無かったけど、このセンスはなんか憎めない!

Googleの検索結果にサマリが表示されない

Web

先々週あたりから、突然Googleの検索結果がタイトルしか表示されなくなって、もの凄い不便だった。 IEでは普通に見れたので疑問に思いつつも、代わりにはてな検索とYahoo!を主に使っていたのだけれど、昨日やっと原因が判明。Firefoxの拡張、Googlepedia(Go…

ブログにおける「エントリセット」

Web

ひとつの話題について、複数のエントリで語るといったことはよくある。それらをまとめるための仕組みとしてカテゴリがあるわけだが、なんというかカテゴリとして扱うほどでもない程度の、3つか4つぐらいで完結するようなエントリのセットというものがある…

著作権とか。

ネット上の著作権侵害、「引用」と「要約」このブログ自体がふつけるの内容に思いっきり触れてるのでどうなんだろうと思って調べてみた。要約も著作権に触れるのですね。原書を読まなくても内容が分かるような要約は著作権法上の「翻案」に当たり、著作権者…

クラスの集合論

今回は関数型言語ではなく、オブジェクト指向の話。サブクラスを「部分クラス」と訳してある本を見て、はじめ違和感がありました。 だって、サブクラスっていうのは、スーパークラスがまずあって、その上に新たなフィールドやメソッドを実装したりしたものじ…

空文字列のmd5 sum

$ php -r "echo md5('');" d41d8cd98f00b204e9800998ecf8427eなんとなく覚えてたおかげで、空文字の場合はエラー処理になるべきところでそのまま進んでたー、というバグ発見に役立ちました。ググるといろいろ引っかかりますね。

ブログの効用。

Web

にわかな奴ほど語りたがる詰め込んだ知識を、自分の口で言ってみることで再確認する行為っていうのはかなり一般的なものだと思います。新しく知った言葉とかは積極的に使いたくなるものです。特に、難しげな言葉(多元的無知とか)は、知ってから忘れるまでに…

一段落

ふつけるはとりあえず終了。3部はまた後で時間取ってゆっくりやろう。

インポート

import [qualified] モジュール名 [(インポートリスト)| hiding (ハイディングリスト)] [as エイリアス] 明示的にPreludeのimport宣言をしない場合は、暗黙的に「import Prelude」が宣言される インポートしたエンティティは、import宣言を書いたモジュール…

エクスポート

module モジュール名 [(エクスポートリスト)] where -- []内はoptional 他のモジュールにインポートできるようにする module宣言を省略すると、「module Main (main) where」が補われる。 エクスポートリストを省略すると、すべてのエンティティがエクスポー…

名前空間

エンティティの名前空間がモジュールごとに分かれている エンティティ 変数 型コンストラクタ データコンストラクタ フィールドラベル 型クラス クラスメソッド

階層化ライブラリ

Haskell Hierarchical Libraries

モナド

まだ完全には消化できていないので、とりあえず思ったことだけつらつらと。 モナドの前に、まずは型クラスをちゃんと理解しよう EqとかOrdみたいな単純なものは、それ自体がデータとしての意味をもつ型を対象にした型クラスだけれど、Monadは「型パラメータ…

主要な型クラス

Eq : 同値関係が定義できる Ord : 順序関係が定義できる Show : 文字列に変換できる Read : 文字列から変換できる Num : 数値型 Integral : 整数型 Numのサブクラス Fractional : 小数型 Numのサブクラス

型クラス

Java等のクラスとは違い、特定の型コンストラクタの集合を定義する。 多相型に制約をつけるためのもの アドホック多相: 制約のついた多相性 パラメータ多相: 制約の無い多相性 クラスメソッド 型クラスを特徴付ける関数 ある型クラスに属する型は、その型ク…

代数的データ型

data宣言 新しい型を定義する data 型コンストラクタ 型変数1 型変数2 ... = データコンストラクタA 型A1 型A2 ... | データコンストラクタB 型B1 型B2 ... | データコンストラクタC 型C1 型C2 ... : 型コンストラクタとデータコンストラクタの名前空間は別…

型 = 値の集合 型推論 「::」構文による型宣言 多相型: 型変数を含む型