about summary refs log tree commit diff
path: root/src
diff options
context:
space:
mode:
authorGraydon Hoare <graydon@mozilla.com>2010-12-03 12:15:32 -0800
committerGraydon Hoare <graydon@mozilla.com>2010-12-03 12:15:32 -0800
commita98b2ebb4ad090d3d7eaa9ab3b1d98be0867e990 (patch)
tree2d9036d432ea83e08f03720854ad10d2477e513c /src
parent7bdb93266d3a88e407f7996d374a8364b84b8e01 (diff)
downloadrust-a98b2ebb4ad090d3d7eaa9ab3b1d98be0867e990.tar.gz
rust-a98b2ebb4ad090d3d7eaa9ab3b1d98be0867e990.zip
Change 'stratum' to the friendlier term 'layer'.
Diffstat (limited to 'src')
-rw-r--r--src/Makefile2
-rw-r--r--src/boot/driver/llvm/glue.ml2
-rw-r--r--src/boot/driver/main.ml8
-rw-r--r--src/boot/driver/session.ml2
-rw-r--r--src/boot/fe/ast.ml50
-rw-r--r--src/boot/fe/fuzz.ml2
-rw-r--r--src/boot/fe/item.ml28
-rw-r--r--src/boot/fe/pexp.ml16
-rw-r--r--src/boot/fe/token.ml4
-rw-r--r--src/boot/me/dwarf.ml40
-rw-r--r--src/boot/me/layer.ml (renamed from src/boot/me/stratum.ml)14
-rw-r--r--src/boot/me/semant.ml34
-rw-r--r--src/comp/front/token.rs4
-rw-r--r--src/comp/middle/trans.rs4
14 files changed, 105 insertions, 105 deletions
diff --git a/src/Makefile b/src/Makefile
index 814f78e7bb5..79a8176740b 100644
--- a/src/Makefile
+++ b/src/Makefile
@@ -265,7 +265,7 @@ BE_MLS := $(addprefix boot/be/, x86.ml ra.ml pe.ml elf.ml \
           macho.ml)
 IL_MLS := $(addprefix boot/be/, asm.ml il.ml abi.ml)
 ME_MLS := $(addprefix boot/me/, walk.ml semant.ml resolve.ml alias.ml \
-            simplify.ml type.ml dead.ml stratum.ml effect.ml typestate.ml \
+            simplify.ml type.ml dead.ml layer.ml effect.ml typestate.ml \
             loop.ml layout.ml transutil.ml trans.ml dwarf.ml)
 FE_MLS := $(addprefix boot/fe/, ast.ml token.ml lexer.ml parser.ml \
             extfmt.ml pexp.ml item.ml cexp.ml fuzz.ml)
diff --git a/src/boot/driver/llvm/glue.ml b/src/boot/driver/llvm/glue.ml
index da5e5b9dea9..c1dc2894ade 100644
--- a/src/boot/driver/llvm/glue.ml
+++ b/src/boot/driver/llvm/glue.ml
@@ -18,7 +18,7 @@ let alt_pipeline sess sem_cx crate =
       Simplify.process_crate;
       Type.process_crate;
       Typestate.process_crate;
-      Stratum.process_crate;
+      Layer.process_crate;
       Effect.process_crate;
       Loop.process_crate;
       Alias.process_crate;
diff --git a/src/boot/driver/main.ml b/src/boot/driver/main.ml
index 82057766b37..2bbc832bf04 100644
--- a/src/boot/driver/main.ml
+++ b/src/boot/driver/main.ml
@@ -38,7 +38,7 @@ let (sess:Session.sess) =
     Session.sess_log_resolve = false;
     Session.sess_log_type = false;
     Session.sess_log_simplify = false;
-    Session.sess_log_stratum = false;
+    Session.sess_log_layer = false;
     Session.sess_log_effect = false;
     Session.sess_log_typestate = false;
     Session.sess_log_loop = false;
@@ -180,8 +180,8 @@ let argspecs =
        "-ltype"     "log type checking");
     (flag (fun _ -> sess.Session.sess_log_simplify <- true)
        "-lsimplify" "log simplification");
