トップ 最新 追記

日々の流転


2004-04-03 [長年日記]

λ. Polymorphism is not set-theoretic

を読んだ。Polymorphic lambda calculus の集合論的なモデルが存在しない理由をこれまで vicious circle のためだと思い込んでたのだけど実は違った。集合の圏ではPと(P->B)->Bが同型にはならないのが原因。

Tags: 論文 圏論
本日のツッコミ(全4件) [ツッコミを入れる]

ψ so1 [えーっと、コレ↓に出てくるcoherence spaceを使った表示的意味論は集合論ベースじゃないってコトなんですか..]

ψ さかい [ここでの話は、集合の圏そのもので解釈出来るかという話なので、coherence space を使った表示的意味論が集..]

ψ あぁ〜 [あぁ〜なんでやねん]

ψ さかい [なんでやねん、と言われても〜]


2004-04-04 [長年日記]

λ. gtk2hs-0.9.4 (その2)

数日間使ってみた感想。

他の言語でgtk2を使ったことがあればあまり戸惑わずに使える。けど、中途半端にインターフェースを変更している箇所もあるので注意。たとえば boxPackStart :: (BoxClass b, WidgetClass w) => b -> w -> Packing -> Int -> IO ()gtk_box_pack_start(GtkBox *box, GtkWidget *child, gboolean expand, gboolean fill, guint padding)expandfillの二つの引数をPackingという型の単一の引数にまとめてしまってる。

実装を見ると、c2hsを使ってFFI周りのコードをCのヘッダファイルから自動生成した上で、その上にHaskellっぽいインターフェースを被せてる。これでだいぶ省力化出来てるのは素晴らしい。

ただ、シグナル周りとかの設計は少々ダサい気がする。実装にはg_signal_connect_data()を使うよりもGClosureの仕組みを活用した方が良いんじゃないかというのもあるが、それよりもまずシグナルごとに onClicked, afterClicked :: ButtonClass b => b -> IO () -> IO (ConnectIdo b) みたいな関数があるのってどうなのよ?

僕だったら、例えば以下のようなインターフェースにしたと思う。こういう設計にしなかったのには何か理由があるのだろうか。


signalConnect, signalConnectAfter :: obj -> (Signal obj t) -> t -> IO (ConnectId obj)
signalEmit :: obj -> (Signal obj t) -> t
signalName :: Signal obj t -> String
...
clicked :: (ButtonClass b) => Signal b (IO ())
Tags: haskell

2004-04-07 [長年日記]

λ. The Haskell 98 Foreign Function Interface 1.0: An Addendum to the Haskell 98 Report

幾つか確認したいことがあったので、一通り目を通す。

ただ、System Compliance Status でGHCとHugsが「conforms to the standard.」というのは嘘っぽいなぁ。どっちも現時点ではForeign.C.StringでUnicodeとlocaleのencodingを変換していない。

Tags: haskell

2004-04-10 [長年日記]

λ. John Hughes, "Generalising Monads to Arrows"

を読んだ。

本筋とは関係ないんだが、「data (Read x) => T x = ...」というようにデータ型を定義しても、型「T a」からaReadのインスタンスだということを推論してくれないのは、僕もずっと不満に思ってた。(Restricted Datatypes in Haskell を参照)

[2005-03-27 追記] 圏論が何故プログラミングに役立つかということについての説明が良かったので、以下に引用しておく。

Some might find it surprising that something so abstract as category theory should turn out to be useful for something so concrete as programming. After all, category theory is, in a sense, so abstract as to be rather unsatisfying: it is `all definitions and no theorems', almost everything turns out to be a category if you look at it long enough, to say something is a category is actually to say very little about it. The same is true of most categorical concepts: they have very many possible instantiations, and so to say that something is, for example, a monad, is to say very little. This extreme generality is one reason why it is hard for the beginner to develop good intuitions about category theory, but it is hardly surprising: category theory was, after all, developed to be a `theory of everything', a framework into which very many different mathematical structures would fit. But why should a theory so abstract be of any use for programming?

