From 3b66ad41b5caa4a60702e907434e06627d09d2b9 Mon Sep 17 00:00:00 2001 From: Peter Bex Date: Sun, 13 Aug 2017 13:13:38 +0200 Subject: [PATCH] Move reset and reset-handler to (chicken repl) --- chicken.import.scm | 2 -- library.scm | 11 ++++------- repl.scm | 5 ++++- types.db | 4 ++-- 4 files changed, 10 insertions(+), 12 deletions(-) diff --git a/chicken.import.scm b/chicken.import.scm index a812d0d9..b59dcfe7 100644 --- a/chicken.import.scm +++ b/chicken.import.scm @@ -159,8 +159,6 @@ rename-file (repository-path . chicken.platform#repository-path) (require . chicken.load#require) - reset - reset-handler return-to-host reverse-list->string set-port-name! diff --git a/library.scm b/library.scm index 07bebe1f..4f8d7c83 100644 --- a/library.scm +++ b/library.scm @@ -237,7 +237,6 @@ EOF ;;; System routines: (define (exit #!optional (code 0)) ((##sys#exit-handler) code)) -(define (reset) ((##sys#reset-handler))) (define (##sys#debug-mode?) (##core#inline "C_i_debug_modep")) (define (error . args) @@ -4455,11 +4454,6 @@ EOF ;;; Default handlers -(define reset-handler - (make-parameter - (lambda () - ((##sys#exit-handler) _ex_software)) ) ) - (define exit-in-progress #f) (define exit-handler @@ -4478,8 +4472,11 @@ EOF (##sys#cleanup-before-exit) ) ) ) (define ##sys#exit-handler exit-handler) -(define ##sys#reset-handler reset-handler) (define ##sys#implicit-exit-handler implicit-exit-handler) +(define ##sys#reset-handler ; Exposed by chicken.repl + (make-parameter + (lambda () + ((##sys#exit-handler) _ex_software)))) (define force-finalizers (make-parameter #t)) diff --git a/repl.scm b/repl.scm index 66383dc5..b86da83a 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 - (quit repl repl-prompt) + (quit repl repl-prompt reset reset-handler) (import scheme chicken @@ -50,6 +50,9 @@ (define (quit-hook result) (exit)) (define (quit #!optional result) (quit-hook result)) +(define reset-handler ##sys#reset-handler) +(define (reset) ((reset-handler))) + (define repl-prompt (make-parameter (lambda () "#;> "))) diff --git a/types.db b/types.db index e62c82db..be42b13b 100644 --- a/types.db +++ b/types.db @@ -1293,8 +1293,6 @@ (((struct promise)) #(1))) (rename-file (#(procedure #:clean #:enforce) rename-file (string string) string)) -(reset (procedure reset () noreturn)) -(reset-handler (#(procedure #:clean #:enforce) reset-handler (#!optional (procedure () . *)) procedure)) (return-to-host (procedure return-to-host () . *)) (reverse-list->string (#(procedure #:clean #:enforce) reverse-list->string ((list-of char)) string)) @@ -1308,6 +1306,8 @@ (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#reset (procedure chicken.repl#reset () noreturn)) +(chicken.repl#reset-handler (#(procedure #:clean #:enforce) chicken.repl#reset-handler (#!optional (procedure () . *)) procedure)) (chicken.repl#quit (procedure chicken.repl#quit (#!optional *) noreturn)) (set-port-name! (#(procedure #:clean #:enforce) set-port-name! (port string) undefined) -- 2.11.0