Fix tagging to work correctly with integers and scheme-numbers

This commit is contained in:
Oliver Payne 2022-03-12 20:21:23 +00:00
parent 86b044fd13
commit 502e84bd63
1 changed files with 2 additions and 5 deletions

View File

@ -168,14 +168,11 @@
(not (integer? x))))
(define (attach-tag type-tag contents)
(cond ((or (scheme-number? contents)
(integer? contents))
contents)
(cond ((eq? type-tag 'scheme-number) contents)
(else (cons type-tag contents))))
(define (type-tag datum)
(cond ((scheme-number? datum) 'scheme-number)
((integer? datum) 'integer)
(cond ((number? datum) 'scheme-number)
((pair? datum) (car datum))
(else (error "Bad tagged datum -- TYPE-TAG" datum))))