2008-01-01から1年間の記事一覧

否定神学

Web

http://d.hatena.ne.jp/kilrey/20081230/p2#c1230660574で連想した話。 否定神学とはwikipediaによると 否定神学(ひていしんがく、ギリシア語 apophatike theologia)とは、キリスト教神学において、神を論ずる際に使われた方法論の一つ。ラテン語では via …

図書館の役割

図書館は「知る権利」を守るために「情報」を提供している。問題はどんな「情報」を提供するかという点だと思う。 図書館は制度・設備ともに蓄積した書籍資料、つまり「よく整理された過去の情報」を提供するようにできている。それ以外の情報を提供しようと…

図書館とBLの三つの問題

Web

http://d.hatena.ne.jp/natsu_san/20081229/1230585137の話。この件に関しては少なくとも 同性愛 ポルノ 商業性 の三つの問題が混在している。 BLは同性愛なのか。 図書館の理念からすれば「同性愛に対する偏見を減らすためにも同性愛に関する書籍を図書館に…

理論的背景

PPEGについてちょっと考え直してみたら、PEGを生成するParser Combinatorという扱いになるようだ。Parser CombinatorというとHaskellのものが有名だが、今回の用途だと向いていないかもしれない。とりあえず、このままschemeで書く。stalinでもコンパイルで…

Monad

入力を抽象化しまくったらMonadになった。

ちょっと浮気

PEGをGaucheで書いてみた。……想像以上に簡単に書けた。python要らない? (追記) http://practical-scheme.net/wiliki/wiliki.cgi?amb 特に役立っているはこのambマクロだと思う。 文法要素はすべてthunkにした。ambマクロを包んだthunkを実行するたびにバッ…

新聞社の赤字

Web

http://mubou.seesaa.net/article/111781366.htmlの新聞という商売はもう寿命が尽きかけているという話。 とりあえず報道機関が必要なのは誰もが納得してくれると思う。ブログでも2chでも報道はできるかもしれないが、客観性を担保するという機能がなく、従…

C++

C++版はひとまず後回しに。

decorators

decoratorsライブラリをもうちょっと充実させたい。言うまでもなくdocassertは毎回evalせずとも動くはずだし。Packrat関係で作ったメモ化デコレータも公開する予定。

PPEG

PPEG(Parameterized Parsing Expression Grammar)というのはどうだろう。要するにPEGの文法要素にパラメータを渡して解析の自由度を上げようというアイディア。理論的には夾雑物以外の何者でもないが、ライブラリの実装も文法の実装もかなり楽になるはずだ。…

とりあえず

C++版を書いてみようと思います。結局、PEGとVMの両輪さえあれば何でもできるということか。

教養は役に立つ

Web

世の中では学校の勉強は役に立たないと言われている。それは本当だろうか。 例えば、料理には様々なコツがある。その辺りを掴めないと美味しい料理は難しい。しかし、そのコツの大半は中学高校の化学や生物の範囲で説明できる。醤油ととても良く合うのが鰹出…

賭け金の話

Web

http://d.hatena.ne.jp/pollyanna/20081224に関してコメントも書いたけどエントリにもしてみる。 たぶん、小学生くらいだと目立ったところがあれば嫌われる可能性がある。それは長所かもしれないし、短所かもしれないし、親の職業かもしれないし、珍しい名前…

「ライトオタク」

Web

ガチのオタクが「ライトオタク」を嫌う理由の一つは中途半端さかもしれない。でも、もっと大きくて単純な理由として「フリーライダーを嫌っている」というのもあると思う。 いわゆるオタジャンルで私が好きなのはゲームくらいだし、roguelike界隈はとても自…

まあ、実際のところ

Web

「コミュニケーション能力」なんて「非モテ」や「非コミュ」といった擬似問題の一角にすぎない。まあ、自転車置き場という奴になっているだけだ。ただし、擬似問題は擬似問題なので「非モテ」や「非コミュ」といった人たちがあまり深く悩まないで済むように…

「コミュニケーション能力」など存在しない。

Web

「コミュニケーション能力」という語に違和感があったものの上手く表現できないでいた。で、http://d.hatena.ne.jp/aureliano/20081221/1229832078を読んで「それは違うだろ」と思っていたところ、違和感の正体に気付いた。 「コミュニケーション」が上手く…

負けた

