mirror of
https://git.savannah.gnu.org/git/guile.git
synced 2025-06-13 23:20:32 +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-options print-enable print-disable)
|
||||||
(print-set!)))
|
(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}
|
;;; {Running Repls}
|
||||||
|
@ -2666,9 +2680,6 @@ module '(ice-9 q) '(make-q q-length))}."
|
||||||
|
|
||||||
;; A provisional repl that acts like the SCM repl:
|
;; 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)
|
(define (default-pre-unwind-handler key . args)
|
||||||
;; Narrow by two more frames: this one, and the throw handler.
|
;; Narrow by two more frames: this one, and the throw handler.
|
||||||
(save-stack 2)
|
(save-stack 2)
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue