osiire’s blog

ふしぎなそふとやさん

2009-02-01から1ヶ月間の記事一覧

専門家の責任

は重い。本来の論点とは関係ないかもしれないけど、耐震偽装の名古屋地裁判決要旨を読んでそう感じた。 私は端から見ればソフト開発を生業にしている「コンピューターの専門家」。だけど、本当にその専門家の責任が果たせるだけの技能を持っているだろうか?…

ライブラリがオープンソースだと助かる

今までにも何度かあったけど、今日も某GUIライブラリのソースコードまで降りていってスピーディに難を切りぬけた。これがもしクローズドソースのライブラリだったらスピーディどころか打つ手無しだったろう。

続・ポイントフリー的ななにか

OCamlのlet多相は、 値は多相で処理。それ以外は単相。 単相が多相の部分型になってるときは、多相を回復。 という二段階。で、この部分型判定には、単相型がcovariantな位置にのみ出現するかどうかを調べる。covariantな位置というのは、要するに関数型の右…

今年も懲りずにGUIネタでPPL糧3ポスター決定。酒の肴にいじってもらうことになりました。よろしくお願いします。

ポイントフリースタイル的ななにか

はOCamlでは無理なのですよ。(例によって狭い世界では)みんな知ってるとは思うけど。なぜ無理かというと、let多相に制限があるからで、なぜ制限があるかというと副作用を許しているから。 # let filter x = List.filter ((<>) x);; (* これはまぁ大丈夫 *)…

バイナリメソッドのある継承される事を想定した基底クラスが自身の型のリストを持っている時に、そのクラスを継承したクラスがサブタイピングで複数の異なる型の継承クラスを基底クラスのリストにアペンドする例。

言葉にすると訳分からんね。 class virtual ['me] sprite = object ( self ) val cs : 'me sprite list = [] method add_children c = {< cs = c :: cs >} method children = cs method virtual show : unit method print = self#show; List.iter (fun c -> …