419 |
((_ src level name) name))) |
((_ src level name) name))) |
420 |
|
|
421 |
(define (build-data src exp) |
(define (build-data src exp) |
422 |
(if (self-evaluating? exp) |
(if (and (self-evaluating? exp) |
423 |
|
(not (vector? exp))) |
424 |
exp |
exp |
425 |
(list 'quote exp))) |
(list 'quote exp))) |
426 |
|
|
451 |
(define-syntax build-lexical-var |
(define-syntax build-lexical-var |
452 |
(syntax-rules () |
(syntax-rules () |
453 |
((_ src id) (gensym (symbol->string id))))) |
((_ src id) (gensym (symbol->string id))))) |
|
|
|
|
(define-syntax self-evaluating? |
|
|
(syntax-rules () |
|
|
((_ e) |
|
|
(let ((x e)) |
|
|
(or (boolean? x) (number? x) (string? x) (char? x) (keyword? x) |
|
|
(procedure? x)))))) |
|
454 |
) |
) |
455 |
|
|
456 |
(define-structure (syntax-object expression wrap)) |
(define-structure (syntax-object expression wrap)) |