-    (flag (fun _ -> sess.Session.sess_log_stratum <- true)
-       "-lstratum"  "log stratum checking");
+    (flag (fun _ -> sess.Session.sess_log_layer <- true)
+       "-llayer"  "log layer checking");
     (flag (fun _ -> sess.Session.sess_log_effect <- true)
        "-leffect"   "log effect checking");
     (flag (fun _ -> sess.Session.sess_log_typestate <- true)
@@ -396,7 +396,7 @@ let main_pipeline _ =
          Simplify.process_crate;
          Type.process_crate;
          Typestate.process_crate;
-         Stratum.process_crate;
+         Layer.process_crate;
          Effect.process_crate;
          Loop.process_crate;
          Alias.process_crate;
diff --git a/src/boot/driver/session.ml b/src/boot/driver/session.ml
index d79b7d2067d..0b02096f2ce 100644
--- a/src/boot/driver/session.ml
+++ b/src/boot/driver/session.ml
@@ -24,7 +24,7 @@ type sess =
   mutable sess_log_resolve: bool;
   mutable sess_log_type: bool;
   mutable sess_log_simplify: bool;
-  mutable sess_log_stratum: bool;
+  mutable sess_log_layer: bool;
   mutable sess_log_effect: bool;
   mutable sess_log_typestate: bool;
   mutable sess_log_dead: bool;
diff --git a/src/boot/fe/ast.ml b/src/boot/fe/ast.ml
index ce9f9cc4139..5e814af3af5 100644
--- a/src/boot/fe/ast.ml
+++ b/src/boot/fe/ast.ml
@@ -34,10 +34,10 @@ type effect =
   | EFF_unsafe
 ;;
 
-type stratum =
-    STRAT_value
-  | STRAT_state
-  | STRAT_gc
+type layer =
+    LAYER_value
+  | LAYER_state
+  | LAYER_gc
 ;;
 
 type opacity =
@@ -94,7 +94,7 @@ and ty =
   | TY_task
 
   | TY_native of opaque_id
-  | TY_param of (ty_param_idx * stratum)
+  | TY_param of (ty_param_idx * layer)
   | TY_named of name
   | TY_type
 
@@ -181,7 +181,7 @@ and ty_fn = (ty_sig * ty_fn_aux)
 
 and ty_obj_header = (slot array * constrs)
 
-and ty_obj = (stratum * ((ident,ty_fn) Hashtbl.t))
+and ty_obj = (layer * ((ident,ty_fn) Hashtbl.t))
 
 and check_calls = (lval * (atom array)) array
 
@@ -434,7 +434,7 @@ and fn =
 and obj =
     {
       obj_state: header_slots;
-      obj_stratum: stratum;
+      obj_layer: layer;
       obj_constrs: constrs;
       obj_fns: (ident,fn identified) Hashtbl.t;
       obj_drop: block option;
@@ -449,10 +449,10 @@ and obj =
  * even if it's a type that's bound by a quantifier in its environment.
  *)
 
-and ty_param = ident * (ty_param_idx * stratum)
+and ty_param = ident * (ty_param_idx * layer)
 
 and mod_item' =
-    MOD_ITEM_type of (stratum * ty)
+    MOD_ITEM_type of (layer * ty)
   | MOD_ITEM_tag of (header_slots * opaque_id * int)
   | MOD_ITEM_mod of (mod_view * mod_items)
   | MOD_ITEM_fn of fn
@@ -723,21 +723,21 @@ and fmt_effect_qual
   fmt_effect ff e;
   if e <> EFF_pure then fmt ff " ";
 
-and fmt_stratum
+and fmt_layer
     (ff:Format.formatter)
-    (strat:stratum)
+    (la:layer)
     : unit =
-  match strat with
-      STRAT_value -> ()
-    | STRAT_state -> fmt ff "state"
-    | STRAT_gc -> fmt ff "gc"
+  match la with
+      LAYER_value -> ()
+    | LAYER_state -> fmt ff "state"
+    | LAYER_gc -> fmt ff "gc"
 
-and fmt_stratum_qual
+and fmt_layer_qual
     (ff:Format.formatter)
-    (s:stratum)
+    (s:layer)
     : unit =
-  fmt_stratum ff s;
-  if s <> STRAT_value then fmt ff " ";
+  fmt_layer ff s;
+  if s <> LAYER_value then fmt ff " ";
 
 and fmt_opacity
     (ff:Format.formatter)
@@ -810,7 +810,7 @@ and fmt_ty (ff:Format.formatter) (t:ty) : unit =
       fmt_ident_tys ff entries;
       fmt ff "@]"
 
-  | TY_param (i, s) -> (fmt_stratum_qual ff s;
+  | TY_param (i, s) -> (fmt_layer_qual ff s;
                         fmt ff "<p#%d>" i)
   | TY_native oid -> fmt ff "<native#%d>" (int_of_opaque oid)
   | TY_named n -> fmt_name ff n
@@ -833,9 +833,9 @@ and fmt_ty (ff:Format.formatter) (t:ty) : unit =
 
   | TY_constrained ctrd -> fmt_constrained ff ctrd
 
-  | TY_obj (stratum, fns) ->
+  | TY_obj (layer, fns) ->
       fmt_obox ff;
-      fmt_stratum_qual ff stratum;
+      fmt_layer_qual ff layer;
       fmt ff "obj ";
       fmt_obr ff;
       Hashtbl.iter
@@ -1629,7 +1629,7 @@ and fmt_slice (ff:Format.formatter) (slice:slice) : unit =
 
 and fmt_decl_param (ff:Format.formatter) (param:ty_param) : unit =
   let (ident, (i, s)) = param in
-  fmt_stratum_qual ff s;
+  fmt_layer_qual ff s;
   fmt_ident ff ident;
   fmt ff "=<p#%d>" i
 
@@ -1683,7 +1683,7 @@ and fmt_obj
     (obj:obj)
     : unit =
   fmt_obox ff;
-  fmt_stratum_qual ff obj.obj_stratum;
+  fmt_layer_qual ff obj.obj_layer;
   fmt ff "obj ";
   fmt_ident_and_params ff id params;
   fmt_header_slots ff obj.obj_state;
@@ -1720,7 +1720,7 @@ and fmt_mod_item (ff:Format.formatter) (id:ident) (item:mod_item) : unit =
     begin
       match item.node.decl_item with
           MOD_ITEM_type (s, ty) ->
-            fmt_stratum_qual ff s;
+            fmt_layer_qual ff s;
             fmt ff "type ";
             fmt_ident_and_params ff id params;
             fmt ff " = ";
diff --git a/src/boot/fe/fuzz.ml b/src/boot/fe/fuzz.ml
index 734ef06cfa9..2c465be4f3b 100644
--- a/src/boot/fe/fuzz.ml
+++ b/src/boot/fe/fuzz.ml
@@ -104,7 +104,7 @@ let rec generate_mod_item (mis:mod_items) (cx:ctxt) : unit =
     match Random.int 2 with
         0 ->
           let ty = generate_ty cx in
-          let st = Ast.STRAT_value in
+          let st = Ast.LAYER_value in
             decl (MOD_ITEM_type (st, ty))
       | _ ->
           let mis' = Hashtbl.create 0 in
diff --git a/src/boot/fe/item.ml b/src/boot/fe/item.ml
index fc14443960f..6cee87963e7 100644
--- a/src/boot/fe/item.ml
+++ b/src/boot/fe/item.ml
@@ -692,7 +692,7 @@ and parse_stmts_including_none (ps:pstate) : Ast.stmt array =
 and parse_ty_param (iref:int ref) (ps:pstate) : Ast.ty_param identified =
   let apos = lexpos ps in
   let _ = Pexp.parse_opacity ps in
-  let s = Pexp.parse_stratum ps in
+  let s = Pexp.parse_layer ps in
   let ident = Pexp.parse_ident ps in
   let i = !iref in
   let bpos = lexpos ps in
@@ -842,7 +842,7 @@ and parse_optional_meta_pat (ps:pstate) (ident:Ast.ident) : Ast.meta_pat =
 and parse_obj_item
     (ps:pstate)
     (apos:pos)
-    (stratum:Ast.stratum)
+    (layer:Ast.layer)
     : (Ast.ident * Ast.mod_item) =
   expect ps OBJ;
   let (ident, params) = parse_ident_and_params ps "obj" in
@@ -871,7 +871,7 @@ and parse_obj_item
       expect ps RBRACE;
       let bpos = lexpos ps in
       let obj = { Ast.obj_state = state;
-                  Ast.obj_stratum = stratum;
+                  Ast.obj_layer = layer;
                   Ast.obj_constrs = constrs;
                   Ast.obj_fns = fns;
                   Ast.obj_drop = !drop }
@@ -883,7 +883,7 @@ and parse_obj_item
 and parse_tag_item
     (ps:pstate)
     (apos:pos)
-    (stratum:Ast.stratum)
+    (layer:Ast.layer)
     : (Ast.ident * Ast.mod_item) array =
   expect ps TAG;
   let (ident, params) = parse_ident_and_params ps "tag" in
@@ -945,14 +945,14 @@ and parse_tag_item
   let ty_item =
     (ident,
      span ps apos bpos
-       (decl params (Ast.MOD_ITEM_type (stratum, ty))))
+       (decl params (Ast.MOD_ITEM_type (layer, ty))))
   in
     Array.append [| ty_item |] constructors
 
 and parse_type_item
     (ps:pstate)
     (apos:pos)
-    (stratum:Ast.stratum)
+    (layer:Ast.layer)
     : (Ast.ident * Ast.mod_item) =
   expect ps TYPE;
   let (ident, params) = parse_ident_and_params ps "type" in
@@ -960,7 +960,7 @@ and parse_type_item
   let ty = ctxt "mod type item: ty" Pexp.parse_ty ps in
   let _ = expect ps SEMI in
   let bpos = lexpos ps in
-  let item = Ast.MOD_ITEM_type (stratum, ty) in
+  let item = Ast.MOD_ITEM_type (layer, ty) in
     (ident, span ps apos bpos (decl params item))
 
 and parse_mod_item (ps:pstate)
@@ -992,25 +992,25 @@ and parse_mod_item (ps:pstate)
         STATE | GC | IMPURE | UNSAFE | ABS
       | TYPE | OBJ | TAG | FN | ITER ->
           let _ = Pexp.parse_opacity ps in
-          let stratum = Pexp.parse_stratum ps in
+          let layer = Pexp.parse_layer ps in
           let effect = Pexp.parse_effect ps in
             begin
               match peek ps with
                   OBJ ->
                     if effect <> Ast.EFF_pure
                     then raise (err "effect specified for obj" ps);
-                    [| parse_obj_item ps apos stratum |]
+                    [| parse_obj_item ps apos layer |]
                 | TAG ->
                     if effect <> Ast.EFF_pure
                     then raise (err "effect specified for tag" ps);
-                    parse_tag_item ps apos stratum
+                    parse_tag_item ps apos layer
                 | TYPE ->
                     if effect <> Ast.EFF_pure
                     then raise (err "effect specified for type" ps);
-                    [| parse_type_item ps apos stratum |]
+                    [| parse_type_item ps apos layer |]
                 | _ ->
-                    if stratum <> Ast.STRAT_value
-                    then raise (err "stratum specified for fn or iter" ps);
+                    if layer <> Ast.LAYER_value
+                    then raise (err "layer specified for fn or iter" ps);
                     let is_iter = (peek ps) = ITER in
                       bump ps;
                       let (ident, params) = parse_ident_and_params ps "fn" in
@@ -1159,7 +1159,7 @@ and parse_native_mod_item_from_signature (ps:pstate)
           expect ps SEMI;
           let bpos = lexpos ps in
             [| (ident, span ps apos bpos
-                  (decl params (Ast.MOD_ITEM_type (Ast.STRAT_value, t)))) |]
+                  (decl params (Ast.MOD_ITEM_type (Ast.LAYER_value, t)))) |]
 
     | _ -> raise (unexpected ps)
 
