~ chicken-core (chicken-5) 7985d1a6602366f6905468c08e05bcffc4e31196
commit 7985d1a6602366f6905468c08e05bcffc4e31196
Author: Evan Hanson <evhan@foldling.org>
AuthorDate: Wed Jul 26 08:17:47 2017 +1200
Commit: Peter Bex <peter@more-magic.net>
CommitDate: Sun Aug 6 15:27:29 2017 +0200
Move `quit' into (chicken repl)
Signed-off-by: Peter Bex <peter@more-magic.net>
diff --git a/chicken.import.scm b/chicken.import.scm
index 7b0600a4..4b1da7ae 100644
--- a/chicken.import.scm
+++ b/chicken.import.scm
@@ -161,7 +161,6 @@
program-name
promise?
put!
- quit
quotient&modulo
quotient&remainder
ratnum?
diff --git a/library.scm b/library.scm
index 6cff6796..7cfb8b00 100644
--- a/library.scm
+++ b/library.scm
@@ -238,8 +238,6 @@ EOF
(define (exit #!optional (code 0)) ((##sys#exit-handler) code))
(define (reset) ((##sys#reset-handler)))
-(define (##sys#quit-hook result) ((##sys#exit-handler) 0))
-(define (quit #!optional result) (##sys#quit-hook result))
(define (##sys#debug-mode?) (##core#inline "C_i_debug_modep"))
(define (error . args)
diff --git a/repl.scm b/repl.scm
index 980cc4b4..66383dc5 100644
--- a/repl.scm
+++ b/repl.scm
@@ -30,7 +30,7 @@
(not inline ##sys#repl-read-hook ##sys#repl-print-hook ##sys#read-prompt-hook))
(module chicken.repl
- (repl repl-prompt)
+ (quit repl repl-prompt)
(import scheme
chicken
@@ -47,6 +47,9 @@
(##sys#with-print-length-limit ##sys#repl-print-length-limit (cut ##sys#print x #t port))
(##sys#write-char-0 #\newline port))
+(define (quit-hook result) (exit))
+(define (quit #!optional result) (quit-hook result))
+
(define repl-prompt
(make-parameter (lambda () "#;> ")))
@@ -86,7 +89,7 @@
(ehandler (##sys#error-handler))
(rhandler (##sys#reset-handler))
(lv #f)
- (qh ##sys#quit-hook)
+ (qh quit-hook)
(uie ##sys#unbound-in-eval))
(define (saveports)
@@ -104,7 +107,7 @@
(##sys#dynamic-wind
(lambda ()
(set! lv (load-verbose))
- (set! ##sys#quit-hook (lambda (result) (k result)))
+ (set! quit-hook (lambda (result) (k result)))
(load-verbose #t)
(##sys#error-handler
(lambda (msg . args)
@@ -176,7 +179,7 @@
(loop))))))
(lambda ()
(load-verbose lv)
- (set! ##sys#quit-hook qh)
+ (set! quit-hook qh)
(set! ##sys#unbound-in-eval uie)
(##sys#error-handler ehandler)
(##sys#reset-handler rhandler))))))))))
diff --git a/types.db b/types.db
index 1338a254..e5daf7af 100644
--- a/types.db
+++ b/types.db
@@ -1288,8 +1288,6 @@
((symbol symbol *)
(##core#inline_allocate ("C_a_i_putprop" 8) #(1) #(2) #(3))))
-(quit (procedure quit (#!optional *) noreturn))
-
(remprop! (#(procedure #:clean #:enforce) remprop! (symbol symbol) undefined))
(rename-file (#(procedure #:clean #:enforce) rename-file (string string) string))
(reset (procedure reset () noreturn))
@@ -1307,6 +1305,7 @@
(chicken.repl#repl (#(procedure #:enforce) chicken.repl#repl (#!optional (procedure (*) . *)) undefined))
(chicken.repl#repl-prompt (#(procedure #:clean #:enforce) chicken.repl#repl-prompt (#!optional (procedure () string)) procedure))
+(chicken.repl#quit (procedure chicken.repl#quit (#!optional *) noreturn))
(set-port-name! (#(procedure #:clean #:enforce) set-port-name! (port string) undefined)
((port string) (##sys#setslot #(1) '3 #(2))))
Trap