(join (args)) and mixed data types?

Started by axtens, April 09, 2009, 10:13:24 AM

Previous topic - Next topic

axtens

G'day everyone



Pardon my naivete, but I'm having trouble with (join (args)) in that I'm expecting to get a string out of it, but it fails when items in the args are non-string.



For example
(define (tracer)
(begin
(set 'str (join (args)))
(append-file "trace.log" str)
(print str)
)
)

(tracer 1 0.2 "do" " " "not")


Out of that I get the following error message
ERR: string expected : 1
called from user defined function tracer


How do I make (tracer) sufficiently generic such that it can handle anything (or almost anything) that it receives in the args list?



Kind regards,

Bruce.

Kazimir Majorinc

#1
Try something in the style of



(set 'str (join (map string (args))))
http://kazimirmajorinc.com/\">WWW site; http://kazimirmajorinc.blogspot.com\">blog.