diff --git a/src/boot/fe/pexp.ml b/src/boot/fe/pexp.ml
index 1b26431d7e2..2f9c2badf72 100644
--- a/src/boot/fe/pexp.ml
+++ b/src/boot/fe/pexp.ml
@@ -145,11 +145,11 @@ and parse_opacity (ps:pstate) : Ast.opacity =
       ABS -> bump ps; Ast.OPA_abstract
     |  _ -> Ast.OPA_transparent
 
-and parse_stratum (ps:pstate) : Ast.stratum =
+and parse_layer (ps:pstate) : Ast.layer =
   match peek ps with
-      STATE -> bump ps; Ast.STRAT_state
-    | GC -> bump ps; Ast.STRAT_gc
-    |  _ -> Ast.STRAT_value
+      STATE -> bump ps; Ast.LAYER_state
+    | GC -> bump ps; Ast.LAYER_gc
+    |  _ -> Ast.LAYER_value
 
 and parse_effect (ps:pstate) : Ast.effect =
   match peek ps with
@@ -274,7 +274,7 @@ and parse_atomic_ty (ps:pstate) : Ast.ty =
         Ast.TY_mach m
 
     | STATE | GC | IMPURE | UNSAFE | OBJ | FN | ITER ->
-        let stratum = parse_stratum ps in
+        let layer = parse_layer ps in
         let effect = parse_effect ps in
           begin
             match peek ps with
