On Mon 05 Dec 2011 21:57, Andy Wingo <wi...@pobox.com> writes:

>>    (let* ((vars (map (compose truncate lookup-var) gensyms))
>>           ...)
>>      ...)
>
> Better to truncate when adding variables to all expand-time
> environments, I would think, in the form of `(cut make-primcall #f
> 'values <>)'.

Rather, something like:

   (define (truncate x)
     (match x
       ((<const>) x)
       ;; similar provably singly-valued cases here
       (else (make-primcall #f 'values (list x)))))

Andy
-- 
http://wingolog.org/

Reply via email to