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

Gaucheが落ちた

$ gosh -V Gauche scheme shell, version 0.9 [utf-8,pthreads], i386-apple-darwin9.8.0 $ gosh gosh> (define-class <foo> () ()) <foo> gosh> (define-method foo ((self <foo>))) #<generic foo (1)> gosh> ((car (class-direct-methods <foo>))) something's wrong. $ 落ちたッ!第三部完! (</foo></generic></foo></foo></foo>…

tree-mapの比較関数のデフォルト値

gosh> (coerce-to <tree-map> '(("a" . 1) ("b" . 2))) WARNING: unknown keyword :size *** ERROR: real number required: "a" これは=と ついでに変な警告出てる.</tree-map>

鶴亀

とこぷよにて. http://www.inosendo.com/puyo/rensim/??8000004805400605500885600864605664546845454885868444885655665645646864888555 土台で黄色をうまく処理できなかったものを,鶴亀でうまく消化できた. 鶴亀を自然に使えれば,土台の幅が凄く広がる…

京都大学11月祭ぷよぷよ通大会

‚Q‚O‚P‚O@‹ž“s‘åŠw‚P‚PŒŽÕ‚Õ‚æ‚Õ‚æ’Ê‘å‰ïに参加. 予選(バトルスタンプ)で13勝.1本先取なのと,いろいろなレベルの人がいるので,博打速攻する人が多かった気がする. 19勝くらいすれば決勝にいけたんだったかな. 大会後,観戦したり,しろまさんと初代…

Rabbitでenscriptがおかしい?

= test # enscript ruby a = []とすると空の箱が表示される.a = []の前に空行を入れるとちゃんと表示された.

非アクティブ時のクリックしたときの挙動

rabbit0.9.0で確認.非アクティブ時にクリックした時に次のスライドへ進むかどうかが,クリックでスライドを進めたことがあるかどうかで変わる. 非アクティブ時にクリックした時は次のスライドに進んで欲しくないので,こうした. @@ -36,6 +36,7 @@ else h…

lambdaメソッドがlambda?でないProcを返す

def f(&b) lambda(&b) end f {}.lambda? # => false フンギャー

srfi-18とsrfi-34のraise

(call/cc (lambda (k) (with-exception-handler (lambda (x) (print "condition: ") (print x) (k 'exception)) (lambda () (with-exception-handler (lambda (x) (raise (list 'foo x))) (lambda () (raise 'bar))))))) srfi-18のraiseだと無限ループして,…

dynamic-windマジぱねぇっす

(dynamic-wind (lambda () (print 'before1)) (lambda () (define cont #f) (print 1) (dynamic-wind (lambda () (print 'before2)) (lambda () (print 2) (set! cont (call/cc values))) (lambda () (print 'after2))) (dynamic-wind (lambda () (print 'be…

foldのcallbackの引数の順序

絶対おかしいと思うんだけどどうしてこうなっているのか… (fold list 0 '(1 2 3) '(4 5 6)) ; => (3 6 (2 5 (1 4 0))) この仕様の所為で,foldの実装で素直にapplyできないんだけど… 実装が複雑になってもコストは同じなんだろうか. 意味的にも固定数のもの…

括弧の呪縛

C++

C++0xのコード. int main() { [](){}() ; } http://cpplover.blogspot.com/2009/11/lambda.html 本当,Lispは括弧だらけとか言ったの誰だよw

BiwaSchemeメモ

JavaScriptで書かれたScheme処理系BiwaSchemeに関するメモ. R6RS準拠を目指している. call/ccが何故か構文 call-with-current-continuationを評価させると#だけどcall/ccだとundefined(でも使える) mapのcallbackの中で作られる継続のextentが(多分)mapに…

delayは要らない子?

Gaucheのような (lazy 3) を許す処理系だと,実はdelayを使う意味ってなかったりする?

Spidermonkey1.8 RC1をインストール

Macで普通にmake -f Makefile.refすると, cat: ../../dist/Darwin_DBG.OBJ/nspr/Version: No such file or directoryと言われてmakeに失敗する.NSPRというものに依存しているらしい.そこで,まずNSPRを入れる. cvs -q -d :pserver:anonymous@cvs-mirror.…

Emacs上でFirefoxが動けばいいのに

任意のアプリケーションにEmacsを被せるツールがあればいいのになぁ GUI含め

百万鬼夜行

そういえば最近「百万鬼夜行」とった.久々でヘタクソなのに取れてしまう怪現象のせいで酷いリプレイが残る.

scheme-modeのeldoc-modeでEmacsがフリーズする

#/\"\"(|)/ これ書いて最後ら辺で適当にポイント動かしてるとEmacsがフリーズする. 使ってるのはCarbon Emacs. eldoc-mode切ると落ちなくなった.再びeldoc-modeするとやはりフリーズ.

MeadowでWindowsキーをAltキーに

マニュアルとの格闘だった.設定難解すぎる.Windowsキーは特殊なので厄介. 窓使いの憂鬱 - README window Meadow3 /Meadow\.exe/ : Global mod windows -= LeftWindows mod alt += LeftWindows key *LeftWindows = *LeftAlt (追記) 結局,グローバルにAlt…

なぞぷよ ルルーのルー

BGMが良い

タイトルが長すぎる+xで落ちる

Rabbit 0.6.1にて. rdはこんな感じ = aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa : author a : institution a : theme testthemeの問題の部分 match(TitleSlide, Author) {|authors| authors.margin_top = @space * 7 } これを消すかタイトルをちょっと短くすると…

revive.elで復元したバッファのリージョンが活性化されてしまう

他にも困っている人が居た. http://d.hatena.ne.jp/h1mesuke/20070714/p1 この人はadviceで無理矢理解決しているようだ. ;; resume-windows でのリージョンの活性化を抑制 (defadvice revive:restore-buffers (around suppress-mark-activation activate) …

Gauche-readlineがまともに動いた

以前の日記でGauche-readlineが怪しい動きをしていたのが,動くようになった. 今までの挙動: $ DYLD_INSERT_LIBRARIES=/usr/local/lib/libreadline.dylib gosh-rl WARNING: Quote character setting is not supported by the library. gosh> gosh-rl でハマ…

iotaの誤差

gosh> (iota 5 3 0.1) (2.9999999999999996 3.0999999999999996 3.1999999999999997 3.3 3.4) gosh> (+ 3 0.1) 3.1何故?

Greasemonkeyでエラーの行番号がずれる

FirefoxだとErrorオブジェクトのstackプロパティでスタックトーレス文字列が得られるが,Greasemonkey経由だと行番号が359ずれる.トップレベルでのスタックトレースを見ると何が起こっているのかなんとなく想像がつくが…Greasemonkeyのバージョンによってず…

map-acc

こんな感じのsum-accを書きたかったんだけど,なかなか綺麗に書けない. (sum-acc '(1 2 3 4)) ; => (1 3 6 10) 累積和のリストっていうのかな. 累積ってことでgauche.collectionのmap-accumを使ってみる. (use gauche.collection) (define (sum-acc lis) …

Ruby挙動クイズ(5)

(1) module A def a 42 end end module B include A end class C include B end p C.new.a (2) module A def a 42 end end module B end class C include B end module B include A end p C.new.a

hash-tableとtree-mapの非一貫性

alist->tree-mapとtree-map->alistは組み込みだけど,alist->hash-tableとhash-table->alistはutil.listに入っている. hash-tableとtree-mapは似てるようで(両方なのに)何かと一貫性がない.tree-map-mapがないとか(以前書いた). hash-tableは決められた4…

データ構造の実装は継承できないのか

Haskellの型クラスは,演算の実装は継承できるけど,データ構造の実装は継承できないのかな? よくあるOO言語ではクラスの継承によってデータ構造も継承できるよね. Haskellの型システムは思ったよりパワーがないなぁと感じたんだけどどうなんだろう.デー…

5列連鎖尾ペルシャ19連鎖@創作連鎖

ちょっと前に作ったやつだけど割と傑作だと思う http://1st.geocities.jp/mattulwan/puyo_simulator/?ebd2ecbe2dec2ec2bcbedecb2cbcb3dededceb2cdcedcbdcdb2c2bd2e2dbecb2ebcbc2e4b3

Lispにマップリテラルが無かった本当の理由

Common LispやSchemeでハッシュテーブルリテラルが無いのには理由がある。最大の理由は、「ハッシュテーブルを再現するには、各要素だけでなくハッシュ関数および比較関数の情報が必要」という点だろう。 http://blog.practical-scheme.net/shiro/20100219-m…