; Copyright (c) 1993-2007 by Richard Kelsey and Jonathan Rees. See file COPYING.

; Load the linker into PLT Scheme

(module plt-link (lib "plt-compat.ss" "alt")

  (plt:require (lib "include.ss"))

  (include "../scheme/alt/plt-features.scm")
  (include "../scheme/alt/record.scm")

  (include "../scheme/rts/util.scm")
  (include "../scheme/rts/defenum.scm")
  (include "../scheme/vm/interp/arch.scm")
  (include "../scheme/alt/jar-defrecord.scm")
  (include "../scheme/big/general-table.scm")
  (include "../scheme/bcomp/mtype.scm")
  (include "../scheme/alt/locations.scm")
  (include "../scheme/bcomp/binding.scm")
  (include "../scheme/bcomp/name.scm")
  (include "../scheme/bcomp/transform.scm")
  (include "../scheme/bcomp/node.scm")
  (include "../scheme/bcomp/schemify.scm")
  (include "../scheme/bcomp/var-util.scm")
  (include "../scheme/bcomp/primop.scm")
  (include "../scheme/alt/fluid.scm")
  (include "../scheme/alt/template.scm")
  (include "../scheme/rts/template.scm")
  (include "../scheme/bcomp/ddata.scm")
  (include "../scheme/bcomp/state.scm")
  (include "../scheme/bcomp/thingie.scm")
  (include "../scheme/bcomp/frame.scm")
  (include "../scheme/bcomp/segment.scm")
  (include "../scheme/bcomp/optimize.scm")
  (include "../scheme/bcomp/flatten.scm")
  (include "../scheme/bcomp/recon.scm")
  (include "../scheme/bcomp/comp-exp.scm")
  (include "../scheme/bcomp/comp-lambda.scm")
  (include "../scheme/bcomp/comp-prim.scm")
  (include "../scheme/bcomp/comp.scm")
  (include "../scheme/alt/closure.scm")
  (include "../scheme/link/data.scm")
  (include "../scheme/link/transport.scm")
  (include "../scheme/link/write-image.scm")
  (include "../scheme/alt/weak.scm")
  (include "../scheme/rts/population.scm")
  (include "../scheme/bcomp/interface.scm")
  (include "../scheme/bcomp/cenv.scm")
  (include "../scheme/bcomp/package.scm")
  (include "../scheme/bcomp/package-undef.scm")
  (include "../scheme/bcomp/syntax.scm")
  (include "../scheme/env/debuginfo.scm")
  (include "../scheme/big/filename.scm")
  (include "../scheme/bcomp/read-form.scm")
  (include "../scheme/bcomp/scan-package.scm")
  (include "../scheme/bcomp/usual.scm")
  (include "../scheme/bcomp/rules.scm")
  (include "../scheme/bcomp/comp-package.scm")
  (include "../scheme/big/strong.scm")
  (include "../scheme/opt/usage.scm")
  (include "../scheme/opt/sort.scm")
  (include "../scheme/opt/inline.scm")
  (include "../scheme/link/reify.scm")
  (include "../scheme/link/link.scm")
  (include "../scheme/alt/loophole.scm")
  (include "../scheme/bcomp/type.scm")
  (include "../scheme/alt/low.scm")
  (include "../scheme/bcomp/module-language.scm")
  (include "../scheme/bcomp/config.scm")
  (include "../scheme/opt/analyze.scm")
  (include "../scheme/alt/environments.scm")
  (include "../scheme/link/loadc.scm")
  (include "../scheme/env/flatload.scm")

  (include "../scheme/alt/init-defpackage.scm")

  #| 
  ; do this via plt-script.ss
  (load-configuration "scheme/interfaces.scm")
  (load-configuration "scheme/vm/shared-interfaces.scm")
  (load-configuration "scheme/packages.scm")
  (flatload initial-structures)
  (load "build/initial.scm")
  (link-initial-system)
  |#
)