- 689 名前:名無しさん@お腹いっぱい。 mailto:sage [2012/01/13(金) 10:41:53.08 ]
- *scratch* で M-: (setq lexical-binding t) でいいんじゃない?
;; 今まで (setq a 100) (defun foo () (message "%d" a)) (progn (let ((a 200)) (foo)) (foo)) => 200 100 ;; lex bind (setq lexical-binding t) (setq a 100) (defun foo () (message "%d" a)) (progn (let ((a 200)) (foo)) (foo)) => 100 100 ただし、a が defvar で宣言されている場合は lexical-binding を t にしてても強制的に dynamical binding (ようするに今までのと同じ)になる。 だから基本的には置き換えしてもそんなに影響はでないはず。
|

|