<html><head><meta http-equiv="Content-Type" content="text/html charset=windows-1252"></head><body style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space;"><br><div><div>On Aug 7, 2014, at 1:21 PM, Alexander D. Knauth <<a href="mailto:alexander@knauth.org">alexander@knauth.org</a>> wrote:</div><br><blockquote type="cite"><meta http-equiv="Content-Type" content="text/html charset=windows-1252"><div style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space;"><div>By the way would this function version be helpful at all?</div><div><br></div><div><div><font face="Courier New">(define (apply* fs lst*)</font></div><div><font face="Courier New">  (cond [(empty? fs) lst*]</font></div><div><font face="Courier New">        [(not (list? lst*)) lst*]</font></div><div><font face="Courier New">        [else</font></div><div><font face="Courier New">         (define f (first fs))</font></div><div><font face="Courier New">         (define rst (rest fs))</font></div><div><font face="Courier New">         (apply f</font></div><div><font face="Courier New">                (for/list ([lst (in-list lst*)])</font></div><div><font face="Courier New">                  (apply* rst lst)))]))</font></div><div><font face="Courier New"><br></font></div><div><font face="Courier New">(apply* (list list vector hash)</font></div><div><font face="Courier New">        '((1 2 3 4) (5 (6 7) 8)))</font></div><div><font face="Courier New">; '(#(1 2 3 4) #(5 #hash((6 . 7)) 8))</font></div></div></div></blockquote><br></div><div>Yes! And extremely instructive. So much to learn!</div><div><br></div><div>Thanks!</div><div><br></div><div>-Kevin</div><br></body></html>