@@ -295,11 +295,11 @@ and parse_atomic_ty (ps:pstate) : Ast.ty =
                   in
                     ignore (bracketed_zero_or_more LBRACE RBRACE
                               None parse_method ps);
-                    Ast.TY_obj (stratum, methods)
+                    Ast.TY_obj (layer, methods)
 
               | FN | ITER ->
-                  if stratum <> Ast.STRAT_value
-                  then raise (err "stratum specified for fn or iter" ps);
+                  if layer <> Ast.LAYER_value
+                  then raise (err "layer specified for fn or iter" ps);
                   Ast.TY_fn (fst (parse_ty_fn effect ps))
               | _ -> raise (unexpected ps)
           end
diff --git a/src/boot/fe/token.ml b/src/boot/fe/token.ml
index 6c2282de210..7467d4e6eea 100644
--- a/src/boot/fe/token.ml
+++ b/src/boot/fe/token.ml
@@ -83,7 +83,7 @@ type token =
   (* Opacity keywords *)
   | ABS
 
-  (* Stratum keywords *)
+  (* Layer keywords *)
   | STATE
   | GC
 
@@ -246,7 +246,7 @@ let rec string_of_tok t =
     (* Opacity keywords *)
     | ABS        -> "abs"
 
-    (* Stratum keywords *)
+    (* Layer keywords *)
     | STATE      -> "state"
     | GC         -> "gc"
 
