the repl now resets on receiving &interrupted conditions.
This commit is contained in:
		
							parent
							
								
									70f5375d6b
								
							
						
					
					
						commit
						c3b12a22e8
					
				
										
											Binary file not shown.
										
									
								
							|  | @ -76,7 +76,9 @@ description: | ||||||
|                 (lambda (con) |                 (lambda (con) | ||||||
|                   (flush-output-port (console-output-port)) |                   (flush-output-port (console-output-port)) | ||||||
|                   (display "Unhandled exception\n" (console-error-port)) |                   (display "Unhandled exception\n" (console-error-port)) | ||||||
|                   (print-condition con (console-error-port))) |                   (print-condition con (console-error-port)) | ||||||
|  |                   (when (interrupted-condition? con) | ||||||
|  |                     (raise-continuable con))) | ||||||
|                 (lambda () |                 (lambda () | ||||||
|                   (display-prompt 0) |                   (display-prompt 0) | ||||||
|                   (let ([x (my-read k)]) |                   (let ([x (my-read k)]) | ||||||
|  |  | ||||||
|  | @ -124,6 +124,8 @@ | ||||||
|           i/o-encoding-error? i/o-encoding-error-char |           i/o-encoding-error? i/o-encoding-error-char | ||||||
|           no-infinities-violation? make-no-infinities-violation |           no-infinities-violation? make-no-infinities-violation | ||||||
|           no-nans-violation? make-no-nans-violation |           no-nans-violation? make-no-nans-violation | ||||||
|  |            | ||||||
|  |           interrupted-condition? make-interrupted-condition  | ||||||
|           )) |           )) | ||||||
|    |    | ||||||
|   (define-record-type &condition  |   (define-record-type &condition  | ||||||
|  |  | ||||||
|  | @ -36,7 +36,6 @@ | ||||||
|   (define interrupt-handler |   (define interrupt-handler | ||||||
|     (make-parameter |     (make-parameter | ||||||
|       (lambda () |       (lambda () | ||||||
|         (import (ikarus system interrupts)) |  | ||||||
|         ; FIXME |         ; FIXME | ||||||
|         ;(set-port-output-index! (console-output-port) 0) |         ;(set-port-output-index! (console-output-port) 0) | ||||||
|         (raise-continuable |         (raise-continuable | ||||||
|  |  | ||||||
|  | @ -1 +1 @@ | ||||||
| 1535 | 1536 | ||||||
|  |  | ||||||
|  | @ -269,7 +269,6 @@ | ||||||
|     [$stack      (ikarus system $stack)                #f     #t] |     [$stack      (ikarus system $stack)                #f     #t] | ||||||
|     [$interrupts (ikarus system $interrupts)           #f     #t] |     [$interrupts (ikarus system $interrupts)           #f     #t] | ||||||
|     [$io         (ikarus system $io)                   #f     #t] |     [$io         (ikarus system $io)                   #f     #t] | ||||||
|     [interrupts  (ikarus system interrupts)            #f     #t] |  | ||||||
|     [$all        (psyntax system $all)                 #f     #t] |     [$all        (psyntax system $all)                 #f     #t] | ||||||
|     [$boot       (psyntax system $bootstrap)           #f     #t] |     [$boot       (psyntax system $bootstrap)           #f     #t] | ||||||
|     [ne          (psyntax null-environment-5)          #f     #f] |     [ne          (psyntax null-environment-5)          #f     #f] | ||||||
|  | @ -556,8 +555,8 @@ | ||||||
|     [$interrupted?                               $interrupts] |     [$interrupted?                               $interrupts] | ||||||
|     [$unset-interrupted!                         $interrupts] |     [$unset-interrupted!                         $interrupts] | ||||||
|     [$swap-engine-counter!                       $interrupts] |     [$swap-engine-counter!                       $interrupts] | ||||||
|     [interrupted-condition?                      interrupts] |     [interrupted-condition?                      i] | ||||||
|     [make-interrupted-condition                  interrupts] |     [make-interrupted-condition                  i] | ||||||
|     [$apply-nonprocedure-error-handler           ] |     [$apply-nonprocedure-error-handler           ] | ||||||
|     [$incorrect-args-error-handler               ] |     [$incorrect-args-error-handler               ] | ||||||
|     [$multiple-values-error                      ] |     [$multiple-values-error                      ] | ||||||
|  |  | ||||||
		Loading…
	
		Reference in New Issue
	
	 Abdulaziz Ghuloum
						Abdulaziz Ghuloum