"static" variable pasted by andyjpb on Mon Nov 28 20:21:16 2011

(read-file (current-input-port) read-line)

...

(read-file (current-input-port)

  (lambda (port)
   (let ((prev-line '()))
    (lambda ()
     (read-line port))))
  
  )

no title added by andyjpb on Mon Nov 28 20:28:22 2011

Evaluate the outer function to generate the closure and return the inner function:

  ((lambda ()
   (let ((prev-line '()))
    (lambda (port)
     (read-line port)))))