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

クライアント側でのクッキーの扱い方

Gaucheでクライアント側でのクッキー処理のプログラムを書こうとしたら、 クッキーの知識を全然もっていないことに気づいたのでメモ。

『セラフィムコール』以前

「ヒロインオムニバスアニメとセラフィムコール」に触発されて、90年代の作品についててきとうに書くことにする。『セラフィムコール』はあまり関係ない。

『セラフィムコール』について少し

『量子回廊』に収録されている田中哲也の短編「夜なのに」を読んだとき、まっさきに『セラフィムコール』第4話「飛翔する天使」のことが思い浮かんだ ということは別にない。どちらも説明無しに時系列が次々にあちこちに移っていくという叙述をとった話なの…

字下げ依存構文の解析

Python、Haskell、YAMLのように行頭の字下げが文法構造に影響を与えるような構文を、字下げ依存構文(indentation-sensitive syntax)と呼ぶことにする。 Peter J. Landin「The Next 700 Programming Languages」(pdf)では、字下げ依存構文のための規則をオフ…

ブラームスの交響曲第4番の第3楽章がスケルツォなのは何故か

ベートーヴェン以降、典型的な交響曲というのは4つの楽章からなり、急→緩→スケルツォ→結のように構成されている。もちろんあくまで典型的というだけで、この形から外れる交響曲もたくさんある。 一般に保守的だとされているらしいブラームスも、交響曲第1番…

小説の理解や解釈について

小説を読んでからずっとあとになって、本を読み返したり人の解説や感想を読んで、全く読み違えていたことに気づくことが多い。たとえば『瓶詰地獄』について 《そのことを最初に指摘》と書いてあるのに、びっくりした。『瓶詰地獄』には、読んだ者の十人が十…

面白かった世界史の新書5冊

時代や地域が偏りすぎているけれど。 川北稔『砂糖の世界史』(岩波ジュニア新書) 菊池良生『神聖ローマ帝国』(講談社現代新書) 藤沢道郎『物語イタリアの歴史』(中公新書) 岡田暁生『西洋音楽史』(中公新書) 朝永振一郎『物理学とは何だろうか』(岩波新書)

恩田陸『三月は深き紅の淵を』4章の雑誌掲載版と単行本版の差異

たぶんよく知られていることだけど、恩田陸『三月は深き紅の淵を』の4章は単行本になったときにかなり書き直されている。すでに捨てたと思っていたその4章の雑誌掲載時の切り抜きが出てきたので、大雑把に比較してみる。 4章の基本的な枠組み自体は雑誌でも…

動画編集ソフトのこと

動画(スライドショー)を作成したこと、Ubuntuで使える動画ソフトのこと。

複式簿記についてのメモ

複式簿記とは、というか「複式簿記」という記入システムについて。 ヨーロッパで複式簿記が使われだしたのが13、14世紀のイタリアで、10進数表記や筆算がヨーロッパで普及し始めた時期・場所とだいたい一致するけど何か関連があるのか、というのが元々の興味…

モナドの初歩

リスト フィリップ・ワドラー(Philip Wadler)は 「How to replace failure by a list of successes: a method for exception handling, backtracking, and pattern matching in lazy functional languages」(1985)で、失敗やバックトラックの可能性がある場…

関心の局所化と静的な記述

「プログラミング言語の基礎知識」のメモ (イントロ部分は省略) 原理的には、プログラミング言語には、チューリングマシンと同等の計算記述能力(+外部リソースを扱う機能)があれば良い。しかし、複雑なプログラムを書くのは簡単な作業ではない。 ではプログ…

改めてGaucheとrlwrapの連携について

rlwrapコマンドを使うと、入力にReadLineの機能が使えるようになる。また補完機能やカッコの対応表示も働く。キーバインドは→GNU Readline Library:1.4 Bindable Readline Commands ヒストリ(Ctrl+p、Ctrl+nなど)と補完(Tab)だけでもかなり便利。 rlwrapをGa…

浮動小数点数に対するテスト

どうやってテストするべきなのかよく判らないもののひとつに浮動小数点数がある。どこをどうやってテストしていいかがそもそも全然判らないものよりはマシかもしれないけれど。 複雑な数値計算で精度がすごく重要とか場合でなければ、多少の誤差はあまり気に…

