(lambda (form environment)
environment
(let* ((name (cadr form))
- (symbol
+ (variable-name
(intern (string-append "#[" (symbol->string name) "]"))))
`(BEGIN (DEFINE-INTEGRABLE
- (,(symbol-append 'MAKE- name '-VARIABLE) BLOCK)
- (MAKE-VARIABLE BLOCK ',symbol))
+ (,(symbol 'MAKE- name '-VARIABLE) BLOCK)
+ (MAKE-VARIABLE BLOCK ',variable-name))
(DEFINE-INTEGRABLE
- (,(symbol-append 'VARIABLE/ name '-VARIABLE?) LVALUE)
- (EQ? (VARIABLE-NAME LVALUE) ',symbol))
- (DEFINE (,(symbol-append name '-VARIABLE?) LVALUE)
+ (,(symbol 'VARIABLE/ name '-VARIABLE?) LVALUE)
+ (EQ? (VARIABLE-NAME LVALUE) ',variable-name))
+ (DEFINE (,(symbol name '-VARIABLE?) LVALUE)
(AND (VARIABLE? LVALUE)
- (EQ? (VARIABLE-NAME LVALUE) ',symbol))))))))
+ (EQ? (VARIABLE-NAME LVALUE) ',variable-name))))))))
(define-named-variable continuation)
(define-named-variable value)
(slots (cdddr form)))
(let ((make-defs
(lambda (slot index)
- (let ((ref-name (symbol-append class '- slot)))
+ (let ((ref-name (symbol class '- slot)))
`((DEFINE-INTEGRABLE (,ref-name V)
(VECTOR-REF V ,index))
(DEFINE-INTEGRABLE
- (,(symbol-append 'SET- ref-name '!) V OBJECT)
+ (,(symbol 'SET- ref-name '!) V OBJECT)
(VECTOR-SET! V ,index OBJECT)))))))
(if (pair? slots)
`(BEGIN
(if (syntax-match? pattern (cdr form))
(let ((type (cadr form))
(slots (cddr form)))
- (let ((tag-name (symbol-append type '-TAG)))
+ (let ((tag-name (symbol type '-TAG)))
(let ((tag-ref (close-syntax tag-name environment)))
`(BEGIN
(DEFINE ,tag-name
(MAKE-VECTOR-TAG #F ',type #F))
- (DEFINE ,(symbol-append type '?)
+ (DEFINE ,(symbol type '?)
(TAGGED-VECTOR/SUBCLASS-PREDICATE ,tag-ref))
(DEFINE-VECTOR-SLOTS ,type 1 ,@slots)
(SET-VECTOR-TAG-DESCRIPTION! ,tag-ref
(reserved (caddr form))
(enumeration (close-syntax (cadddr form) environment)))
(let ((parent
- (close-syntax (symbol-append name '-TAG) environment)))
- `(define-syntax ,(symbol-append 'DEFINE- name)
+ (close-syntax (symbol name '-TAG) environment)))
+ `(define-syntax ,(symbol 'DEFINE- name)
(sc-macro-transformer
(let ((pattern
`(SYMBOL * ,(lambda (x)
(if (syntax-match? pattern (cdr form))
(let ((type (cadr form))
(slots (cddr form)))
- (let ((tag-name (symbol-append type '-TAG)))
+ (let ((tag-name (symbol type '-TAG)))
(let ((tag-ref
(close-syntax tag-name environment)))
`(BEGIN
(DEFINE ,tag-name
(MAKE-VECTOR-TAG ,',parent ',type
,',enumeration))
- (DEFINE ,(symbol-append type '?)
+ (DEFINE ,(symbol type '?)
(TAGGED-VECTOR/PREDICATE ,tag-ref))
(DEFINE-VECTOR-SLOTS ,type ,,reserved
,@slots)
(slots (cdddr form)))
(let ((ref-name
(lambda (slot)
- (close-syntax (symbol-append type '- slot)
+ (close-syntax (symbol type '- slot)
environment))))
`(LIST
,@(map (lambda (slot)
(SET! ,types (CONS ',type ,types))
,(let ((parameters (map make-synthetic-identifier components)))
`(DEFINE-INTEGRABLE
- (,(symbol-append prefix 'MAKE- type) ,@parameters)
+ (,(symbol prefix 'MAKE- type) ,@parameters)
,(wrap-constructor `(LIST ',type ,@parameters))))
- (DEFINE-INTEGRABLE (,(symbol-append 'RTL: type '?) EXPRESSION)
+ (DEFINE-INTEGRABLE (,(symbol 'RTL: type '?) EXPRESSION)
(EQ? (CAR EXPRESSION) ',type))
,@(let loop ((components components) (ref-index 6) (set-index 2))
(if (pair? components)
- (let ((name (symbol-append type '- (car components))))
+ (let ((name (symbol type '- (car components))))
`((DEFINE-INTEGRABLE
- (,(symbol-append 'RTL: name) OBJECT)
+ (,(symbol 'RTL: name) OBJECT)
(GENERAL-CAR-CDR OBJECT ,ref-index))
(DEFINE-INTEGRABLE
- (,(symbol-append 'RTL:SET- name '!) OBJECT V)
+ (,(symbol 'RTL:SET- name '!) OBJECT V)
(SET-CAR! (GENERAL-CAR-CDR OBJECT ,set-index) V))
,@(loop (cdr components)
(* ref-index 2)
(if (syntax-match? '(SYMBOL (* SYMBOL)) (cdr form))
(let ((name (cadr form))
(elements (caddr form)))
- (let ((enumeration (symbol-append name 'S)))
+ (let ((enumeration (symbol name 'S)))
(let ((enum-ref (close-syntax enumeration environment)))
`(BEGIN
(DEFINE ,enumeration
(MAKE-ENUMERATION ',elements))
,@(map (lambda (element)
- `(DEFINE ,(symbol-append name '/ element)
+ `(DEFINE ,(symbol name '/ element)
(ENUMERATION/NAME->INDEX ,enum-ref ',element)))
elements)))))
(ill-formed-syntax form)))))
(if (syntax-match? '(SYMBOL EXPRESSION * (DATUM * EXPRESSION)) (cdr form))
(enumeration-case-1 (caddr form) (cdddr form) environment
(lambda (element)
- (symbol-append (cadr form) '/ element))
+ (symbol (cadr form) '/ element))
(lambda (expression) expression '()))
(ill-formed-syntax form)))))
(lambda (form environment)
(if (syntax-match? '(EXPRESSION * (DATUM * EXPRESSION)) (cdr form))
(enumeration-case-1 (cadr form) (cddr form) environment
- (lambda (element) (symbol-append element '-TAG))
+ (lambda (element) (symbol element '-TAG))
(lambda (expression)
`((ELSE
(ERROR "Unknown node type:" ,expression)))))
(sc-macro-transformer
(lambda (form environment)
environment
- `(DEFINE-INTEGRABLE ,(symbol-append 'TYPE-CODE: (cadr form))
+ `(DEFINE-INTEGRABLE ,(symbol 'TYPE-CODE: (cadr form))
',(microcode-type (cadr form))))))
(define-type-code lambda)
(lambda (form environment)
(let ((name (cadr form)))
`(DISPATCH-ENTRY ,name
- ,(close-syntax (symbol-append 'CANONICALIZE/
- name)
+ ,(close-syntax (symbol 'CANONICALIZE/ name)
environment))))))
(nary-entry
(name (caddr form)))
`(DISPATCH-ENTRY ,name
,(close-syntax
- `(,(symbol-append 'CANONICALIZE/ nary)
- ,(symbol-append 'SCODE/ name '-COMPONENTS)
- ,(symbol-append 'SCODE/MAKE- name))
+ `(,(symbol 'CANONICALIZE/ nary)
+ ,(symbol 'SCODE/ name '-COMPONENTS)
+ ,(symbol 'SCODE/MAKE- name))
environment))))))
(binary-entry
(lambda (form environment)
(let ((name (cadr form)))
`(DISPATCH-ENTRY ,name
- ,(close-syntax (symbol-append 'GENERATE/ name)
+ ,(close-syntax (symbol 'GENERATE/ name)
environment)))))))
(standard-entry access)
(standard-entry assignment)
,@(let loop ((names (cddr form)) (index (cadr form)))
(if (pair? names)
(cons `(DEFINE-INTEGRABLE
- ,(symbol-append 'CODE:COMPILER-
- (car names))
+ ,(symbol 'CODE:COMPILER- (car names))
,index)
(loop (cdr names) (1+ index)))
`()))))))
,(make-primitive-procedure name #t))
FRAME-SIZE CONTINUATION
(INVOKE-SPECIAL-PRIMITIVE
- ,(close-syntax (symbol-append 'CODE:COMPILER- name)
+ ,(close-syntax (symbol 'CODE:COMPILER- name)
environment))))))))
(define-special-primitive-invocation &+)
(define-special-primitive-invocation &-)
(bindings '()))
(if (not (pair? elements))
(reverse!
- (cons `(define ,(symbol-append '* name '*)
+ (cons `(define ,(symbol '* name '*)
'#(,@(reverse! bindings)))
code))
(let* ((next (car elements))
(error "define-enumeration: Overlap"
next)
m)))))
- (let ((name (symbol-append name '/ suffix)))
+ (let ((name (symbol name '/ suffix)))
(loop (+ n 1)
(cdr elements)
(cons `(DEFINE-INTEGRABLE ,name ,n)
(define (load-pc-relative-address target label-expr)
(with-pc
(lambda (pc-label pc-register)
- (LAP (LEA ,target (@RO W ,pc-register (- ,label-expr ,pc-label)))))))
+ (LAP (LEA ,target (@RO W ,pc-register (- ,label-expr ,pc-label)))))))
\f
(define (with-pc recvr)
(with-values (lambda () (get-cached-label))
(define (target-register target)
(delete-dead-registers!)
(or (register-alias target 'GENERAL)
- (allocate-alias-register! target 'GENERAL)))
+ (allocate-alias-register! target 'GENERAL)))
(define-integrable (target-register-reference target)
(register-reference (target-register target)))
(with-reused-temp
(lambda (temp)
(need-register! temp)
- (with-address-temp temp)))
+ (with-address-temp temp)))
(fail-index
(lambda ()
(with-address-temp
,@(let loop ((names (cddr form)) (index (cadr form)))
(if (pair? names)
(cons `(DEFINE-INTEGRABLE
- ,(symbol-append 'CODE:COMPILER-
- (car names))
+ ,(symbol 'CODE:COMPILER- (car names))
,index)
(loop (cdr names) (+ index 1)))
'()))))))
(define-codes #x012
primitive-apply primitive-lexpr-apply
apply error lexpr-apply link
- interrupt-closure interrupt-dlink interrupt-procedure
+ interrupt-closure interrupt-dlink interrupt-procedure
interrupt-continuation interrupt-ic-procedure
assignment-trap cache-reference-apply
reference-trap safe-reference-trap unassigned?-trap
(if (pair? names)
(if (< index high)
(cons `(DEFINE-INTEGRABLE
- ,(symbol-append 'ENTRY:COMPILER-
- (car names))
+ ,(symbol 'ENTRY:COMPILER- (car names))
(byte-offset-reference regnum:regs-pointer
,index))
(loop (cdr names) (+ index 4) high))
(expect-no-exit-interrupt-checks)
#|
(special-primitive-invocation
- ,(close-syntax (symbol-append 'CODE:COMPILER- name)
+ ,(close-syntax (symbol 'CODE:COMPILER- name)
environment))
|#
(optimized-primitive-invocation
- ,(close-syntax (symbol-append 'ENTRY:COMPILER- name)
+ ,(close-syntax (symbol 'ENTRY:COMPILER- name)
environment))))))))
(define-primitive-invocation &+)
(if (syntax-match? '(SYMBOL * SYMBOL) (cdr form))
(let ((tag (cadr form))
(params (cddr form)))
- (let ((name (symbol-append 'INST: tag)))
+ (let ((name (symbol 'INST: tag)))
`(BEGIN
(DEFINE-INTEGRABLE (,name ,@params)
(LIST (LIST ',tag ,@params)))
- (DEFINE-INTEGRABLE (,(symbol-append name '?) INST)
+ (DEFINE-INTEGRABLE (,(symbol name '?) INST)
(EQ? (CAR INST) ',tag)))))
(ill-formed-syntax form)))))
(if (syntax-match? '(SYMBOL * SYMBOL) (cdr form))
(let ((tag (cadr form))
(params (cddr form)))
- (let ((name (symbol-append 'EA: tag)))
+ (let ((name (symbol 'EA: tag)))
`(BEGIN
(DEFINE-INTEGRABLE (,name ,@params)
(INST-EA (,tag ,@(map (lambda (p) (list 'UNQUOTE p))
params))))
- (DEFINE-INTEGRABLE (,(symbol-append name '?) EA)
+ (DEFINE-INTEGRABLE (,(symbol name '?) EA)
(AND (PAIR? EA)
(EQ? (CAR EA) ',tag))))))
(ill-formed-syntax form)))))
,@(map (lambda (name)
(let ((code (if (pair? name) (cadr name) name))
(prim (if (pair? name) (car name) name)))
- `(DEFINE (,(symbol-append 'TRAP: prim) . ARGS)
+ `(DEFINE (,(symbol 'TRAP: prim) . ARGS)
(APPLY INST:TRAP ',code ARGS))))
(cdr form))))))
environment
`(BEGIN
,@(map (lambda (name)
- `(DEFINE-INST ,(symbol-append 'INTERRUPT-TEST- name)))
+ `(DEFINE-INST ,(symbol 'INTERRUPT-TEST- name)))
(cdr form))))))
(define-interrupt-tests dynamic-link procedure continuation ic-procedure)
'()))))
`(BEGIN
,@(map (lambda (p)
- `(DEFINE-INTEGRABLE ,(symbol-append 'REGNUM: (car p))
+ `(DEFINE-INTEGRABLE ,(symbol 'REGNUM: (car p))
,(cdr p)))
alist)
,@(map (lambda (p)
- `(DEFINE-INTEGRABLE ,(symbol-append 'RREF: (car p))
+ `(DEFINE-INTEGRABLE ,(symbol 'RREF: (car p))
(REGISTER-REFERENCE ,(cdr p))))
alist)
(DEFINE FIXED-REGISTERS ',alist)))
(sc-macro-transformer
(lambda (form environment)
(if (syntax-match? '(symbol identifier) (cdr form))
- (let ((name (symbol-append 'INTERPRETER- (cadr form)))
+ (let ((name (symbol 'INTERPRETER- (cadr form)))
(regnum (close-syntax (caddr form) environment)))
`(BEGIN
(DEFINE (,name)
(RTL:MAKE-MACHINE-REGISTER ,regnum))
- (DEFINE (,(symbol-append name '?) EXPRESSION)
+ (DEFINE (,(symbol name '?) EXPRESSION)
(AND (RTL:REGISTER? EXPRESSION)
(FIX:= (RTL:REGISTER-NUMBER EXPRESSION) ,regnum)))))
(ill-formed-syntax form)))))
frame-size continuation
(expect-no-exit-interrupt-checks)
(%primitive-invocation
- ,(close-syntax (symbol-append 'TRAP: name) environment)))))))
+ ,(close-syntax (symbol 'TRAP: name) environment)))))))
(define (%primitive-invocation make-trap)
(LAP ,@(clear-map!)
`(BEGIN
,@(let loop ((names (cddr form)) (index (cadr form)))
(if (pair? names)
- (cons `(DEFINE-INTEGRABLE
- ,(symbol-append 'CODE:COMPILER-
+ (cons `(DEFINE-INTEGRABLE ,(symbol 'CODE:COMPILER-
(car names))
,index)
(loop (cdr names) (+ index 1)))
,@(let loop ((names (cddr form)) (index (cadr form)))
(if (pair? names)
(cons `(DEFINE-INTEGRABLE
- ,(symbol-append 'ENTRY:COMPILER- (car names))
+ ,(symbol 'ENTRY:COMPILER- (car names))
(BYTE-OFFSET-REFERENCE REGNUM:REGS-POINTER ,index))
(loop (cdr names) (+ index 8)))
'()))))))
(expect-no-exit-interrupt-checks)
#|
(special-primitive-invocation
- ,(close-syntax (symbol-append 'CODE:COMPILER- name)
+ ,(close-syntax (symbol 'CODE:COMPILER- name)
environment))
|#
(optimized-primitive-invocation
- ,(close-syntax (symbol-append 'ENTRY:COMPILER- name)
+ ,(close-syntax (symbol 'ENTRY:COMPILER- name)
environment))))))))
(define-primitive-invocation &+)
(sc-macro-transformer
(lambda (form environment)
(let ((slot (cadr form)))
- (let ((name (symbol-append 'REGISTER- slot)))
+ (let ((name (symbol 'REGISTER- slot)))
(let ((vector
- `(,(close-syntax (symbol-append 'RGRAPH- name)
+ `(,(close-syntax (symbol 'RGRAPH- name)
environment)
*CURRENT-RGRAPH*)))
`(BEGIN
(DEFINE-INTEGRABLE (,name REGISTER)
(VECTOR-REF ,vector REGISTER))
(DEFINE-INTEGRABLE
- (,(symbol-append 'SET- name '!) REGISTER VALUE)
+ (,(symbol 'SET- name '!) REGISTER VALUE)
(VECTOR-SET! ,vector REGISTER VALUE)))))))))
(define-register-references bblock)
(parent-name (caddr form)))
(let* ((name->variable
(lambda (name)
- (symbol-append 'VALUE-CLASS= name)))
+ (symbol 'VALUE-CLASS= name)))
(variable (name->variable name)))
`(BEGIN
(DEFINE ,variable
(close-syntax (name->variable parent-name)
environment)
`#F)))
- (DEFINE (,(symbol-append variable '?) CLASS)
+ (DEFINE (,(symbol variable '?) CLASS)
(VALUE-CLASS/ANCESTOR-OR-SELF? CLASS ,variable))
- (DEFINE (,(symbol-append 'REGISTER- variable '?) REGISTER)
+ (DEFINE (,(symbol 'REGISTER- variable '?) REGISTER)
(VALUE-CLASS/ANCESTOR-OR-SELF?
(REGISTER-VALUE-CLASS REGISTER)
,variable))))))))
(sc-macro-transformer
(lambda (form environment)
(let ((slot-name (cadr form)))
- `(DEFINE-INTEGRABLE ,(symbol-append 'BUFFER- slot-name)
- ,(close-syntax (symbol-append 'BUFFER-% slot-name)
+ `(DEFINE-INTEGRABLE ,(symbol 'BUFFER- slot-name)
+ ,(close-syntax (symbol 'BUFFER-% slot-name)
environment))))))
(rename-buffer-accessor name)
(define (maybe-debug-scheme-error error-type condition)
(let ((p
(variable-default-value
- (or (name->variable (symbol-append 'DEBUG-ON- error-type '-ERROR) #f)
+ (or (name->variable (symbol 'DEBUG-ON- error-type '-ERROR) #f)
(ref-variable-object debug-on-internal-error)))))
(if p
(debug-scheme-error error-type condition (eq? p 'ASK))))
(ill-formed-syntax form)))))
(define (command-name->scheme-name name)
- (symbol-append 'EDWIN-COMMAND$ name))
+ (symbol 'EDWIN-COMMAND$ name))
(define-syntax ref-command
(sc-macro-transformer
(ill-formed-syntax form)))))
(define (variable-name->scheme-name name)
- (symbol-append 'EDWIN-VARIABLE$ name))
+ (symbol 'EDWIN-VARIABLE$ name))
(define-syntax ref-variable
(sc-macro-transformer
(ill-formed-syntax form)))))
(define (mode-name->scheme-name name)
- (symbol-append 'EDWIN-MODE$ name))
\ No newline at end of file
+ (symbol 'EDWIN-MODE$ name))
\ No newline at end of file
(sc-macro-transformer
(lambda (form environment)
(let ((name (cadr form)))
- `(DEFINE-INTEGRABLE (,(symbol-append 'SCREEN- name) SCREEN)
- (,(close-syntax (symbol-append 'TERMINAL-STATE/ name)
+ `(DEFINE-INTEGRABLE (,(symbol 'SCREEN- name) SCREEN)
+ (,(close-syntax (symbol 'TERMINAL-STATE/ name)
environment)
(SCREEN-STATE SCREEN)))))))
(let ((name (cadr form)))
(let ((param (make-synthetic-identifier name)))
`(DEFINE-INTEGRABLE
- (,(symbol-append 'SET-SCREEN- name '!) SCREEN ,param)
+ (,(symbol 'SET-SCREEN- name '!) SCREEN ,param)
(,(close-syntax
- (symbol-append 'SET-TERMINAL-STATE/ name '!)
+ (symbol 'SET-TERMINAL-STATE/ name '!)
environment)
(SCREEN-STATE SCREEN)
,param)))))))
(sc-macro-transformer
(lambda (form environment)
(let ((name (cadr form)))
- `(DEFINE ,(symbol-append 'EDWIN-COMMAND$X- name)
- ,(close-syntax (symbol-append 'EDWIN-COMMAND$ name)
+ `(DEFINE ,(symbol 'EDWIN-COMMAND$X- name)
+ ,(close-syntax (symbol 'EDWIN-COMMAND$ name)
environment))))))
(define-old-mouse-command set-foreground-color)
(sc-macro-transformer
(lambda (form environment)
(let ((name (cadr form)))
- `(DEFINE ,(symbol-append 'EDWIN-VARIABLE$X-SCREEN- name)
- ,(close-syntax (symbol-append 'EDWIN-VARIABLE$FRAME- name)
+ `(DEFINE ,(symbol 'EDWIN-VARIABLE$X-SCREEN- name)
+ ,(close-syntax (symbol 'EDWIN-VARIABLE$FRAME- name)
environment))))))
(define-old-screen-command icon-name-format)
ZS))
(VECTOR
(FIXED-OBJECTS-ITEM 'arity-dispatcher-tag)
- (NAMED-LAMBDA (,(symbol-append 'NULLARY- name))
+ (NAMED-LAMBDA (,(symbol 'NULLARY- name))
,identity)
- (NAMED-LAMBDA (,(symbol-append 'UNARY- name) Z)
+ (NAMED-LAMBDA (,(symbol 'UNARY- name) Z)
(IF (NOT (COMPLEX:COMPLEX? Z))
(ERROR:WRONG-TYPE-ARGUMENT Z "number" ',name))
Z)
- (NAMED-LAMBDA (,(symbol-append 'BINARY- name) Z1 Z2)
+ (NAMED-LAMBDA (,(symbol 'BINARY- name) Z1 Z2)
((UCODE-PRIMITIVE ,(list-ref form 4)) Z1 Z2))))))))))
(commutative + complex:+ 0 &+)
(commutative * complex:* 1 &*))
(FIXED-OBJECTS-ITEM 'arity-dispatcher-tag)
#F
,(close-syntax (list-ref form 2) environment)
- (NAMED-LAMBDA (,(symbol-append 'BINARY- name) Z1 Z2)
+ (NAMED-LAMBDA (,(symbol 'BINARY- name) Z1 Z2)
((UCODE-PRIMITIVE ,(list-ref form 6)) Z1 Z2))))))))))
(non-commutative - complex:negate complex:- complex:+ 0 &-)
(non-commutative / complex:invert complex:/ complex:* 1 &/))
ZS ',name))
(VECTOR
(FIXED-OBJECTS-ITEM 'arity-dispatcher-tag)
- (NAMED-LAMBDA (,(symbol-append 'NULLARY- name)) #T)
- (NAMED-LAMBDA (,(symbol-append 'UNARY- name) Z)
+ (NAMED-LAMBDA (,(symbol 'NULLARY- name)) #T)
+ (NAMED-LAMBDA (,(symbol 'UNARY- name) Z)
(IF (NOT (,(intern (string-append "complex:" type "?"))
Z))
(ERROR:WRONG-TYPE-ARGUMENT
Z ,(string-append type " number") ',name))
#T)
- (NAMED-LAMBDA (,(symbol-append 'BINARY- name) Z1 Z2)
+ (NAMED-LAMBDA (,(symbol 'BINARY- name) Z1 Z2)
,(let ((p
`((UCODE-PRIMITIVE ,(list-ref form 3)) Z1 Z2)))
(if (list-ref form 5)
(VECTOR
(FIXED-OBJECTS-ITEM 'arity-dispatcher-tag)
#F
- (NAMED-LAMBDA (,(symbol-append 'UNARY- name) X)
+ (NAMED-LAMBDA (,(symbol 'UNARY- name) X)
(IF (NOT (COMPLEX:REAL? X))
(ERROR:WRONG-TYPE-ARGUMENT X "real number" ',name))
X)
(car (option/arguments option)))
(define (default-conc-name context)
- (symbol-append (parser-context/name context) '-))
+ (symbol (parser-context/name context) '-))
(define (default-constructor-name context)
- (symbol-append 'MAKE- (parser-context/name context)))
+ (symbol 'MAKE- (parser-context/name context)))
(define (default-copier-name context)
- (symbol-append 'COPY- (parser-context/name context)))
+ (symbol 'COPY- (parser-context/name context)))
(define (default-predicate-name context)
- (symbol-append (parser-context/name context) '?))
+ (symbol (parser-context/name context) '?))
(define (default-unparser-text context)
`(,(absolute 'STANDARD-UNPARSER-METHOD context)
#F))
(define (default-type-name context)
- (symbol-append 'RTD: (parser-context/name context)))
+ (symbol 'RTD: (parser-context/name context)))
\f
(define (apply-option-transformers options context)
(let loop ((options options))
(accessor-name
(let ((conc-name (structure/conc-name structure)))
(if conc-name
- (symbol-append conc-name name)
+ (symbol conc-name name)
name))))
(if (structure/safe-accessors? structure)
`(DEFINE ,accessor-name
(modifier-name
(let ((conc-name (structure/conc-name structure)))
(if conc-name
- (symbol-append 'SET- conc-name name '!)
- (symbol-append 'SET- name '!)))))
+ (symbol 'SET- conc-name name '!)
+ (symbol 'SET- name '!)))))
(if (structure/safe-accessors? structure)
`(DEFINE ,modifier-name
(,(absolute (case (structure/physical-type structure)
(lambda (form environment)
(let ((name (cadr form)))
`(DEFINE-INTEGRABLE
- (,(symbol-append 'GRAPHICS-DEVICE/OPERATION/ name) DEVICE)
- (,(close-syntax (symbol-append 'GRAPHICS-DEVICE-TYPE/OPERATION/
+ (,(symbol 'GRAPHICS-DEVICE/OPERATION/ name) DEVICE)
+ (,(close-syntax (symbol 'GRAPHICS-DEVICE-TYPE/OPERATION/
name)
environment)
(GRAPHICS-DEVICE/TYPE DEVICE)))))))
((dbg-block-name
(sc-macro-transformer
(lambda (form environment)
- (let ((symbol (symbol-append 'DBG-BLOCK-NAME/ (cadr form))))
+ (let ((symbol (symbol 'DBG-BLOCK-NAME/ (cadr form))))
`(DEFINE-INTEGRABLE ,symbol
',((ucode-primitive string->symbol)
(string-append "#[(runtime compiler-info)"
(let ((name (caadr form))
(field-names (cdadr form))
(reporter (caddr form)))
- (let ((ct (symbol-append 'CONDITION-TYPE: name)))
+ (let ((ct (symbol 'CONDITION-TYPE: name)))
`(BEGIN
(SET! ,ct
(MAKE-CONDITION-TYPE ',name CONDITION-TYPE:PARSE-ERROR
`(ACCESS-CONDITION CONDITION ',field-name))
field-names)
PORT))))
- (SET! ,(symbol-append 'ERROR: name)
+ (SET! ,(symbol 'ERROR: name)
(CONDITION-SIGNALLER ,ct
',field-names
STANDARD-ERROR-HANDLER)))))
environment
(if (syntax-match? '(SYMBOL EXPRESSION) (cdr form))
(let ((type (cadr form)))
- (let ((type? (symbol-append type '?))
- (guarantee-type (symbol-append 'GUARANTEE- type))
- (error:not-type (symbol-append 'ERROR:NOT- type))
- (guarantee-valid-type (symbol-append 'GUARANTEE-VALID- type))
- (type-handle (symbol-append type '-HANDLE)))
+ (let ((type? (symbol type '?))
+ (guarantee-type (symbol 'GUARANTEE- type))
+ (error:not-type (symbol 'ERROR:NOT- type))
+ (guarantee-valid-type (symbol 'GUARANTEE-VALID- type))
+ (type-handle (symbol type '-HANDLE)))
`(BEGIN
(DEFINE-INTEGRABLE (,guarantee-type OBJECT CALLER)
(IF (NOT (,type? OBJECT))
environment
(if (syntax-match? '(SYMBOL) (cdr form))
(let ((field (cadr form)))
- `(DEFINE (,(symbol-append 'PGSQL-CONN- field) OBJECT)
- (,(symbol-append 'PQ- field) (CONNECTION->HANDLE OBJECT))))
+ `(DEFINE (,(symbol 'PGSQL-CONN- field) OBJECT)
+ (,(symbol 'PQ- field) (CONNECTION->HANDLE OBJECT))))
(ill-formed-syntax form)))))
(define-connection-accessor db)
environment
(if (syntax-match? '(SYMBOL) (cdr form))
(let ((field (cadr form)))
- `(DEFINE (,(symbol-append 'PGSQL- field) OBJECT)
- (,(symbol-append 'PQ- field) (RESULT->HANDLE OBJECT))))
+ `(DEFINE (,(symbol 'PGSQL- field) OBJECT)
+ (,(symbol 'PQ- field) (RESULT->HANDLE OBJECT))))
(ill-formed-syntax form)))))
(define-result-accessor result-error-message)
,@(let loop ((n 0) (suffixes suffixes))
(if (pair? suffixes)
(cons `(DEFINE-INTEGRABLE
- ,(symbol-append prefix (car suffixes))
+ ,(symbol prefix (car suffixes))
,n)
(loop (+ n 1) (cdr suffixes)))
'()))
(lambda (form environment)
(let ((name (cadr form)))
`(BEGIN
- (DEFINE (,(symbol-append 'STARBASE-DEVICE/ name) DEVICE)
+ (DEFINE (,(symbol 'STARBASE-DEVICE/ name) DEVICE)
(,(close-syntax
- (symbol-append 'STARBASE-GRAPHICS-DESCRIPTOR/ name)
+ (symbol 'STARBASE-GRAPHICS-DESCRIPTOR/ name)
environment)
(GRAPHICS-DEVICE/DESCRIPTOR DEVICE)))
(DEFINE
- (,(symbol-append 'SET-STARBASE-DEVICE/ name '!) DEVICE VALUE)
+ (,(symbol 'SET-STARBASE-DEVICE/ name '!) DEVICE VALUE)
(,(close-syntax
- (symbol-append 'SET-STARBASE-GRAPHICS-DESCRIPTOR/ name '!)
+ (symbol 'SET-STARBASE-GRAPHICS-DESCRIPTOR/ name '!)
environment)
(GRAPHICS-DEVICE/DESCRIPTOR DEVICE)
VALUE)))))))
(DEFINE ,enumeration-name
(ENUMERATION/MAKE ',enumerand-names))
,@(map (lambda (enumerand-name)
- `(DEFINE ,(symbol-append enumerand-name '/ENUMERAND)
+ `(DEFINE ,(symbol enumerand-name '/ENUMERAND)
(ENUMERATION/NAME->ENUMERAND
,(close-syntax enumeration-name environment)
',enumerand-name)))
(,name
(TYPE VECTOR)
(NAMED
- ,(close-syntax (symbol-append name '/ENUMERAND) environment))
- (TYPE-DESCRIPTOR ,(symbol-append 'RTD: name))
- (CONC-NAME ,(symbol-append name '/))
+ ,(close-syntax (symbol name '/ENUMERAND) environment))
+ (TYPE-DESCRIPTOR ,(symbol 'RTD: name))
+ (CONC-NAME ,(symbol name '/))
(CONSTRUCTOR ,(or constructor-name
- (symbol-append name '/MAKE))))
+ (symbol name '/MAKE))))
(scode #f read-only #t)
,@slots)
(DEFINE-GUARANTEE ,name ,(symbol->string name)))))))
(,revert X Y))))))))
\f
(define ((make-type-namer suffix) type #!optional environment)
- (let ((name (symbol-append type suffix)))
+ (let ((name (symbol type suffix)))
(if (default-object? environment)
name
(close-syntax name environment))))
(intern (string-append "arg" (number->string i))))
indexes))
(type-names
- (map (lambda (n) (symbol-append n '-TYPE))
+ (map (lambda (n) (symbol n '-TYPE))
arg-names)))
`(LAMBDA (MODULE-ENTRY)
(LET ,(map (lambda (type-name index)
(sc-macro-transformer
(lambda (form environment)
(let ((name (cadr form)))
- `(DEFINE ,(symbol-append 'EDWIN-COMMAND$X- name)
- ,(close-syntax (symbol-append 'EDWIN-COMMAND$ name)
+ `(DEFINE ,(symbol 'EDWIN-COMMAND$X- name)
+ ,(close-syntax (symbol 'EDWIN-COMMAND$ name)
environment))))))
(define-old-mouse-command set-foreground-color)
(let ((local (cadr form))
(content-type (caddr form))
(elt-type (cadddr form)))
- (let ((qname (symbol-append 'xd: local)))
+ (let ((qname (symbol 'xd: local)))
`(BEGIN
(DEFINE ,qname
(STANDARD-XML-ELEMENT-CONSTRUCTOR ',qname XDOC-URI
,(eq? content-type 'empty)))
- (DEFINE ,(symbol-append qname '?)
+ (DEFINE ,(symbol qname '?)
(LET ((NAME (MAKE-XML-NAME ',qname XDOC-URI)))
(LAMBDA (OBJECT)
(AND (XML-ELEMENT? OBJECT)
(context (caddr form))
(empty? (pair? (cdddr form))))
`(BEGIN
- (DEFINE ,(symbol-append 'HTML: name)
+ (DEFINE ,(symbol 'HTML: name)
(STANDARD-XML-ELEMENT-CONSTRUCTOR ',name HTML-URI ,empty?))
- (DEFINE ,(symbol-append 'HTML: name '?)
+ (DEFINE ,(symbol 'HTML: name '?)
(STANDARD-XML-ELEMENT-PREDICATE ',name HTML-URI))
(DEFINE-HTML-ELEMENT-CONTEXT ',name ',context)))
(ill-formed-syntax form)))))
(or (syntax-match? '(IDENTIFIER EXPRESSION) slot)
(syntax-match? '(IDENTIFIER 'CANONICALIZE EXPRESSION)
slot)))))
- (let ((root (symbol-append 'XML- (cadr form)))
+ (let ((root (symbol 'XML- (cadr form)))
(slots (cddr form)))
- (let ((rtd (symbol-append '< root '>))
- (%constructor (symbol-append '%MAKE- root))
- (constructor (symbol-append 'MAKE- root))
- (predicate (symbol-append root '?))
- (error:not (symbol-append 'ERROR:NOT- root))
+ (let ((rtd (symbol '< root '>))
+ (%constructor (symbol '%MAKE- root))
+ (constructor (symbol 'MAKE- root))
+ (predicate (symbol root '?))
+ (error:not (symbol 'ERROR:NOT- root))
(slot-vars
(map (lambda (slot)
(close-syntax (car slot) environment))
(MAKE-RECORD-TYPE ',root '(,@(map car slots))))
(DEFINE ,predicate
(RECORD-PREDICATE ,rtd))
- (DEFINE (,(symbol-append 'GUARANTEE- root) OBJECT CALLER)
+ (DEFINE (,(symbol 'GUARANTEE- root) OBJECT CALLER)
(IF (NOT ,predicate)
(,error:not OBJECT CALLER)))
(DEFINE (,error:not OBJECT CALLER)
slots
slot-vars)))
,@(map (lambda (slot var)
- (let* ((accessor (symbol-append root '- (car slot)))
- (modifier (symbol-append 'SET- accessor '!)))
+ (let* ((accessor (symbol root '- (car slot)))
+ (modifier (symbol 'SET- accessor '!)))
`(BEGIN
(DEFINE ,accessor
(RECORD-ACCESSOR ,rtd ',(car slot)))
(if (syntax-match? '(IDENTIFIER EXPRESSION) (cdr form))
(let ((name (cadr form))
(accessor (caddr form)))
- (let ((root (symbol-append 'XML- name)))
+ (let ((root (symbol 'XML- name)))
`(SET-RECORD-TYPE-UNPARSER-METHOD!
- ,(close-syntax (symbol-append '< root '>) environment)
+ ,(close-syntax (symbol '< root '>) environment)
(SIMPLE-UNPARSER-METHOD ',root
(LAMBDA (,name)
(LIST (,(close-syntax accessor environment) ,name)))))))
(let ((value
(find-xml-attr (if (null-xml-name-prefix? prefix)
'xmlns
- (symbol-append 'xmlns: prefix))
+ (symbol 'xmlns: prefix))
elt)))
(and value
(begin
((lambda (f)
(for-each (lambda (descriptor) (apply f descriptor)) descriptors))
(lambda (name constructor predicate get-procedure get-extra)
- (define-test (symbol-append name '?)
+ (define-test (symbol name '?)
(lambda ()
(assert-true (predicate (constructor some-procedure some-extra)))))
- (define-test (symbol-append name '- 'PROCEDURE)
+ (define-test (symbol name '- 'PROCEDURE)
(lambda ()
(assert-eq some-procedure
(get-procedure (constructor some-procedure some-extra)))))
- (define-test (symbol-append name '- 'EXTRA)
+ (define-test (symbol name '- 'EXTRA)
(lambda ()
(assert-eq
some-extra
(lambda (name constructor predicate get-procedure get-extra
name* constructor* predicate* get-procedure* get-extra*)
constructor predicate* get-procedure* get-extra*
- (define-test (symbol-append name '? '/ name*)
+ (define-test (symbol name '? '/ name*)
(lambda ()
(assert-false (predicate (constructor* some-procedure some-extra)))))
- (define-test (symbol-append name '? '/ 'JUNK)
+ (define-test (symbol name '? '/ 'JUNK)
(lambda ()
(assert-false (predicate some-extra))))
- (define-test (symbol-append name '- 'PROCEDURE '/ name*)
+ (define-test (symbol name '- 'PROCEDURE '/ name*)
(lambda ()
(let ((object* (constructor* some-procedure some-extra)))
(assert-error (lambda ()
(get-procedure object*))
(list condition-type:wrong-type-argument)))))
- (define-test (symbol-append name '- 'PROCEDURE '/ 'JUNK)
+ (define-test (symbol name '- 'PROCEDURE '/ 'JUNK)
(lambda ()
(assert-error (lambda () (get-procedure some-extra))
(list condition-type:wrong-type-argument))))
- (define-test (symbol-append name '- 'EXTRA '/ name*)
+ (define-test (symbol name '- 'EXTRA '/ name*)
(lambda ()
(let ((object* (constructor* some-procedure some-extra)))
(assert-error (lambda () (get-extra object*))
(list condition-type:wrong-type-argument)))))
- (define-test (symbol-append name '- 'EXTRA '/ 'JUNK)
+ (define-test (symbol name '- 'EXTRA '/ 'JUNK)
(lambda ()
(assert-error (lambda () (get-extra some-extra))
(list condition-type:wrong-type-argument)))))))
(for-each-rounding-mode
(lambda (mode)
- (define-test (symbol-append 'FLO:SET-ROUNDING-MODE ': mode)
+ (define-test (symbol 'FLO:SET-ROUNDING-MODE ': mode)
(lambda ()
(let ((mode* (flo:rounding-mode)))
(flo:preserving-environment
(for-each-rounding-mode
(lambda (mode)
- (define-test (symbol-append 'FLO:WITH-ROUNDING-MODE ': mode)
+ (define-test (symbol 'FLO:WITH-ROUNDING-MODE ': mode)
(lambda ()
(let ((mode* (flo:rounding-mode)))
(flo:with-rounding-mode mode
(lambda (mode)
(define inputs '(-2.0 -1.5 -1.0 -0.5 -0.0 0.0 0.5 1.0 1.5 2.0))
(define (define-rounding-test name operator outputs)
- (define-test (symbol-append 'ROUNDING-MODE-INDEPENDENT ': mode '/ name)
+ (define-test (symbol 'ROUNDING-MODE-INDEPENDENT ': mode '/ name)
(lambda ()
(do ((inputs inputs (cdr inputs))
(outputs outputs (cdr outputs))
(for-each-exception
(lambda (name exception condition-type trappable? elicitors)
condition-type trappable? elicitors ;ignore
- (define-test (symbol-append 'FLO:EXCEPTIONS->NAMES ': name)
+ (define-test (symbol 'FLO:EXCEPTIONS->NAMES ': name)
(lambda ()
(assert-equal (flo:exceptions->names (exception)) (list name))))
- (define-test (symbol-append 'FLO:NAMES->EXCEPTIONS ': name)
+ (define-test (symbol 'FLO:NAMES->EXCEPTIONS ': name)
(lambda ()
(assert-equal (flo:names->exceptions (list name)) (exception))))))
(flo:trapped-exceptions)))
(define (define-set-trapped-exceptions-test name to-trap)
- (define-test (symbol-append 'FLO:SET-TRAPPED-EXCEPTIONS! ': name)
+ (define-test (symbol 'FLO:SET-TRAPPED-EXCEPTIONS! ': name)
(lambda ()
(let ((exceptions (to-trap))
(trapped (flo:trapped-exceptions)))
(assert-eqv (flo:trapped-exceptions) exceptions)))))))
(define (define-with-trapped-exceptions-test name to-trap)
- (define-test (symbol-append 'FLO:WITH-TRAPPED-EXCEPTIONS ': name)
+ (define-test (symbol 'FLO:WITH-TRAPPED-EXCEPTIONS ': name)
(lambda ()
(let ((exceptions (to-trap)))
(flo:with-trapped-exceptions exceptions
(for-each-trappable-exception
(lambda (name exception condition-type elicitors)
condition-type elicitors ;ignore
- (define-test (symbol-append 'FLO:WITH-TRAPPED-EXCEPTIONS ': name)
+ (define-test (symbol 'FLO:WITH-TRAPPED-EXCEPTIONS ': name)
(lambda ()
(flo:with-trapped-exceptions (exception)
(lambda ()
(for-each-trappable-exception
(lambda (name exception condition-type elicitors)
condition-type elicitors ;ignore
- (define-test (symbol-append 'FLO:TRAP-EXCEPTIONS! ': name)
+ (define-test (symbol 'FLO:TRAP-EXCEPTIONS! ': name)
(lambda ()
(flo:with-trapped-exceptions 0
(lambda ()
(for-each-trappable-exception
(lambda (name exception condition-type elicitors)
condition-type elicitors ;ignore
- (define-test (symbol-append 'FLO:UNTRAP-EXCEPTIONS! ': name)
+ (define-test (symbol 'FLO:UNTRAP-EXCEPTIONS! ': name)
(lambda ()
(flo:with-trapped-exceptions (flo:trappable-exceptions)
(lambda ()
(for-each-trappable-exception
(lambda (name exception condition-type elicitors)
condition-type elicitors ;ignore
- (define-test (symbol-append 'FLO:SET-TRAPPED-EXCEPTIONS! ': name ': 'ENABLE)
+ (define-test (symbol 'FLO:SET-TRAPPED-EXCEPTIONS! ': name ': 'ENABLE)
(lambda ()
(flo:with-trapped-exceptions 0
(lambda ()
(for-each-trappable-exception
(lambda (name exception condition-type elicitors)
condition-type elicitors ;ignore
- (define-test (symbol-append 'FLO:SET-TRAPPED-EXCEPTIONS! ': name ': 'DISABLE)
+ (define-test (symbol 'FLO:SET-TRAPPED-EXCEPTIONS! ': name ': 'DISABLE)
(lambda ()
(let ((exceptions (fix:andc (flo:trappable-exceptions) (exception))))
(flo:with-trapped-exceptions (flo:trappable-exceptions)
\f
(for-each-trappable-exception-elicitor
(lambda (name exception condition-type elicitor-name elicitor)
- (define-test (symbol-append 'ELICIT ': name ': elicitor-name)
+ (define-test (symbol 'ELICIT ': name ': elicitor-name)
(lambda ()
(assert-error (lambda ()
(flo:with-trapped-exceptions (exception) elicitor))
(for-each-trappable-exception-elicitor
(lambda (name exception condition-type elicitor-name elicitor)
exception ;ignore
- (define-test (symbol-append 'ELICIT-DEFERRED ': name ': elicitor-name)
+ (define-test (symbol 'ELICIT-DEFERRED ': name ': elicitor-name)
(lambda ()
(assert-error
(lambda ()
(for-each-exception-elicitor
(lambda (name exception condition-type trappable? elicitor-name elicitor)
exception condition-type trappable? ;ignore
- (define-test (symbol-append 'ELICIT-IGNORED ': name ': elicitor-name)
+ (define-test (symbol 'ELICIT-IGNORED ': name ': elicitor-name)
(lambda ()
(flo:ignoring-exception-traps elicitor)))))
(for-each-exception-elicitor
(lambda (name exception condition-type trappable? elicitor-name elicitor)
condition-type trappable? ;ignore
- (define-test (symbol-append 'ELICIT-AND-TEST ': name ': elicitor-name)
+ (define-test (symbol 'ELICIT-AND-TEST ': name ': elicitor-name)
(lambda ()
(assert-eqv (flo:ignoring-exception-traps
(lambda ()
(for-each-exception-elicitor
(lambda (name exception condition-type trappable? elicitor-name elicitor)
condition-type trappable? ;ignore
- (define-test (symbol-append 'ELICIT-CLEAR-TEST ': name ': elicitor-name)
+ (define-test (symbol 'ELICIT-CLEAR-TEST ': name ': elicitor-name)
(lambda ()
(assert-eqv (flo:ignoring-exception-traps
(lambda ()
(flo:with-default-environment (lambda () 0))))
(define (define-default-environment-test name procedure)
- (define-test (symbol-append 'FLO:DEFAULT-ENVIRONMENT ': name)
+ (define-test (symbol 'FLO:DEFAULT-ENVIRONMENT ': name)
(lambda ()
(flo:preserving-environment
(lambda ()
(for-each (lambda (hash-parameters)
(for-each (lambda (entry-type)
(define-test
- (symbol-append 'CORRECTNESS-VS-RB:
- (car entry-type)
- '-
- (car hash-parameters))
+ (symbol 'CORRECTNESS-VS-RB:
+ (car entry-type)
+ '-
+ (car hash-parameters))
(lambda ()
(check
(make-hash-table-implementation