Gauche > Archives > 2014/11/07

2014/11/07 03:10:43 UTC齊藤
#
4.3. の方でトップレベル (グローバル) 変数についての記述がありますよ。
#
Note that a global variable definition may or may not introduce a binding
#
リネームされる、されない、じゃなくて束縛が作られなくてよいので、内からも外からも参照不能になることが許されるのではないでしょうか。
2014/11/07 03:21:34 UTCshiro
#
そこは5.3への参照があり、5.3で言ってることは「トップレベルdefineは、束縛が既にあったらset!と同じだよ、無かったら新たな束縛だよ」なので、その意味でmay or may notなのだと思います。
#
むー、だがその解釈を厳密に保持すると、マクロ展開の結果として(define foo x)が出てきた時、fooが既に束縛されてるかどうかで動作を変えなければならなくなるのかな。だとするとちと面倒だなあ。
2014/11/07 03:33:31 UTC齊藤
#
なるほど。 「してもしなくてもよい」じゃなくて「したりしなかったりする」なわけですね。 誤解していたようです。