Schemeの勉強会をやることになったのでメモ

Lispについて教えてほしいということで始まった。 教える相手2人はLispについて名前を聞いたことがあるくらい(1人はプログラミング自体したことがない)で別にLispやSchemeである必要は全くないので、Rubyをすすめたのだけど受け入れられず、結局Schemeになっ…

text.treeの使用例

「Gaucheでの文字列の作り方のメモ」だけだとtext.treeの機能がstring-appendやstring-concatenateとあまり変わらないように見えるので、追加で使用例をあげる。

双曲幾何のタイル張り

http://winnie.kuis.kyoto-u.ac.jp/~okuno/Lecture/05/IntroAlgDs/Escher-Limit.htmlを見て、実際に双曲幾何(非ユークリッド幾何の一種)の描画プログラムを書いてみようと思ったのだけど 円盤の端に近づくと計算の誤差がひどい 各タイルを漏れなし重複無しで…

Gaucheでの文字列の作り方のメモ

いつも文字列を作る場面になってからマニュアルを探し始めるので、少しまとめておく。

Gaucheでクローラを書くことと、そのためのライブラリ

リンクをたどっていくつか巡回するだけの簡単なクローラを作ってみたら、戸惑うところが多かったので、まずはそのメモ。

sxpathのクエリに正規表現を書けるようにする

「sxpathがとてもわかりにくい」の補足。 sxpathのクエリに正規表現を埋め込めるようにしてみた。

sxpathがとてもわかりにくい

sxpathを使ってみようとしたら、とてもわかりにくかったのでメモ。

Gaucheのinfo関数の表示を日本語にするには

gauche.interactiveモジュールのinfo関数を使うとマニュアルを読むことができる。ただし英語で。

法月綸太郎のクイーン論について

後期クイーン問題について 法月綸太郎のクイーン論というと、おそらく「後期クイーン問題」という言葉がすぐに出てくる。 法月は後期クイーン問題について次のように言っている(2006年に瀬名秀明とおこなわれた対談にて)。

Vim+Gaucheでの作業環境の設定

追記: 書き直した Vimについて→VimでのSchemeプログラミング rlwrapについて→改めてGaucheとrlwrapの連携について rlwrapコマンドとの連携

Gaucheのread-line関数で困る時

Gaucheのread-line関数は生成する文字列に行末文字を含めずに捨ててしまう。これは、chompとかchopみたいな関数をわざわざ呼び出さなくてよいという面では、うれしい。 だけど行末文字についての情報は完全に捨ててしまうので、行末文字が何だったのか(ある…

1から9を順番に使って数を作る

Knuth: Recent Newsの冒頭の写真のケーキに 2010 = 1 + 2 + 3×(4×(5+6)×(7+8)+9) と書いてある。去年は、 Did you know that 2009 is (1/2+3)*(4+5*(6*7+8*9))? とあった。 そこで1から9を順番に使って数を作るプログラムを書いてみる。

論理とカリー・ハワード対応について書いたこと一覧とメモ

「直観主義論理の「自然さ」(1) 自然演繹」 直観主義論理の自然演繹では導入則と除去則とが相補的な関係になっている。 「直観主義論理の「自然さ」(2) シーケント計算 」 直観主義論理の自然演繹体系を変形すると直観主義のシーケント計算の体系が得られる…

シーケント計算に対応する計算体系を考えてみる

「直観主義論理のカリー・ハワード対応」(と続く文章)に書いたように、自然演繹とラムダ計算との間に対応関係があった。一方、「直観主義論理の「自然さ」(2)」 「(3)」にあるように、自然演繹とシーケント計算はおおむね対応していた。 ということは、シー…

古典論理のカリー・ハワード対応での証明の書き換えと簡約

「古典論理のカリー・ハワード対応のためのラムダ計算」のつづき。

古典論理のカリー・ハワード対応のためのラムダ計算

「call/ccと古典論理のカリー・ハワード対応」では、型付きラムダ計算にcall/ccを追加して古典論理との対応づけをしたけど、公理の追加ではなく推論規則を追加する形で古典論理との対応づけをしたい。