The answer is simple: as computer scientists, we value abstraction! When we design the interface to a software component, we want it to reveal as little as possible about the implementation. We want to be able to replace the implementation with many alternatives, many other `instances' of the same `concept'. When we design a generic interface to many program libraries, it is even more important that the interface we choose have a wide variety of implementations. It is the very generality of the monad concept which we value so highly, it is because category theory is so abstract that its concepts are so useful for programming.

λ. 借りた本

『なぜ人はニセ科学を信じるのか—UFO、カルト、心霊、超能力のウソ』
マイクル・シャーマー(Michael Shermer) [著], 岡田 靖史 [訳]
『よるねこ』
姫野 カオルコ [著]
小説すばる 2003年11月号
-
Tags:

2004-04-11 [長年日記]

λ. G-machine

G-machineの紹介スライド。

Tags: haskell

2004-04-12 [長年日記]

λ. Hugs の Foreign.C.String での Unicode⇔locale の変換

現実逃避にパッチを作った。FFIで日本語を使うときに幸せになれるかも。でも、Hugsで動くライブラリでそういうのはなさげな罠。

hugs98-Mar2005 用 (2005-03-23)
hugs98-Mar2005-cstring-i18n.diff
hugs98-Dec2003 用
hugs98-Dec2003-cstring-i18n.diff
Tags: haskell

λ. 単位

あと体育と語学とクラスター科目の要件を満たすと、卒業に必要な単位がピッタリそろう事に気がつく。さて、どうするか。





2004-04-18 [長年日記]

λ. 博麗神社 例大祭

に行ってきた。10:30ごろに着いたのだが予想を遥かに越える長蛇の列が出来ててびびった。それでも、開場後15分くらいで中に入れた。カタログも当日買ったし全然事前にチェックしてなかったので、まずは永夜抄の体験版をゲットしてそれから他のサークルをぶらぶらと適当にまわった。12:30ごろには大半のサークルが完売状態だったようなので、そこで撤退。

ゲットしたもの:

『東方永夜抄 〜 Imperishable Night. 体験版Plus』
上海アリス幻樂団
『西行寺庭園厄災録 従者達の硝子細工』
『Thought of Dolls』
葉庭の出店
『東方 - TOUHOU』
VISIONNERZ
『林檎飴』
農村 (味噌煮,ひはる)
『花祀(HANA-MATSURI)』
びいどろぼっくす
『東方勘違い本 ロックでPinkでパンクで玩具で凡愚で瀟洒な僕らのメイド』
みょふ〜会
『幽々子様が見てる』
石津 忠, 浅野 ちこ 日置
『東方奇闘劇』
AQUA STYLE
『冥土行進曲』
チルノ・ピック
Fragile Online
Tags: 東方

2004-04-19 [長年日記]

λ. CMS班ミーティング

テーマ決め。なんかchikoさんに丸め込まれたような気がするが (・∀・)キニシナイ!!

Tags: tom

λ. 『ラバーズ 1』, 犬上 すくね

を読んだ。

ラバーズ7 1 (サンデーGXコミックス)(犬上 すくね)

Tags:


2004-04-22 [長年日記]

λ. 『ういうい♥days』, 犬上 すくね

を読んだ。

ういういdays 1 (バンブー・コミックス)(犬上 すくね)

Tags:

λ. RDFからサイトを作るとか

RDFをXSLT等で整形して一つのページとして表示しているのは頻繁に見る。一つのページではなく、一つののサイトにするのはどうだろうか?、とふと思った。RDFのクラスに対して整形ルールを定義し、RDFの各ノードから個々のページを生成するとか……

λ. 萩野服部研新歓@八十の別家

なんとビックリ25人もの参加者。それから某サトレイ氏の恐ろしさの一端を理解する。

Tags: tom


2004-04-25 [長年日記]

λ. "Categories for Everybody", Steve Awodey

圏論の入門。William Lawvere and Steve Schanuel, "Conceptual Mathematics: A First Introduction to Categories" を読み終わったぐらいの人がいたら薦めてみようか。一応、米田の補題とかAdjointとかMonadも扱ってるし。

ドラフト