gccがどれくらい速いのかというのを確認するためにintの階乗という簡単なプログラムを手書きアセンブラとC言語で書いて実行してみた。手書きアセンブラは末尾再帰にしたりレジスタ渡しにしたりその場で思い付く限りの高速化を加えたもの。 しかし、手書きア…

プロには「対価を受け取っているか」と「責任を引き受けているか」の二つの基準がある。

Web

http://d.hatena.ne.jp/solar/20081221#p1 へブックマークしたけどもうちょっと詳しく書いてみる。 対価を受け取っているか。 その仕事に対して対価を受け取っているかどうかを基準にプロとアマを分けるという考え方だ。対価の受け取り方は成果報酬でも雇用…

Forth--

今は簡単なDSLを作りながらXXX(自作言語)に必要なものを考えている。例えばForth風の言語を一つでっちあげてみた。言語系の要素は 無名関数定義 ':' ... ';' 辞書読み '?' 辞書書き '@' プリミティブ実行 '!' 数値 [1-9][0-9]* 識別子 それ以外全部 実行系の…

中間言語

現状の実行系は python関数を並べた配列一つがXXX(自作言語)関数の一つに相当する。 実行状態ポインタがXXX(自作言語)関数の一部を指している。 run()は実行状態ポインタのポイント先を実行→インクリメントの繰り返し。 jump系の操作では実行状態ポインタを…

命名!

自作言語の名前をXXX(自作言語)にしようと思う*1。メタ言語という点に因んだ名前が思いつかなかったが、 不定形という点を強調してみよう。 テケリ?いやいや。 あまり畏れ多い名前もダメ。 XXX(自作言語)なら響きも良いな。 という曲折を経て決定した。半分…

Packrat

PEG内PEGを使ってPackrat Parserを生成できるようにした。 Packrat Parserとは要するにメモ化付きのPEG実装だ。PEGでは非終端記号と入力列の位置だけから結果が求まる。つまりメモ化すれば(非終端記号の種類)×(入力列の長さ)程度の時間で解析が終わる。 た…

「センス競争」に参加しないために必要な唯一のこと

Web

http://anond.hatelabo.jp/20081220141008へブックマークコメントを書こうとしたら長すぎるのでこっちへ書く。表題はライフハック記事の真似。 まずhttp://d.hatena.ne.jp/kaien/20081219/p1の「漫画を巡る政治性」は極めて広範な語だ。「漫画」を特定作品に…

違う、違う。そうじゃない。

Web

http://akayaka.blog24.fc2.com/blog-entry-38.html ユリイカな人たちは小難しいことを考えるのが好きで仕方がないんだよ。心底、小難しいのを楽しんでいる。下手をすれば「音楽なんていいからもっと分析しようぜ」という人さえいるかもしれない。

PEG on PEG

PEGでPEGを書いた。これで標準入力から文法を入力できる。 自前のPEGを書いていた動機はこの点にある。大抵のコンパイラ・コンパイラやパーザ・ジェネレータは静的なパーザしか生成できない。普通の用途ではそれで十分だし、速度面のメリットもある。しかし…

BBS

Web

はてなブックマークってSBMというよりも「あらゆるページにコメント欄を後付する」サービスのような気がしてきた。まあ、炎上していても見ない人は見ないだけましか。

PEG

PEGでの開発速度を測ってみた。 後置記法電卓 実装+テストで3分。 中置記法電卓 実装+テストで5分。 lisp記法電卓 実装+テストで10分。 lispのみバグがあったので長い。それを差し引いても10分で書ければ悪くないだろう。

反証可能性

http://d.hatena.ne.jp/lets_skeptic/20081216/p1 「反証可能性」に大した意味はない。 それは経験科学にしか適用できないため。例えば、数学に「反証可能性」はないが、数学抜きで科学を語るのは難しい。もちろん数学や論理学をメタ科学として別枠に括れば…

ただそれだけのことかもしれないな。

Web

http://d.hatena.ne.jp/tek_koc/20081215/1229338035を見て思った。直接は関係ない。 片方は「誰もが同じ」と思っている。だから自分の考えが通じることを前提に話す。 他方は「誰もが違う」と思っている。だから自分の考えが通じないことを前提に話す。 「…

メール

とてもテンパったメールを送ってしまった。返事次第ではここにも影響がでます。