From 5be7477c00bbca211fb405584051711175c3cb5f Mon Sep 17 00:00:00 2001
From: Chris Hanson <org/chris-hanson/cph>
Date: Fri, 1 Mar 2002 03:23:23 +0000
Subject: [PATCH] Hash-table abstraction is now always loaded.  It's no longer
 necessary to use LOAD-OPTION prior to use.

---
 v7/doc/ref-manual/scheme.texinfo | 19 +++++--------------
 v7/src/runtime/make.scm          |  3 ++-
 v7/src/runtime/option.scm        |  5 ++++-
 v7/src/runtime/optiondb.scm      | 10 ++++++----
 v7/src/runtime/runtime.pkg       | 10 ++++------
 5 files changed, 21 insertions(+), 26 deletions(-)

diff --git a/v7/doc/ref-manual/scheme.texinfo b/v7/doc/ref-manual/scheme.texinfo
index d3a7f3c2a..6210db8c9 100644
--- a/v7/doc/ref-manual/scheme.texinfo
+++ b/v7/doc/ref-manual/scheme.texinfo
@@ -2,7 +2,7 @@
 @iftex
 @finalout
 @end iftex
-@comment $Id: scheme.texinfo,v 1.114 2002/02/13 01:00:56 cph Exp $
+@comment $Id: scheme.texinfo,v 1.115 2002/03/01 03:23:23 cph Exp $
 @comment %**start of header (This is for running Texinfo on a region.)
 @setfilename scheme.info
 @settitle MIT Scheme Reference
@@ -51,7 +51,7 @@ Free Documentation License".
 @title{MIT Scheme Reference Manual}
 @subtitle Edition 1.96
 @subtitle for Scheme Release 7.7.0
-@subtitle 12 February 2002
+@subtitle 28 February 2002
 @author by Chris Hanson
 @author the MIT Scheme Team
 @author and a cast of thousands
@@ -11107,18 +11107,9 @@ is proportional to the number of associations in the table; the
 constant of proportionality is described below (@pxref{Resizing of Hash
 Tables}).
 
-@cindex run-time-loadable option
-@cindex option, run-time-loadable
-The hash-table implementation is a run-time-loadable option.  To use
-hash tables, execute
-
-@example
-(load-option 'hash-table)
-@end example
-@findex load-option
-
-@noindent
-once before calling any of the procedures defined here.
+(Previously, the hash-table implementation was a run-time-loadable
+option, but as of release 7.7.0 it is loaded by default.  It's no longer
+necessary to call @code{load-option} prior to using hash tables.)
 
 @menu
 * Construction of Hash Tables::  
diff --git a/v7/src/runtime/make.scm b/v7/src/runtime/make.scm
index 4867f029e..35d592d32 100644
--- a/v7/src/runtime/make.scm
+++ b/v7/src/runtime/make.scm
@@ -1,6 +1,6 @@
 #| -*-Scheme-*-
 
-$Id: make.scm,v 14.85 2002/02/12 00:30:39 cph Exp $
+$Id: make.scm,v 14.86 2002/03/01 03:18:17 cph Exp $
 
 Copyright (c) 1988-2002 Massachusetts Institute of Technology
 
@@ -437,6 +437,7 @@ USA.
    (RUNTIME GENSYM)
    (RUNTIME STREAM)
    (RUNTIME 2D-PROPERTY)
+   (RUNTIME HASH-TABLE)
    ;; Microcode data structures
    (RUNTIME HISTORY)
    (RUNTIME LAMBDA-ABSTRACTION)
diff --git a/v7/src/runtime/option.scm b/v7/src/runtime/option.scm
index 8f2217c54..406266e3c 100644
--- a/v7/src/runtime/option.scm
+++ b/v7/src/runtime/option.scm
@@ -1,6 +1,6 @@
 #| -*-Scheme-*-
 
-$Id: option.scm,v 14.40 2002/02/13 01:04:50 cph Exp $
+$Id: option.scm,v 14.41 2002/03/01 03:18:21 cph Exp $
 
 Copyright (c) 1988-2002 Massachusetts Institute of Technology
 
@@ -100,6 +100,9 @@ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
 (define *parent* initial-load-options)	; A thunk or a pathname/string or #f.
 (define *initial-options-file* #f)
 
+(define (dummy-option-loader)
+  unspecific)
+
 (define (standard-option-loader package-name init-expression . files)
   (lambda ()
     (let ((environment (package/environment (find-package package-name)))
diff --git a/v7/src/runtime/optiondb.scm b/v7/src/runtime/optiondb.scm
index 4c3f44d9b..07db32608 100644
--- a/v7/src/runtime/optiondb.scm
+++ b/v7/src/runtime/optiondb.scm
@@ -1,8 +1,8 @@
 #| -*-Scheme-*-
 
-$Id: optiondb.scm,v 1.13 2001/11/05 21:22:01 cph Exp $
+$Id: optiondb.scm,v 1.14 2002/03/01 03:18:25 cph Exp $
 
-Copyright (c) 1994-2001 Massachusetts Institute of Technology
+Copyright (c) 1994-2002 Massachusetts Institute of Technology
 
 This program is free software; you can redistribute it and/or modify
 it under the terms of the GNU General Public License as published by
@@ -63,7 +63,6 @@ USA.
    (DOSPROCESS	()			#F			"dosproc")
    (FORMAT	(RUNTIME FORMAT)	(INITIALIZE-PACKAGE!)	"format")
    (GDBM	(RUNTIME GDBM)		(INITIALIZE-PACKAGE!)	"gdbm")
-   (HASH-TABLE	(RUNTIME HASH-TABLE)	(INITIALIZE-PACKAGE!)	"hashtb")
    (KRYPT	(RUNTIME KRYPT)		#F			"krypt")
    (MIME-CODEC	(RUNTIME MIME-CODEC)	#F			"mime-codec")
    (ORDERED-VECTOR (RUNTIME ORDERED-VECTOR) #F			"ordvec")
@@ -86,4 +85,7 @@ USA.
 			  "regexp")
   (standard-option-loader '(RUNTIME REXP)
 			  #F
-			  "rexp"))
\ No newline at end of file
+			  "rexp"))
+
+;; HASH-TABLE is now always loaded.
+(define-load-option 'HASH-TABLE dummy-option-loader)
\ No newline at end of file
diff --git a/v7/src/runtime/runtime.pkg b/v7/src/runtime/runtime.pkg
index 9ee538377..928768114 100644
--- a/v7/src/runtime/runtime.pkg
+++ b/v7/src/runtime/runtime.pkg
@@ -1,6 +1,6 @@
 #| -*-Scheme-*-
 
-$Id: runtime.pkg,v 14.410 2002/02/13 01:03:13 cph Exp $
+$Id: runtime.pkg,v 14.411 2002/03/01 03:18:38 cph Exp $
 
 Copyright (c) 1988-2002 Massachusetts Institute of Technology
 
@@ -1672,9 +1672,7 @@ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
   (initialization (initialize-package!)))
 
 (define-package (runtime hash-table)
-  (file-case options
-    ((load) "hashtb")
-    (else))
+  (files "hashtb")
   (parent (runtime))
   (export ()
 	  eq-hash
@@ -2294,12 +2292,12 @@ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
 	  *initial-options-file*
 	  declare-shared-library
 	  define-load-option
+	  dummy-option-loader
 	  further-load-options
 	  load-option
 	  local-load-options
 	  standard-load-options
-	  standard-option-loader
-	  ))
+	  standard-option-loader))
 
 (define-package (runtime parser)
   (files "parse")
-- 
2.25.1