vectorの仕様が分からなくなった
Gaucheで以下のコードを試してみたのだけど vector の仕様が分からなくなってきた。
quote ありなしの違いは何だ?
gosh> #(3 abc) #(3 abc) gosh> '#(3 abc) #(3 abc) gosh> (eval '#(3 abc) (scheme-report-environment 5)) #(3 abc) gosh> (eval #(3 abc) (scheme-report-environment 5)) #(3 abc)
R5RSによれば #(3 abc) は外部表現のはず。
#(0 (2 2 2 2) "Anna") Note that this is the external representation of a vector, not an expression evaluating to a vector. Like list constants, vector constants must be quoted: '#(0 (2 2 2 2) "Anna") ==> #(0 (2 2 2 2) "Anna"