Home My Page Projects Code Snippets Project Openings SML/NJ
Summary Activity Forums Tracker Lists Tasks Docs Surveys News SCM Files

SCM Repository

[smlnj] Annotation of /sml/trunk/src/cm/bootstrap/cmb-slave-stub.sml
ViewVC logotype

Annotation of /sml/trunk/src/cm/bootstrap/cmb-slave-stub.sml

Parent Directory Parent Directory | Revision Log Revision Log


Revision 464 - (view) (download)

1 : blume 449 (*
2 :     * This is a stub providing "slave" functionality for CMB.
3 : blume 452 * (We use dynamic linking technology to avoid loading target-compilers.cm
4 : blume 449 * on the slave side unless it is really needed.)
5 :     *
6 :     * (C) 1999 Lucent Technologies, Bell Laboratories
7 :     *
8 :     * Author: Matthias Blume (blume@kurims.kyoto-u.ac.jp)
9 :     *)
10 :     structure CMBSlave = struct
11 :     local
12 : blume 464 val loaded = ref StringSet.empty
13 : blume 449 in
14 : blume 464 fun slave load arch s = let
15 :     val lib = arch ^ ".cm"
16 :     in
17 :     if StringSet.member (!loaded, lib) then ()
18 :     else if load lib then loaded := StringSet.add (!loaded, lib)
19 :     else raise Fail (concat ["dynamic linkage for CMB slave ",
20 :     arch, " failed"]);
21 :     CMBSlaveHook.slave arch s
22 :     end
23 : blume 449 end
24 :     end

root@smlnj-gforge.cs.uchicago.edu
ViewVC Help
Powered by ViewVC 1.0.0