Gauche > Archives > 2011/04/03

2011/04/03 01:08:27 UTCとおる。
#
;;; -*- lexical-binding: t -*-
(defun april-fools? ()
   (let ((a t)
         (check (let ((a nil)) (lambda () a))))
     (funcall check)))

(april-fools?) => nil
#
この検証コード見ると lexical-binding: t ってかくとレキシカルバインディングが有効になるのかな? ダイナミックバインディングはある程度素直に書いたコードなら変数名の重複がないからすんなり移行できたりするのかも。
2011/04/03 02:38:55 UTCshiro
#
うーむ、コメントの内容によってプログラムの意味が変わるってのは気味悪いなあ。emacs的にはどうせ-*-の行はファイルをオープンする時に必ず見るからいいのかもしれないけど。