Welcome to the CHICKEN Scheme pasting service
a bit of a cleanup pasted by C-Keen on Mon Jan 23 18:01:49 2012
(define (combine-syms lst)
(let loop ((l lst) (res '()))
(cond ((null? l) (append-map symbol->string (reverse res)))
((symbol? (car l)) (loop (cdr l) (cons (car l) res)))
(else (cons (string-intersperse (map symbol->string (reverse res))) l)))))fixed anchor case pasted by C-Keen on Mon Jan 23 18:05:18 2012
(define (combine-syms lst)
(let loop ((l lst) (res '()))
(cond ((null? l) (string-intersperse (map symbol->string (reverse res))))
((symbol? (car l)) (loop (cdr l) (cons (car l) res)))
(else (cons (string-intersperse (map symbol->string (reverse res))) l)))))final added by C-Keen on Mon Jan 23 21:25:14 2012
(define (combine-syms lst)
(let loop ((l lst) (res '()))
(cond ((null? l) (string-intersperse (reverse res)))
((not (list? (car l)))
(loop (cdr l) (cons (->string (car l)) res)))
((every (lambda (e) (not (number? e))) (car l))
(loop (cdr l) (append (map ->string (car l)) res)))
(else (cons (string-intersperse (reverse res)) l)))))