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

SCM Repository

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

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

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

revision 464, Tue Nov 9 06:49:52 1999 UTC revision 465, Tue Nov 9 09:08:54 1999 UTC
# Line 1  Line 1 
1  (*  (*
2   * This is a stub providing "slave" functionality for CMB.   * This is a stub providing "slave" functionality for CMB.
3   * (We use dynamic linking technology to avoid loading target-compilers.cm   * (We use dynamic linking technology to avoid loading the target compiler
4   *  on the slave side unless it is really needed.)   *  on the slave side unless it is really needed.)
5   *   *
6   * (C) 1999 Lucent Technologies, Bell Laboratories   * (C) 1999 Lucent Technologies, Bell Laboratories
# Line 9  Line 9 
9   *)   *)
10  structure CMBSlave = struct  structure CMBSlave = struct
11      local      local
12          val loaded = ref StringSet.empty          val loaded = ref StringSet.empty (* remember what we already have *)
13      in      in
14          fun slave load arch s = let          fun slave load arch s = let
15              val lib = arch ^ ".cm"              val lib = arch ^ ".cm" (* eg. sparc-unix -> sparc-unix.cm *)
16          in          in
17              if StringSet.member (!loaded, lib) then ()              if StringSet.member (!loaded, lib) then ()
18              else if load lib then loaded := StringSet.add (!loaded, lib)              else if load lib then loaded := StringSet.add (!loaded, lib)

Legend:
Removed from v.464  
changed lines
  Added in v.465

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