interned symbols.
#| -*-Scheme-*-
-$Header: /Users/cph/tmp/foo/mit-scheme/mit-scheme/v7/src/runtime/defstr.scm,v 14.6 1989/02/28 18:23:55 cph Exp $
+$Header: /Users/cph/tmp/foo/mit-scheme/mit-scheme/v7/src/runtime/defstr.scm,v 14.7 1989/04/18 16:29:25 cph Exp $
-Copyright (c) 1988 Massachusetts Institute of Technology
+Copyright (c) 1988, 1989 Massachusetts Institute of Technology
This material was developed by the Scheme project at the Massachusetts
Institute of Technology, Department of Electrical Engineering and
read-only?))
(define-integrable structure
- (string->symbol "#[DEFSTRUCT-DESCRIPTION]"))
+ (string->symbol "#[defstruct-description]"))
(define slot-assoc)
#| -*-Scheme-*-
-$Header: /Users/cph/tmp/foo/mit-scheme/mit-scheme/v7/src/runtime/lambda.scm,v 14.4 1988/12/30 06:42:58 cph Exp $
+$Header: /Users/cph/tmp/foo/mit-scheme/mit-scheme/v7/src/runtime/lambda.scm,v 14.5 1989/04/18 16:29:32 cph Rel $
-Copyright (c) 1988 Massachusetts Institute of Technology
+Copyright (c) 1988, 1989 Massachusetts Institute of Technology
This material was developed by the Scheme project at the Massachusetts
Institute of Technology, Department of Electrical Engineering and
;;;; Internal Lambda
(define-integrable lambda-tag:internal-lambda
- (string->symbol "#[INTERNAL-LAMBDA]"))
+ (string->symbol "#[internal-lambda]"))
(define-integrable lambda-tag:internal-lexpr
- (string->symbol "#[INTERNAL-LEXPR]"))
+ (string->symbol "#[internal-lexpr]"))
(define-integrable (make-internal-lambda names body)
(make-slambda lambda-tag:internal-lambda names body))
#| -*-Scheme-*-
-$Header: /Users/cph/tmp/foo/mit-scheme/mit-scheme/v7/src/runtime/make.scm,v 14.9 1988/12/31 06:39:18 cph Exp $
+$Header: /Users/cph/tmp/foo/mit-scheme/mit-scheme/v7/src/runtime/make.scm,v 14.10 1989/04/18 16:29:39 cph Exp $
-Copyright (c) 1988 Massachusetts Institute of Technology
+Copyright (c) 1988, 1989 Massachusetts Institute of Technology
This material was developed by the Scheme project at the Massachusetts
Institute of Technology, Department of Electrical Engineering and
string-length
substring=?
substring-move-right!
- substring-upcase!
+ substring-downcase!
tty-beep
tty-flush-output
tty-read-char-immediate
object)
(define (implemented-primitive-procedure? primitive)
- (get-primitive-address (get-primitive-name (object-datum primitive)) false))
+ (get-primitive-address (intern (get-primitive-name (object-datum primitive)))
+ false))
(define map-filename
(if (and (implemented-primitive-procedure? file-exists?)
(substring-move-right! y 0 y-length result x-length)
result)))
-(define (string-upcase string)
+(define (string-downcase string)
(let ((size (string-length string)))
(let ((result (string-allocate size)))
(substring-move-right! string 0 size result 0)
- (substring-upcase! result 0 size)
+ (substring-downcase! result 0 size)
result)))
(define (string=? string1 string2)
(substring=? string1 0 (string-length string1)
string2 0 (string-length string2)))
+(define (intern string)
+ (string->symbol (string-downcase string)))
+
(define (package-initialize package-name procedure-name)
(tty-write-char newline-char)
(tty-write-string "initialize: (")
(string=? filename "gc")))
(eval (purify (fasload (map-filename filename) true)) environment)))
`((SORT-TYPE . MERGE-SORT)
- (OS-TYPE . ,(string->symbol (string-upcase os-name-string)))
+ (OS-TYPE . ,(intern os-name-string))
(OPTIONS . NO-LOAD)))
\f
;; Funny stuff is done. Rest of sequence is standardized.
#| -*-Scheme-*-
-$Header: /Users/cph/tmp/foo/mit-scheme/mit-scheme/v7/src/runtime/parse.scm,v 14.6 1989/02/10 22:13:50 jinx Exp $
+$Header: /Users/cph/tmp/foo/mit-scheme/mit-scheme/v7/src/runtime/parse.scm,v 14.7 1989/04/18 16:29:45 cph Rel $
-Copyright (c) 1988 Massachusetts Institute of Technology
+Copyright (c) 1988, 1989 Massachusetts Institute of Technology
This material was developed by the Scheme project at the Massachusetts
Institute of Technology, Department of Electrical Engineering and
(define (intern-string! string)
;; Special version of `intern' to reduce consing and increase speed.
- (substring-upcase! string 0 (string-length string))
+ (substring-downcase! string 0 (string-length string))
(string->symbol string))
(define (parse-object/symbol)
#| -*-Scheme-*-
-$Header: /Users/cph/tmp/foo/mit-scheme/mit-scheme/v7/src/runtime/runtime.pkg,v 14.34 1989/04/15 01:24:38 cph Exp $
+$Header: /Users/cph/tmp/foo/mit-scheme/mit-scheme/v7/src/runtime/runtime.pkg,v 14.35 1989/04/18 16:29:51 cph Exp $
Copyright (c) 1988, 1989 Massachusetts Institute of Technology
make-definition
make-delay
make-in-package
- make-named-tag
make-quotation
make-the-environment
make-variable
string->symbol
string->uninterned-symbol
symbol->string
- symbol->string/downcase?
symbol-append
symbol-hash
symbol?
#| -*-Scheme-*-
-$Header: /Users/cph/tmp/foo/mit-scheme/mit-scheme/v7/src/runtime/scan.scm,v 14.2 1988/06/16 06:28:56 cph Exp $
+$Header: /Users/cph/tmp/foo/mit-scheme/mit-scheme/v7/src/runtime/scan.scm,v 14.3 1989/04/18 16:29:59 cph Rel $
-Copyright (c) 1988 Massachusetts Institute of Technology
+Copyright (c) 1988, 1989 Massachusetts Institute of Technology
This material was developed by the Scheme project at the Massachusetts
Institute of Technology, Department of Electrical Engineering and
;;; UNSCAN-DEFINES, respectively.
(define-integrable open-block-tag
- (string->symbol "#[OPEN-BLOCK]"))
+ (string->symbol "#[open-block]"))
(define-integrable sequence-2-type
(ucode-type sequence-2))
#| -*-Scheme-*-
-$Header: /Users/cph/tmp/foo/mit-scheme/mit-scheme/v7/src/runtime/scode.scm,v 14.4 1989/04/15 01:22:03 cph Exp $
+$Header: /Users/cph/tmp/foo/mit-scheme/mit-scheme/v7/src/runtime/scode.scm,v 14.5 1989/04/18 16:30:05 cph Rel $
-Copyright (c) 1988 Massachusetts Institute of Technology
+Copyright (c) 1988, 1989 Massachusetts Institute of Technology
This material was developed by the Scheme project at the Massachusetts
Institute of Technology, Department of Electrical Engineering and
(define-integrable string->symbol
(ucode-primitive string->symbol))
-(define symbol->string/downcase?
- true)
-
-(define (symbol->string symbol)
- (let ((string (system-pair-car symbol)))
- (if (and symbol->string/downcase?
- (object-type? (ucode-type interned-symbol) symbol)
- (not (string-find-next-char-in-set string char-set:lower-case)))
- (string-downcase string)
- (string-copy string))))
-
-(define (make-named-tag name)
- (string->symbol (string-append "#[" name "]")))
+(define-integrable (symbol->string symbol)
+ (string-copy (system-pair-car symbol)))
(define-integrable (intern string)
- (string->symbol (string-upcase string)))
+ (string->symbol (string-downcase string)))
(define-integrable (symbol-hash symbol)
(string-hash (system-pair-car symbol)))
(define (symbol-append . symbols)
- (string->symbol (apply string-append (map system-pair-car symbols))))
+ (let ((string (apply string-append (map system-pair-car symbols))))
+ (string-downcase! string)
+ (string->symbol string)))
;;;; Variable
(eq? (car text) declaration-tag)))))
(define-integrable declaration-tag
- (string->symbol "#[DECLARATION]"))
+ (string->symbol "#[declaration]"))
(define-integrable (declaration-text declaration)
(cdr (comment-text declaration)))
#| -*-Scheme-*-
-$Header: /Users/cph/tmp/foo/mit-scheme/mit-scheme/v7/src/runtime/Attic/syntax.scm,v 14.7 1988/12/05 23:32:12 jinx Exp $
+$Header: /Users/cph/tmp/foo/mit-scheme/mit-scheme/v7/src/runtime/Attic/syntax.scm,v 14.8 1989/04/18 16:30:11 cph Rel $
-Copyright (c) 1988 Massachusetts Institute of Technology
+Copyright (c) 1988, 1989 Massachusetts Institute of Technology
This material was developed by the Scheme project at the Massachusetts
Institute of Technology, Department of Electrical Engineering and
(list body)))))
(define-integrable lambda-tag:unnamed
- (string->symbol "#[UNNAMED-PROCEDURE]"))
+ (string->symbol "#[unnamed-procedure]"))
(define-integrable lambda-tag:let
- (string->symbol "#[LET-PROCEDURE]"))
+ (string->symbol "#[let-procedure]"))
(define-integrable lambda-tag:fluid-let
- (string->symbol "#[FLUID-LET-PROCEDURE]"))
+ (string->symbol "#[fluid-let-procedure]"))
(define-integrable lambda-tag:make-environment
- (string->symbol "#[MAKE-ENVIRONMENT]"))
+ (string->symbol "#[make-environment]"))
\f
;;;; Lambda List Parser
#| -*-Scheme-*-
-$Header: /Users/cph/tmp/foo/mit-scheme/mit-scheme/v8/src/runtime/make.scm,v 14.9 1988/12/31 06:39:18 cph Exp $
+$Header: /Users/cph/tmp/foo/mit-scheme/mit-scheme/v8/src/runtime/make.scm,v 14.10 1989/04/18 16:29:39 cph Exp $
-Copyright (c) 1988 Massachusetts Institute of Technology
+Copyright (c) 1988, 1989 Massachusetts Institute of Technology
This material was developed by the Scheme project at the Massachusetts
Institute of Technology, Department of Electrical Engineering and
string-length
substring=?
substring-move-right!
- substring-upcase!
+ substring-downcase!
tty-beep
tty-flush-output
tty-read-char-immediate
object)
(define (implemented-primitive-procedure? primitive)
- (get-primitive-address (get-primitive-name (object-datum primitive)) false))
+ (get-primitive-address (intern (get-primitive-name (object-datum primitive)))
+ false))
(define map-filename
(if (and (implemented-primitive-procedure? file-exists?)
(substring-move-right! y 0 y-length result x-length)
result)))
-(define (string-upcase string)
+(define (string-downcase string)
(let ((size (string-length string)))
(let ((result (string-allocate size)))
(substring-move-right! string 0 size result 0)
- (substring-upcase! result 0 size)
+ (substring-downcase! result 0 size)
result)))
(define (string=? string1 string2)
(substring=? string1 0 (string-length string1)
string2 0 (string-length string2)))
+(define (intern string)
+ (string->symbol (string-downcase string)))
+
(define (package-initialize package-name procedure-name)
(tty-write-char newline-char)
(tty-write-string "initialize: (")
(string=? filename "gc")))
(eval (purify (fasload (map-filename filename) true)) environment)))
`((SORT-TYPE . MERGE-SORT)
- (OS-TYPE . ,(string->symbol (string-upcase os-name-string)))
+ (OS-TYPE . ,(intern os-name-string))
(OPTIONS . NO-LOAD)))
\f
;; Funny stuff is done. Rest of sequence is standardized.
#| -*-Scheme-*-
-$Header: /Users/cph/tmp/foo/mit-scheme/mit-scheme/v8/src/runtime/runtime.pkg,v 14.34 1989/04/15 01:24:38 cph Exp $
+$Header: /Users/cph/tmp/foo/mit-scheme/mit-scheme/v8/src/runtime/runtime.pkg,v 14.35 1989/04/18 16:29:51 cph Exp $
Copyright (c) 1988, 1989 Massachusetts Institute of Technology
make-definition
make-delay
make-in-package
- make-named-tag
make-quotation
make-the-environment
make-variable
string->symbol
string->uninterned-symbol
symbol->string
- symbol->string/downcase?
symbol-append
symbol-hash
symbol?