(define impc:ir:make-arglist-str
(lambda (args . with-symbol?)
(let* ((os (make-string 0)))
(dotimes (i (length args))
(if (> i 0) (emit ", " os))
(let ((arg (list-ref args i)))
;(print 'arg: arg)
(emit (impc:ir:get-type-str (cdr arg)) os)
(if (car with-symbol?)
(emit " %" (symbol->string (car arg)) os))))
(impc:ir:strip-space os))))