Mac OSX の Safari4 で読み込み完了しない問題
Safari4 にアップグレードしてから "flash を設置しているサイト" の読み込みが完了せず、表示されないようになってしまった。 flash の無いサイトは問題なく表示されていて、flash のあるサイトの読み込み時でも Safari がフリーズしてしまっているわけではない。 いろいろ検索してみると、どうやら SafariStand が原因だったらしい・・・ Safar…続きを読む
Safari4 にアップグレードしてから "flash を設置しているサイト" の読み込みが完了せず、表示されないようになってしまった。 flash の無いサイトは問題なく表示されていて、flash のあるサイトの読み込み時でも Safari がフリーズしてしまっているわけではない。 いろいろ検索してみると、どうやら SafariStand が原因だったらしい・・・ Safar…続きを読む
問題4.32 3章のストリームと4.2.3節の遅延評価リストとの間の違いは、リストの car の部分を遅延評価するかどうかである。 以下のように4.2.3節の遅延評価リストでは、未定義の x, y を使ったリストを定義できる。 ;;; L-Eval input: (define st (cons x y)) ;;; L-Eval value: ok ;;; L-Eval input: st ;;;…続きを読む
問題4.31 この問題は、参考サイト(SICP 4.2.2 Ex. 4.27 Ex. 4.28 Ex. 4.29 Ex. 4.30 Ex. 4.31 – nakayama-blog)の写経で済ませる。 make-procedure にリーダーマクロを付けて modifier の状態を可視化する。 (define (make-procedure parameters body env) …続きを読む
問題4.30 並びの中の式の内、最後の式以外(途中の式)の引数は評価されず遅延される。 途中の式でも基本手続きの場合はその引数は評価される。 並び(元々のバージョン) (define (eval-sequence exps env) (cond ((last-exp? exps) (eval (first-exp exps) env)) (else (eval (first-exp exps) e…続きを読む
最初、tr で変換すると文字化けしてしまった。tr で日本語を使うには require "jcode" する必要があるらしい。 #!/usr/bin/env ruby -w # -*- coding: utf-8 -*- $KCODE = "u" require "jcode" # String クラスの tr メソッドで日本語を使用可能…続きを読む
Mac OSX 版の Firefox 3.5 のタブの色が変化に乏しく、現在のページのタブが分かりにくいので userChrome.css に以下のコードを記述して見やすくした。 tab { color: #333333 !important; } tab[selected="true"] { color: #000000 !important; background-colo…続きを読む
Firefox 3.5 RC1 が公開されたので、そろそろ新バージョンへの移行の準備を始める。 個人的に利用頻度の高い拡張機能の対応バージョンを調べた。 拡張のバージョンと、その対応 Firefox バージョンは2009年6月18日現在のもの。(2009年6月28日更新、Live HTTP Headers)(2009年7月12日更新、YSlow) ほとんどの拡張機能が 3.5 にまで対応していた。…続きを読む
問題4.29 メモ化しない force-it (define (force-it obj) (if (thunk? obj) (actual-value (thunk-exp obj) (thunk-env obj)) obj)) メモ化した force-it (define (force-it obj) (cond ((thunk? obj) (let ((result (actual-valu…続きを読む
text.tr モジュールを使って Gauche で "ひらがな<->カタカナ" の変換をする。 (use text.tr) (define (kana-translator from to) (define (translator str) (with-string-io str (lambda () (let ((ptr (tr from to))) (let …続きを読む
問題4.28 演算子が手続きの場合に、演算子を強制する必要がある。 演算子の強制をする場合 ((application? exp) (apply (actual-value (operator exp) env) (operands exp) env)) ;;; L-Eval input: (define (foo x) (+ x 1)) ;;; L-Eval value: ok ;;; L-Ev…続きを読む