| list | list to implode |
|---|
(implode '(b l a c k h o l e)) => blackhole
(define (implode x)
(letrec
((sym->char
(lambda (x)
(let ((str (symbol->string x)))
(if (not (= (string-length str) 1))
(wrong "bad symbol in implode" x)
(string-ref str 0))))))
(string->symbol
(list->string (map sym->char x)))))