(bind-func smap:[Stream{!a}*,[!a,!a]*,Stream{!a}*]* (lambda (func xs) (if (null? xs) null (scons (func (scar xs)) (smap func (scdr xs))))))