トップ «前の日(12-03) 最新 次の日(12-05)» 追記

日々の流転


2001-12-04

λ. エンロン破綻

本当にビックリ。危ないという噂は聞いていたけど、こうアッサリ破綻してしまうとは……

λ. 김치 찌개 きむちちげ

김치 찌개 がとても美味しかった。みんなもっと辛いのが好きみたいだけど、個人的にはあれくらいで丁度良かったなぁ。

λ. 読書

「バトルロワイヤル」 第5巻
高見高春[作] 田口雅之[画]
Tags:

λ. 「全然 ミステリィ じゃない日々」の12/2

『総合』と名前に付くところも同じくらい胡散臭いよね、と思った。

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

ψ けし [何が美味しかったの? "・・ ・・"ってなってて読めないッス]

ψ さかい [ハングルで「きむち ちげ」と書いてあるっす。 キムチと肉・魚などを入れてつくる鍋料理の事……らしい。 どうせなので..]

ψ chiko [日記にもかいたけど,私はもーすこし辛い方がすきです. 辛いのはにがてなのかしら? そーじゃなかったら,こんどタイ料理..]

ψ さかい [おっ。タイ料理も美味しそー。わーい。 アレくらいが好みというだけで、特に辛いのが苦手というわけではない(と思う)っ..]

ψ けし [お、うまそーかもね・・ っていうかあったまりそう。]


2002-12-04

λ. WISS2002

いってらっしゃーい

λ. glib-2.1.3

出たのでコンパイルしようかと思ったけど、pkg-configの0.14が必要で、まだcygwinのcurrentには入ってなかったので後回しに。すっかり軟弱な私。

λ. jena

jdkをインストール。サンプルを動かしてみる。

ところで、どーでもいーけどCLASSPATHって随分自己中心的な名前の環境変数だよなぁ。


2004-12-04

λ. Re: スーパータイピング

もし member :: (Ord u) => UrelemOrSet u -> Set u -> Bool のように UrelemOrSet u が負の位置に現れる関数だけなら、私も型クラスやGADTを使うことを考えたのですが、toList :: (Ord u) => Set u -> [UrelemOrSet u] のように UrelemOrSet u が正の位置に現れる関数もあるので、型クラスを使っても嬉しさは限定的かなと考えてました。

ちなみに超集合(hyperset)というのは、メンバシップ関係∋がnon-wellfounded、つまり x1∋x2∋x3∋... という無限列が存在するような集合のことで、ZFとかだと基礎の公理(FA, Foundation Axiom, 正則性公理)によって排除されてしまう可哀想な運命にあります。どんな公理系で扱うかというと、ZFから基礎の公理を除いただけの公理系だと超集合を扱うには何かと不便なので、そこに反基礎の公理(AFA, Anti-Foundation Axiom)を追加した公理系(ZFA)で普通は扱います。僕のこないだのコードも、基礎の公理(と無限集合の公理)を除いた通常の公理と、反基礎の公理を満たすように書いたつもり。

Tags: haskell

2007-12-04

λ. 無限オブ無限

稲葉さんの「無限オブ無限」より。

まずは非常に単純な回答。 斜めに列挙するのに比べると、最初の方のリストの要素が出てきやすく、後の方のリストの要素が出てきにくいのが若干問題かも知れないけど。

iflatten :: [[a]] -> [a]
iflatten = foldr interleave []

interleave :: [a] -> [a] -> [a]
interleave (x:xs) ys = x : interleave ys xs
interleave [] ys     = ys

実行結果はこんな感じ。

Main> take 10 $ iflatten [[(i,j)|j<-[1..]] | i<-[1..]]
[(1,1),(2,1),(1,2),(3,1),(1,3),(2,2),(1,4),(4,1),(1,5),(2,3)]

ちなみに、要素が必ず現れるというのは一種の公平性(fairness)なのだけど、こういった方法をより一般化すると Backtracking, Interleaving, and Terminating Monad Transformers (cf. 20050702#p04) でされているような話になるはず。

また、上記のものにあった後の方のリストの要素が出てきにくいという問題も、20050702#p04で書いた bindz のような関数を用いることで解決することが出来るはず。 もちろんこの場合にはもっと単純になると思うけど。

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

ψ [1..100]>>=pen [interleave xs ys = concat $ transpose [xs, ys] この出現順の重みは大体..]

ψ さかい [おお、なるほど。 transposeを使うとn個のinterleaveへの一般化がしやすくて良いですね。 # それは..]


2008-12-04

λ. 風邪でダウン中

一晩寝たら直るかと思ったけど、朝起きたら38.4℃くらいあった。 医者に行って診察を受けてきて、下痢してるので整腸剤と、あと熱が上がって辛いときのための解熱剤を処方してもらう。インフルエンザではなさそうなのでちょっと安心。 解熱剤は飲まないつもりだったけど、夕方39℃を超えたので解熱剤を飲む。 飲んで寝てたら汗を沢山かいて熱が一気に37℃台まで下がって驚いた。解熱剤効きすぎでちょっと怖いよ。