+(define (serve-script config uri)
+ ;; Scripts are responsible for the entire response, including header
+ (let* ((path (document-path config uri))
+ (proc (eval (with-input-from-file path read))))
+ (with-current-working-directory
+ (pathname-directory (document-path config uri))
+ (lambda ()
+ (apply proc (list uri))))))
+