mirror of
https://git.savannah.gnu.org/git/guile.git
synced 2025-06-11 22:31:12 +02:00
*unspecified* is identifier syntax
* module/ice-9/boot-9.scm (*unspecified*): Define using identifier-syntax. Should also prevent it from being set!. (unspecified?): Move up.
This commit is contained in:
parent
39d950fd21
commit
410e83c012
1 changed files with 14 additions and 3 deletions
|
@ -2654,6 +2654,20 @@ module '(ice-9 q) '(make-q q-length))}."
|
|||
(print-options print-enable print-disable)
|
||||
(print-set!)))
|
||||
|
||||
|
||||
|
||||
;;; {The Unspecified Value}
|
||||
;;;
|
||||
;;; Currently Guile represents unspecified values via one particular value,
|
||||
;;; which may be obtained by evaluating (if #f #f). It would be nice in the
|
||||
;;; future if we could replace this with a return of 0 values, though.
|
||||
|
||||
(define-syntax *unspecified*
|
||||
(identifier-syntax (if #f #f)))
|
||||
|
||||
(define (unspecified? v) (eq? v *unspecified*))
|
||||
|
||||
|
||||
|
||||
|
||||
;;; {Running Repls}
|
||||
|
@ -2666,9 +2680,6 @@ module '(ice-9 q) '(make-q q-length))}."
|
|||
|
||||
;; A provisional repl that acts like the SCM repl:
|
||||
;;
|
||||
(define *unspecified* (if #f #f))
|
||||
(define (unspecified? v) (eq? v *unspecified*))
|
||||
|
||||
(define (default-pre-unwind-handler key . args)
|
||||
;; Narrow by two more frames: this one, and the throw handler.
|
||||
(save-stack 2)
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue