; FILE		"Require.scm"
; IMPLEMENTS	Simple provide/require interface
; AUTHOR	Ken Dickey
; DATE		1992 September 1
; LAST UPDATED	1992 September 1
; NOTES		Defines FORMAT, REQUIRE, and LIBRARY-DIRECTORY.

(load "SCM:format")

(define LIBRARY-DIRECTORY "SCM:")  ;; choose your own

(define REQUIRE
  (let ( (provided (list 'format)) )
     (lambda ( <symbol> )
        (if (memq <symbol> provided)
            <symbol>
            (let ( (path (string-append library-directory
				        (symbol->string <symbol>)))
                 )
              (cond
                ((load path)
                 (set! provided (cons <symbol> provided))
                 <symbol>)
                (else (error (string-append "Could not load " path)))
            ) )
) )  )  )


;;			    --- E O F ---			;;
