>From 84c72e86d72d8e07bbf65111a39d1800d9eead46 Mon Sep 17 00:00:00 2001 From: Evan Hanson Date: Wed, 14 Mar 2018 17:53:00 +1300 Subject: [PATCH 3/3] Print #!-style symbols verbatim, without pipes These symbols are readable, so should be printed as-is by `##sys#print' just like #:keywords or the #!eof token. This has the side effect of making some lambda-infos look nicer in interpreted code, since the DSSSL indicators ("#!optional" et al.) will print verbatim rather than being enclosed by pipes, e.g. "(foo #!key x)" rather than "(foo |#!key| x)". --- library.scm | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/library.scm b/library.scm index f8dd3b26..1d91148a 100644 --- a/library.scm +++ b/library.scm @@ -4558,9 +4558,8 @@ EOF (eq? c #\-) ) (not (##sys#string->number str)) ) ((eq? c #\:) (not (eq? ksp #:prefix))) - ((and (eq? c #\#) - (not (eq? #\% (##core#inline "C_subchar" str 1)))) - #f) + ((eq? c #\#) + (memq (##core#inline "C_subchar" str 1) '(#\% #\!))) ((specialchar? c) #f) (else #t) ) ) (let ((c (##core#inline "C_subchar" str i))) -- 2.11.0