* moved call-with-values and values to their own library
* moved exit to ikarus.control
This commit is contained in:
parent
897f6f3596
commit
8324dfadb4
BIN
src/ikarus.boot
BIN
src/ikarus.boot
Binary file not shown.
|
@ -1,10 +1,11 @@
|
|||
|
||||
|
||||
(library (ikarus control)
|
||||
(export call/cf call/cc dynamic-wind)
|
||||
(export call/cf call/cc dynamic-wind exit)
|
||||
(import
|
||||
(only (scheme) $fp-at-base $current-frame $frame->continuation
|
||||
$seal-frame-and-call)
|
||||
(except (ikarus) call/cf call/cc dynamic-wind))
|
||||
(except (ikarus) call/cf call/cc dynamic-wind exit))
|
||||
|
||||
(define primitive-call/cf
|
||||
(lambda (f)
|
||||
|
@ -97,4 +98,10 @@
|
|||
[(v1 v2 . v*)
|
||||
(set! winders (cdr winders))
|
||||
(out)
|
||||
(apply values v1 v2 v*)])))))
|
||||
(apply values v1 v2 v*)]))))
|
||||
|
||||
(define exit
|
||||
(case-lambda
|
||||
[() (exit 0)]
|
||||
[(status) (foreign-call "exit" status)]))
|
||||
)
|
||||
|
|
|
@ -0,0 +1,9 @@
|
|||
|
||||
(library (ikarus multiple-values)
|
||||
(export call-with-values values)
|
||||
(import (except (scheme) call-with-values values))
|
||||
|
||||
(define call-with-values
|
||||
($make-call-with-values-procedure))
|
||||
(define values
|
||||
($make-values-procedure)))
|
|
@ -22,13 +22,15 @@
|
|||
;;; Error: Error: Error: Error: Error: Error: Error: ...).
|
||||
;;;
|
||||
'("ikarus.handlers.ss"
|
||||
"ikarus.multiple-values.ss"
|
||||
"ikarus.control.ss"
|
||||
"ikarus.collect.ss"
|
||||
"ikarus.records.ss"
|
||||
"ikarus.cxr.ss"
|
||||
"ikarus.numerics.ss"
|
||||
"ikarus.guardians.ss"
|
||||
"libcore.ss"
|
||||
|
||||
"ikarus.core.ss"
|
||||
"libchezio.ss"
|
||||
"libhash.ss"
|
||||
"libwriter.ss"
|
||||
|
|
Loading…
Reference in New Issue