This is the mail archive of the guile@cygnus.com mailing list for the guile project.
Index Nav: | [Date Index] [Subject Index] [Author Index] [Thread Index] | |
---|---|---|
Message Nav: | [Date Prev] [Date Next] | [Thread Prev] [Thread Next] |
Hello everybody, Sorry if the following is common knowledge in this list: guile> (vector (+ 1 2)) #(3) guile> '#((+ 1 2)) #((+ 1 2)) guile> #((+ 1 2)) #((+ 1 2)) <--- Oops? I don't exactly know, how to interpret R5RS on the subject: it says, > Vectors are written using the notation #(obj ...). For example, a vector > of length 3 containing the number zero in element 0, the list `(2 2 > 2 2)' in element 1, and the string `"Anna"' in element 2 can be written > as following: > > > #(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") This can be interpreted (but I don't think so), that is is illegal to use the #-syntax without quoting. In this case my example above doesn't describe something legal and guile's behaviour is conforming (although it should give a warning). In my interpretation, it might also be legal to use #-syntax without quoting, but in this case the arguments should be evaluated. This would mean that guile's behaviour is incorrect. Best regards, Dirk Herrmann -- This message is best viewed with ISO 8859/1 (latin-1) character encoding. Microsoft .. what do you want to boot today?