Osamu NAKAMURA
naka****@hasak*****
2004年 9月 17日 (金) 15:34:54 JST
中村です。ふと、 #!/usr/bin/env gosh (define tbl '(1 2 3)) ((lambda (tbl key value) (append! tbl (list key value))) tbl 1 "a") ((lambda (key value) (append! tbl (list key value))) 2 "b") (print tbl) とやってみると、 (1 2 3 1 a 2 b) が得られました。ここでも、 (1 2 3 2 b) が得られそうに思えます。 この4行目を (set! tbl (append tbl (list key value)))) に変えると、 (1 2 3 2 b) が得られて、こちらは納得できるのですが、、、 hash table というより、破壊的代入に関して 理解できてないみたい。 --