mirror of
https://github.com/justinethier/cyclone.git
synced 2025-05-25 21:15:05 +02:00
WIP
This commit is contained in:
parent
ad199f61d3
commit
439bda440d
1 changed files with 33 additions and 1 deletions
|
@ -843,6 +843,38 @@
|
||||||
fill)))
|
fill)))
|
||||||
(list->string
|
(list->string
|
||||||
(apply make-list (cons k fill*)))))
|
(apply make-list (cons k fill*)))))
|
||||||
|
;(define-syntax parameterize
|
||||||
|
; (syntax-rules ()
|
||||||
|
; ((parameterize
|
||||||
|
; ("step")
|
||||||
|
; ((param value p old new) ...)
|
||||||
|
; ()
|
||||||
|
; body)
|
||||||
|
; (let ((p param) ...)
|
||||||
|
; (let ((old (p))
|
||||||
|
; ...
|
||||||
|
; (new ((p <param-convert>) value))
|
||||||
|
; ...)
|
||||||
|
; (dynamic-wind
|
||||||
|
; (lambda () (p <param-set!> new) ...)
|
||||||
|
; (lambda () . body)
|
||||||
|
; (lambda () (p <param-set!> old) ...)))))
|
||||||
|
; ((parameterize
|
||||||
|
; ("step")
|
||||||
|
; args
|
||||||
|
; ((param value) . rest)
|
||||||
|
; body)
|
||||||
|
; (parameterize
|
||||||
|
; ("step")
|
||||||
|
; ((param value p old new) . args)
|
||||||
|
; rest
|
||||||
|
; body))
|
||||||
|
; ((parameterize ((param value) ...) . body)
|
||||||
|
; (parameterize
|
||||||
|
; ("step")
|
||||||
|
; ()
|
||||||
|
; ((param value) ...)
|
||||||
|
; body))))
|
||||||
(define (make-parameter init . o)
|
(define (make-parameter init . o)
|
||||||
(let* ((converter
|
(let* ((converter
|
||||||
(if (pair? o) (car o) (lambda (x) x)))
|
(if (pair? o) (car o) (lambda (x) x)))
|
||||||
|
@ -856,7 +888,7 @@
|
||||||
((eq? (car args) '<param-convert>)
|
((eq? (car args) '<param-convert>)
|
||||||
converter)
|
converter)
|
||||||
(else
|
(else
|
||||||
(error "bad parameter syntax"))))))
|
(error "bad parameter syntax" args))))))
|
||||||
(define current-output-port
|
(define current-output-port
|
||||||
(make-parameter (Cyc-stdout)))
|
(make-parameter (Cyc-stdout)))
|
||||||
(define current-input-port
|
(define current-input-port
|
||||||
|
|
Loading…
Add table
Reference in a new issue