From 4e987026148fe65c323afbc93cd560c07bf06b3f Mon Sep 17 00:00:00 2001 From: Yale AI Dept Date: Wed, 14 Jul 1993 13:08:00 -0500 Subject: Import to github. --- top/system-init.scm | 41 +++++++++++++++++++++++++++++++++++++++++ 1 file changed, 41 insertions(+) create mode 100644 top/system-init.scm (limited to 'top/system-init.scm') diff --git a/top/system-init.scm b/top/system-init.scm new file mode 100644 index 0000000..4c06cb5 --- /dev/null +++ b/top/system-init.scm @@ -0,0 +1,41 @@ + +(define (initialize-haskell-system) + (when (not *haskell-initialized?*) + (initialize-haskell-system/forced)) + 'haskell-ready) + +(predefine (**tycon/def def args)) ; in util/constructors.scm +(predefine (init-cse-structs)) ; in csys/dump-cse.scm + +(define (initialize-haskell-system/forced) + (setf *haskell-initialized?* '#t) + (setf *error-output-port* (current-output-port)) + (init-core-symbols) + (init-tuples) + (setf *standard-module-default* + (make default-decl + (types (list + (**tycon/def (core-symbol "Int") '()) + (**tycon/def (core-symbol "Double") '()))))) + (setf *undefined-def* + (make def + (name '*undefined*) + (unit '*undefined*) + (module '*undefined*))) + (setf *printer-class* + (make class + (name '|Printers|) + (module '|*Core|) (unit '|*Core|))) + (init-cse-structs)) + +;;; This should be called in the system restart code generated by a +;;; disk save + +(define (load-init-files) + (load-init-file "$HASKELL/.yhaskell") + (load-init-file "~/.yhaskell")) + +(define (load-init-file name) + (when (file-exists? name) + (load name))) + -- cgit v1.2.3