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 -> …