linking

The linker is invoked from the combine module. It exports the following bindings:

load-moduleCompiler
\begin{arguments}
\item[module name] A symbol
\end{arguments}
Load a module into the current feel image. It will also load any submodules that the module needs. For this to work correctly, there should be no implicit dependencies between the initialisation of modules — if (the initialisation of) module A depends on module B, then A should use a binding from B. For the majority of cases, it should work OK.

load-modulesCompiler
\begin{arguments}
\item[module-list] List of symbols
\end{arguments}
Load all of the modules in mod-list in the given order.

combine-user-modulesCompiler
\begin{arguments}
\item [image-name] A symbol
\item [module-list] List of modules
\end{arguments}
Link the modules in mod-list with the system module standard0, producing an file which can be used with the -boot option.

combine-user-modules-with-descCompiler
\begin{arguments}
\item [image-name] A symbol
\item [module-list] List of modules
\item[filename] Module-description file
\end{arguments}
As above, but use the description file provided to locate external bindings, rather than the system itself. This is primarily for cross-linking.