diff --git a/src/boot/me/dwarf.ml b/src/boot/me/dwarf.ml
index 2a2ba2c75a0..5b7c0ca1da1 100644
--- a/src/boot/me/dwarf.ml
+++ b/src/boot/me/dwarf.ml
@@ -1539,13 +1539,13 @@ let dwarf_visitor
       |]
   in
 
-  let encode_stratum eff =
+  let encode_layer eff =
     (* Note: weird encoding: mutable+pure = gc. *)
     let mut_byte, pure_byte =
       match eff with
-          Ast.STRAT_value -> (0,1)
-        | Ast.STRAT_state -> (1,0)
-        | Ast.STRAT_gc -> (1,1)
+          Ast.LAYER_value -> (0,1)
+        | Ast.LAYER_state -> (1,0)
+        | Ast.LAYER_gc -> (1,1)
     in
       SEQ [|
         (* DW_AT_mutable: DW_FORM_flag *)
@@ -1557,7 +1557,7 @@ let dwarf_visitor
 
   (* Type-param DIEs. *)
 
-  let type_param_die (p:(ty_param_idx * Ast.stratum)) =
+  let type_param_die (p:(ty_param_idx * Ast.layer)) =
     let (idx, s) = p in
       SEQ [|
         uleb (get_abbrev_code abbrev_rust_type_param);
@@ -1565,7 +1565,7 @@ let dwarf_visitor
         BYTE (dw_rust_type_to_int DW_RUST_type_param);
         (* DW_AT_rust_type_param_index: DW_FORM_data4 *)
         WORD (word_ty_mach, IMM (Int64.of_int idx));
-        encode_stratum s;
+        encode_layer s;
       |]
   in
 
@@ -1817,7 +1817,7 @@ let dwarf_visitor
           emit_die die
       in
 
-      let rust_type_param (p:(ty_param_idx * Ast.stratum)) =
+      let rust_type_param (p:(ty_param_idx * Ast.layer)) =
         let die = DEF (fix, type_param_die p) in
           emit_die die
       in
@@ -1892,7 +1892,7 @@ let dwarf_visitor
         let die =
           DEF (fix, SEQ [|
                  uleb (get_abbrev_code abbrev_obj_type);
-                 encode_stratum str;
+                 encode_layer str;
                |])
         in
           emit_die die;
@@ -2255,7 +2255,7 @@ let dwarf_visitor
       curr_cu_line := []
   in
 
-  let type_param_decl_die (p:(Ast.ident * (ty_param_idx * Ast.stratum))) =
+  let type_param_decl_die (p:(Ast.ident * (ty_param_idx * Ast.layer))) =
     let (ident, (idx, str)) = p in
       SEQ [|
         uleb (get_abbrev_code abbrev_rust_type_param_decl);
@@ -2265,7 +2265,7 @@ let dwarf_visitor
         ZSTRING (Filename.basename ident);
         (* DW_AT_rust_type_param_index: DW_FORM_data4 *)
         WORD (word_ty_mach, IMM (Int64.of_int idx));
-        encode_stratum str;
+        encode_layer str;
       |]
   in
 
@@ -2360,7 +2360,7 @@ let dwarf_visitor
 
   let emit_typedef_die
       (id:Ast.ident)
-      (s:Ast.stratum)
+      (s:Ast.layer)
       (ty:Ast.ty)
       : unit =
     let abbrev_code = get_abbrev_code abbrev_typedef in
@@ -2369,7 +2369,7 @@ let dwarf_visitor
          uleb abbrev_code;
          (* DW_AT_name: DW_FORM_string *)
          ZSTRING id;
-         encode_stratum s;
+         encode_layer s;
          (* DW_AT_type: DW_FORM_ref_addr *)
          (ref_type_die ty);
        |])
