(declare (usual-integrations))
\f
-(define (tagged-object-tag object)
- (guarantee %tagged-object? object 'tagged-object-tag)
- (%tagged-object-tag object))
-
-(define (tagged-object-datum object)
- (guarantee %tagged-object? object 'tagged-object-datum)
- (%tagged-object-datum object))
-
(define (object->predicate object)
(tag->predicate (object->tag object)))
(define (unparse/tagged-object object context)
(*unparse-with-brackets 'tagged-object object context
(lambda (context*)
- (*unparse-object (tag-name (tagged-object-tag object)) context*)
+ (*unparse-object (let ((tag (%tagged-object-tag object)))
+ (if (tag? tag)
+ (tag-name tag)
+ tag))
+ context*)
(*unparse-string " " context*)
- (*unparse-object (tagged-object-datum object) context*))))
\ No newline at end of file
+ (*unparse-object (%tagged-object-datum object) context*))))
\ No newline at end of file