【2006-09-29追記】本として出版され、PDFでの公開は停止してしまったようだ。出版は目出度いがWebで読めなくなるのは結構残念。
Category Theory (Oxford Logic Guides)(Steve Awodey)

Tags: 圏論

2004-04-26 [長年日記]

λ. infinitive toybox

某氏に紹介される。「雪ちよちよ」の生ボーカルいいなぁ。

Tags: 東方

λ. 『ダーリンは外国人 2』, 小栗 左多里

を読んだ。

ダーリンは外国人(2)(小栗 左多里)

Tags:

λ. バイト

の話がまとまる。

λ. CMS班ミーティング

名前は重要だけど、悪乗りは良くないと思った。あと、Rubyを紹介しているのだけど、思ったよりウケがよくて安心。

Tags: tom

2004-04-27 [長年日記]

λ. "Language-Based Information-Flow Security", Andrei Sabelfeld and Andrew C. Myers

ふむ。

Tags: 論文

λ. 『政策分析入門』 E.ストーキー, R.ゼックハウザー

『政策分析入門』
E.ストーキー(Edith Stokey), R.ゼックハウザー(Richard Zeckhauser) [著], 佐藤 隆三, 加藤 寛 [監訳]

「公共選択論」の教科書。いい本らしかったので買ってみる。

Tags:

2004-04-28 [長年日記]

λ. "Institution Morphisms", Joseph Goguen, Grigore Rosu

メモ。難しい話はよくわからないが、Institution の基礎に関して割とよくまとまってる気がする。

Tags: 論文 圏論

λ. 研究計画書

書けねぇ。前の研究計画書にかいた事は熱意が冷めつつあるのだけど、それに代わるものが自分の中で育ってないのだよな。いざとなれば前の研究計画書を使いまわすのだが、しかしどうしたものか。

λ. 東方萃夢想 動作試験版

ダウンロードして試してみたのだけど、起動時にエラーが発生して遊べない。残念。

Tags: 東方

λ. コード

最近、自分のコードを書く余裕があまりない。書きかけで、ちゃんとまとめておきたいものは幾つかあるのだけど……


2004-04-29 [長年日記]

λ. ゲロゲロ。無様な醜態を晒してしまった。

λ. kbmj の人とお会いして色々と話を聞いてくる。悩む。それから、ご馳走様でした。

λ. Froogle

メモ。

λ. 東方永夜抄体験版スペルカード

Lunaticの残り4枚がなかなか回収できない。「高天原」以外は取れそうで取れないのが悔しい。ちなみに、「高天原」に至ってはまだ見たことすらなかったり。あぅー

  • 隠蟲「永夜蟄居」
  • 夜雀「真夜中のコーラスマスター」
  • 野符「GHQクライシス」
  • 未来「高天原」
Tags: 東方

λ. テレビ

めずらしくWWEなど見てみる。

λ. SISTER OF SCARLET

東方紅魔郷ExtraのFlash。完成版。

Tags: 東方

λ. Workshop "Types for Verification"

例によって池上さんに紹介してもらったワークショップ。内容にはかなり興味があるのだけど、諸事情により行くかどうか悩み中。


2004-04-30 [長年日記]

λ. 読書

『ラブヤン 3』
田丸 浩史 [著]
『夢使い 6』
植芝 理一 [著]

「夢使い」がこれで終わりってのは意外。もっと続きが読みたかったなぁ。

Tags:

λ. 購入した本

『C++によるXML処理技法』
ファビオ・アルシニェガス(Fabio Arciniegas) [著], 高橋 秀和 [訳]

λ. VC++.net

今度のバイトで使うVC++.netを受け取る。MSの開発環境を使うのは初めてなのだけど、結構使いやすく感じた。あと、C++の拡張機能が楽しげ。

本日のツッコミ(全2件) [ツッコミを入れる]

ψ ささだ [うーん、使いやすいですか。どうも慣れなくてはかどりません>VC++.net]

ψ さかい [僕もまだあんまし使いこなせてないのですが、今のところ操作体系にはあんまし抵抗は感じてません。 あ、でも、Ctrl+S..]