Home My Page Projects Code Snippets Project Openings diderot
Summary Activity Tracker Tasks SCM

SCM Repository

[diderot] Diff of /branches/vis12/src/compiler/tree-il/tree-il.sml
ViewVC logotype

Diff of /branches/vis12/src/compiler/tree-il/tree-il.sml

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

revision 1115, Thu May 5 04:42:18 2011 UTC revision 1131, Thu May 5 18:53:48 2011 UTC
# Line 13  Line 13 
13      structure Op = LowOps      structure Op = LowOps
14      structure Ty = LowILTypes      structure Ty = LowILTypes
15    
16      (* program properties *)
17        datatype program_prop
18          = StrandsMayDie                   (* present if strands may die *)
19          | NewStrands                      (* present if new strands may be created dynamically *)
20          | StrandCommunication             (* present is strands read the state of other strands *)
21    
22      datatype program = Program of {      datatype program = Program of {
23            props : program_prop list,
24          globals : var list,          globals : var list,
25          globalInit : block,          globalInit : block,
26          strands : strand list,          strands : strand list,
# Line 59  Line 66 
66      (* special Diderot forms *)      (* special Diderot forms *)
67        | S_LoadImage of var * int * exp  (* load image data *)        | S_LoadImage of var * int * exp  (* load image data *)
68        | S_Input of var * string * exp option (* get input *)        | S_Input of var * string * exp option (* get input *)
69          | S_New of Atom.atom * exp list   (* new strand creation *)
70        | S_Exit of exp list        | S_Exit of exp list
71      (* return functions for methods *)      (* return functions for methods *)
72        | S_Active of exp list        | S_Active of exp list
# Line 109  Line 117 
117          end (* local *)          end (* local *)
118        end        end
119    
120      (* printing utilities for debugging *)
121        fun propToString p = (case p
122               of StrandsMayDie => "StrandsMayDie"
123                | NewStrands => "NewStrands"
124                | StrandCommunication => "StrandCommunication"
125              (* end case *))
126    
127        fun kindToString k = (case k
128               of VK_Global => "Global"
129                | VK_State s => concat["State(", Atom.toString s, ")"]
130                | VK_Local => "Local"
131              (* end case *))
132    
133    end    end

Legend:
Removed from v.1115  
changed lines
  Added in v.1131

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