git.fiddlerwoaroof.com
top/system-init.scm
4e987026
 
 (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)))