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/semant/primitive.sml
ViewVC logotype

Diff of /sml/trunk/src/cm/semant/primitive.sml

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

revision 294, Tue May 25 09:06:06 1999 UTC revision 295, Wed May 26 09:20:25 1999 UTC
# Line 16  Line 16 
16      val fromString : string -> primitive option      val fromString : string -> primitive option
17      val toString : primitive -> string      val toString : primitive -> string
18    
19        val pervasive : primitive
20    
21      (* the domain of (lookup p) must always properly include (exports p) *)      (* the domain of (lookup p) must always properly include (exports p) *)
22      val exports : configuration -> primitive -> SymbolSet.set      val exports : configuration -> primitive -> SymbolSet.set
23      val lookup : configuration -> primitive -> Symbol.symbol -> DAEnv.value      val lookup : configuration -> primitive -> Symbol.symbol -> DAEnv.value
24      val static : configuration -> primitive -> GenericVC.Environment.staticEnv      val env : configuration -> primitive -> GenericVC.Environment.environment
25      val symbolic : configuration -> primitive -> GenericVC.Environment.symenv      val pidInfo : configuration -> primitive
26            -> { statpid: GenericVC.PersStamps.persstamp,
27                 sympid: GenericVC.PersStamps.persstamp,
28                 ctxt: GenericVC.Environment.staticEnv }
29    
30      val configuration :      val configuration :
31          { basis: GenericVC.Environment.environment }          { basis: GenericVC.Environment.environment }
# Line 42  Line 47 
47    
48      type pinfo = { exports : SymbolSet.set,      type pinfo = { exports : SymbolSet.set,
49                     lookup : Symbol.symbol -> DE.value,                     lookup : Symbol.symbol -> DE.value,
50                     static : GenericVC.Environment.staticEnv,                     env : GenericVC.Environment.environment }
                    symbolic : GenericVC.Environment.symenv }  
51    
52      type configuration = primitive -> pinfo      type configuration = primitive -> pinfo
53    
# Line 54  Line 58 
58    
59      fun toString BASIS = "basis"      fun toString BASIS = "basis"
60    
61        val pervasive = BASIS
62    
63      fun exports (cfg: configuration) p = #exports (cfg p)      fun exports (cfg: configuration) p = #exports (cfg p)
64      fun lookup (cfg: configuration) p = #lookup (cfg p)      fun lookup (cfg: configuration) p = #lookup (cfg p)
65      fun static (cfg: configuration) p = #static (cfg p)      fun env (cfg: configuration) p = #env (cfg p)
     fun symbolic (cfg: configuration) p = #symbolic (cfg p)  
66    
67      fun configuration { basis } = let      fun configuration { basis } = let
68    
# Line 80  Line 85 
85                | cvt_result BE.CM_NONE = NONE                | cvt_result BE.CM_NONE = NONE
86    
87              val sb = BE.staticPart (GenericVC.CoerceEnv.e2b e)              val sb = BE.staticPart (GenericVC.CoerceEnv.e2b e)
             val static = E.staticPart e  
             val symbolic = E.symbolicPart e  
88    
89              val { domain, looker } =              val { domain, looker } =
90                  cvt_fctenv { symbols = fn () => BE.catalogEnv sb,                  cvt_fctenv { symbols = fn () => BE.catalogEnv sb,
91                               look = BE.cmEnvOfModule sb }                               look = BE.cmEnvOfModule sb }
92          in          in
93              { exports = domain (), lookup = valOf o looker,              { exports = domain (), lookup = valOf o looker, env = e }
               static = static, symbolic = symbolic }  
94          end          end
95    
96          val basis_pinfo = gen_pinfo basis          val basis_pinfo = gen_pinfo basis
# Line 96  Line 98 
98      in      in
99          cfg          cfg
100      end      end
101        fun pidInfo c _ = Dummy.f ()
102  end  end

Legend:
Removed from v.294  
changed lines
  Added in v.295

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