; funcao recursiva que monta uma lista no retorno (define recursiva (lambda (entrada tamanho) (let ((lista ())) (when (< tamanho 10) ;; aqui chama-se a funcao recursivamente (set! lista (recursiva entrada (+ tamanho 1)))) ;; aqui fica o retorno da funcao ;; monta uma lista juntando o que veio da chamada ;; recursiva e adiciona o tamanho atual (append lista (list tamanho)))))