This commit is contained in:
Justin Ethier 2015-06-23 21:56:22 -04:00
parent 606c0f4d45
commit dd4875d141

View file

@ -15,10 +15,26 @@
; (display 'world))) ; (display 'world)))
; BEGIN test code - trying to get definition of with-output-to-file to work ; BEGIN test code - trying to get definition of with-output-to-file to work
(define old (current-output-port)) (define (my-make-parameter init . o)
(define new (current-output-port '<param-convert> (open-output-file "test.txt"))) (let* ((converter
(if (pair? o) (car o) (lambda (x) x)))
(value (converter init)))
(lambda args
(cond
((null? args)
value)
((eq? (car args) '<param-set!>)
(set! value (cadr args)))
((eq? (car args) '<param-convert>)
converter)
(else
(error "bad parameter syntax"))))))
(define my-param
(my-make-parameter (Cyc-stdout)))
(define old (my-param))
(define new (my-param '<param-convert> (open-output-file "test.txt")))
; The next line seems to crash in icyc but not in compiled code (until write, at least). what's going on?? ; The next line seems to crash in icyc but not in compiled code (until write, at least). what's going on??
(current-output-port '<param-set!> new) (my-param '<param-set!> new)
;(write 'test (current-output-port)) (write 'test (my-param))
;(write 'hello-world) ;(write 'hello-world)
; END test code ; END test code