@@ -2909,12 +2909,12 @@ let rec extract_mod_items
       | _ -> failwith "bad effect encoding"
   in
 
-  let get_stratum die =
+  let get_layer die =
     match (get_flag die DW_AT_mutable, get_flag die DW_AT_pure) with
         (* Note: weird encoding: mutable+pure = gc. *)
-      | (false, true) -> Ast.STRAT_value
-      | (true, false) -> Ast.STRAT_state
-      | (true, true) -> Ast.STRAT_gc
+      | (false, true) -> Ast.LAYER_value
+      | (true, false) -> Ast.LAYER_state
+      | (true, true) -> Ast.LAYER_gc
       | _ -> failwith "bad statum encoding"
   in
 
@@ -2922,7 +2922,7 @@ let rec extract_mod_items
 
   let get_type_param die =
     let idx = get_num die DW_AT_rust_type_param_index in
-    let s = get_stratum die in
+    let s = get_layer die in
       (idx, s)
   in
 
@@ -3071,7 +3071,7 @@ let rec extract_mod_items
             end
 
         | DW_TAG_interface_type ->
-            let str = get_stratum die in
+            let str = get_layer die in
             let fns = Hashtbl.create 0 in
               Array.iter
                 begin
@@ -3187,10 +3187,10 @@ let rec extract_mod_items
   let die = Hashtbl.find dies i in
     match die.die_tag with
         DW_TAG_typedef ->
-          let stratum = get_stratum die in
+          let layer = get_layer die in
           let ident = get_name die in
           let ty = get_referenced_ty die in
-          let tyi = Ast.MOD_ITEM_type (stratum, ty) in
+          let tyi = Ast.MOD_ITEM_type (layer, ty) in
           let (params, islots) = get_formals die in
             assert ((Array.length islots) = 0);
             htab_put mis ident (decl params tyi)
diff --git a/src/boot/me/stratum.ml b/src/boot/me/layer.ml
index 21598d557ef..a5a33b0ba36 100644
--- a/src/boot/me/stratum.ml
+++ b/src/boot/me/layer.ml
@@ -1,19 +1,19 @@
 open Semant;;
 open Common;;
 
