I tried the following:

(define (ignore . args)
  (if #f #f))

(define (x)
  (call-with-current-continuation
   (lambda (return)
     (with-input-from-file "/etc/motd"
       (lambda ()
         (return (ignore)))))))

(ignore (x))

This maks csi reading the contents of /etc/motd as source input:

$ csi

CHICKEN
(c)2008-2011 The Chicken Team
(c)2000-2007 Felix L. Winkelmann
Version 4.7.0.3-st
linux-unix-gnu-x86 [ manyargs dload ptables ]
compiled 2011-12-09 on x (Linux)

#;1> (define (ignore . args)
  (if #f #f))
#;2> (define (x)
  (call-with-current-continuation
   (lambda (return)
     (with-input-from-file "/etc/motd"
       (lambda ()
         (return (ignore)))))))
#;3> (ignore (x))

Error: unbound variable:
------------------------------------------------------------------------------------------

Error: unbound variable: Red

Error: unbound variable: Hat

Error: unbound variable: Enterprise

Error: unbound variable: Linux

Error: unbound variable: Client

Error: unbound variable: release
5.5

_______________________________________________
Chicken-users mailing list
Chicken-users@nongnu.org
https://lists.nongnu.org/mailman/listinfo/chicken-users

Reply via email to