-let log cx = Session.log "stratum"
-  (should_log cx cx.ctxt_sess.Session.sess_log_stratum)
+let log cx = Session.log "layer"
+  (should_log cx cx.ctxt_sess.Session.sess_log_layer)
   cx.ctxt_sess.Session.sess_log_out
 ;;
 
 let iflog cx thunk =
-  if (should_log cx cx.ctxt_sess.Session.sess_log_stratum)
+  if (should_log cx cx.ctxt_sess.Session.sess_log_layer)
   then thunk ()
   else ()
 ;;
 
 
-let state_stratum_checking_visitor
+let state_layer_checking_visitor
     (cx:ctxt)
     (inner:Walk.visitor)
     : Walk.visitor =
@@ -90,12 +90,12 @@ let process_crate
     : unit =
   let passes =
     [|
-      (state_stratum_checking_visitor cx
+      (state_layer_checking_visitor cx
          Walk.empty_visitor);
     |]
   in
-    run_passes cx "stratum" passes
-      cx.ctxt_sess.Session.sess_log_stratum log crate
+    run_passes cx "layer" passes
+      cx.ctxt_sess.Session.sess_log_layer log crate
 ;;
 
 (*
diff --git a/src/boot/me/semant.ml b/src/boot/me/semant.ml
index c4930c12f7a..cea0b479b13 100644
--- a/src/boot/me/semant.ml
+++ b/src/boot/me/semant.ml
@@ -192,7 +192,7 @@ type ctxt =
 
       ctxt_rty_cache: (Ast.ty,Il.referent_ty) Hashtbl.t;
 
-      ctxt_type_stratum_cache: (Ast.ty,Ast.stratum) Hashtbl.t;
+      ctxt_type_layer_cache: (Ast.ty,Ast.layer) Hashtbl.t;
       ctxt_type_points_to_heap_cache: (Ast.ty,bool) Hashtbl.t;
       ctxt_type_is_structured_cache: (Ast.ty,bool) Hashtbl.t;
       ctxt_type_contains_chan_cache: (Ast.ty,bool) Hashtbl.t;
@@ -298,7 +298,7 @@ let new_ctxt sess abi crate =
     ctxt_curr_path = Stack.create ();
 
     ctxt_rty_cache = Hashtbl.create 0;
-    ctxt_type_stratum_cache = Hashtbl.create 0;
+    ctxt_type_layer_cache = Hashtbl.create 0;
     ctxt_type_points_to_heap_cache = Hashtbl.create 0;
     ctxt_type_is_structured_cache = Hashtbl.create 0;
     ctxt_type_contains_chan_cache = Hashtbl.create 0;
@@ -731,7 +731,7 @@ type ('ty, 'tys, 'slot, 'slots, 'tag) ty_fold =
       ty_fold_vec : 'ty -> 'ty;
       ty_fold_rec : (Ast.ident * 'ty) array -> 'ty;
       ty_fold_fn : (('slots * Ast.constrs * 'slot) * Ast.ty_fn_aux) -> 'ty;
-      ty_fold_obj : (Ast.stratum
+      ty_fold_obj : (Ast.layer
                      * (Ast.ident, (('slots * Ast.constrs * 'slot) *
                                       Ast.ty_fn_aux)) Hashtbl.t) -> 'ty;
       ty_fold_chan : 'ty -> 'ty;
@@ -739,7 +739,7 @@ type ('ty, 'tys, 'slot, 'slots, 'tag) ty_fold =
       ty_fold_task : unit -> 'ty;
       ty_fold_native : opaque_id -> 'ty;
       ty_fold_tag : 'tag -> 'ty;
-      ty_fold_param : (int * Ast.stratum) -> 'ty;
+      ty_fold_param : (int * Ast.layer) -> 'ty;
       ty_fold_named : Ast.name -> 'ty;
       ty_fold_type : unit -> 'ty;
       ty_fold_box : 'ty -> 'ty;
@@ -1253,30 +1253,30 @@ let lower_effect_of x y =
   if effect_le x y then x else y
 ;;
 
-let stratum_le x y =
+let layer_le x y =
   match (x,y) with
-      (Ast.STRAT_gc, _) -> true
-    | (Ast.STRAT_state, Ast.STRAT_value) -> true
-    | (Ast.STRAT_state, Ast.STRAT_state) -> true
-    | (Ast.STRAT_value, Ast.STRAT_value) -> true
+      (Ast.LAYER_gc, _) -> true
+    | (Ast.LAYER_state, Ast.LAYER_value) -> true
+    | (Ast.LAYER_state, Ast.LAYER_state) -> true
+    | (Ast.LAYER_value, Ast.LAYER_value) -> true
     | _ -> false
 ;;
 
-let lower_stratum_of x y =
-  if stratum_le x y then x else y
+let lower_layer_of x y =
+  if layer_le x y then x else y
 ;;
 
-let type_stratum (cx:ctxt) (t:Ast.ty) : Ast.stratum =
-  let fold_mutable _ = Ast.STRAT_state in
-  let fold = associative_binary_op_ty_fold Ast.STRAT_value lower_stratum_of in
+let type_layer (cx:ctxt) (t:Ast.ty) : Ast.layer =
+  let fold_mutable _ = Ast.LAYER_state in
+  let fold = associative_binary_op_ty_fold Ast.LAYER_value lower_layer_of in
   let fold = { fold with ty_fold_mutable = fold_mutable } in
-    htab_search_or_add cx.ctxt_type_stratum_cache t
+    htab_search_or_add cx.ctxt_type_layer_cache t
       (fun _ -> fold_ty cx fold t)
 ;;
 
 
 let type_has_state (cx:ctxt) (t:Ast.ty) : bool =
-  stratum_le (type_stratum cx t) Ast.STRAT_state
+  layer_le (type_layer cx t) Ast.LAYER_state
 ;;
 
 
@@ -1640,7 +1640,7 @@ let ty_fn_of_fn (fn:Ast.fn) : Ast.ty_fn =
 ;;
 
 let ty_obj_of_obj (obj:Ast.obj) : Ast.ty_obj =
-  (obj.Ast.obj_stratum,
+  (obj.Ast.obj_layer,
    htab_map obj.Ast.obj_fns (fun i f -> (i, ty_fn_of_fn f.node)))
 ;;
 
diff --git a/src/comp/front/token.rs b/src/comp/front/token.rs
index 84869aacabc..8c594054e40 100644
--- a/src/comp/front/token.rs
+++ b/src/comp/front/token.rs
@@ -92,7 +92,7 @@ tag token {
     /* Opacity keywords */
     ABS;
 
-    /* Stratum keywords */
+    /* Layer keywords */
     STATE;
     GC;
 
@@ -258,7 +258,7 @@ fn to_str(token t) -> str {
         /* Opacity keywords */
         case (ABS) { ret "abs"; }
 
-        /* Stratum keywords */
+        /* Layer keywords */
         case (STATE) { ret "state"; }
         case (GC) { ret "gc"; }
 
diff --git a/src/comp/middle/trans.rs b/src/comp/middle/trans.rs
index 27dfa44314c..ddf71b4c5b6 100644
--- a/src/comp/middle/trans.rs
+++ b/src/comp/middle/trans.rs
@@ -730,7 +730,7 @@ fn drop_ty(@block_ctxt cx,
             fn hit_zero(@block_ctxt cx, ValueRef v,
                         @typeck.ty t) -> result {
                 auto res = iter_sequence(cx, v, t, bind drop_ty(_,_,_));
-                // FIXME: switch gc/non-gc on stratum of the type.
+                // FIXME: switch gc/non-gc on layer of the type.
                 ret trans_non_gc_free(res.bcx, v);
             }
             ret decr_refcnt_and_if_zero(cx, v,
@@ -747,7 +747,7 @@ fn drop_ty(@block_ctxt cx,
                                              C_int(abi.box_rc_field_body)));
 
                 auto res = drop_ty(cx, body, body_ty);
-                // FIXME: switch gc/non-gc on stratum of the type.
+                // FIXME: switch gc/non-gc on layer of the type.
                 ret trans_non_gc_free(res.bcx, v);
             }
             ret decr_refcnt_and_if_zero(cx, v,