diff --git a/doc/ref/spec.md b/doc/ref/spec.md
index a61736a..06bf5ef 100644
--- a/doc/ref/spec.md
+++ b/doc/ref/spec.md
@@ -1058,7 +1058,6 @@
 number    int | float
 uint      0..int
 uint8     0..255
-byte      uint8
 int8      -128..127
 uint16    0..65536
 int16     -32_768...32_767
@@ -1067,19 +1066,9 @@
 int32     -2_147_483_648..2_147_483_647
 uint64    0..18_446_744_073_709_551_615
 int64     -9_223_372_036_854_775_808..9_223_372_036_854_775_807
-uint128   340_282_366_920_938_463_463_374_607_431_768_211_455
-
-	"int128": mkIntRange(
-		"-170141183460469231731687303715884105728",
-		"170141183460469231731687303715884105727"),
-
-	// Do not include an alias for "byte", as it would be too easily confused
-	// with the builtin "bytes".
-	"uint8":   mkIntRange("0", "255"),
-	"uint16":  mkIntRange("0", "65535"),
-	"uint32":  mkIntRange("0", "4294967295"),
-	"uint64":  mkIntRange("0", "18446744073709551615"),
-}
+int128    -170_141_183_460_469_231_731_687_303_715_884_105_728..
+              170_141_183_460_469_231_731_687_303_715_884_105_727
+uint128   0..340_282_366_920_938_463_463_374_607_431_768_211_455
 ```
 
 
@@ -1353,7 +1342,7 @@
 binary_op  = "|" | "&" | "||" | "&&" | rel_op | add_op | mul_op | ".." .
 rel_op     = "==" | "!=" | "<" | "<=" | ">" | ">=" .
 add_op     = "+" | "-" .
-mul_op     = "*" | "/" | "div" | "mod" | "quo" | "rem" .
+mul_op     = "*" | "/" | "%" | "div" | "mod" | "quo" | "rem" .
 
 unary_op   = "+" | "-" | "!" .
 ```
@@ -1381,7 +1370,7 @@
 ```
 Precedence    Operator
     8             ..
-    7             *  /  div mod quo rem
+    7             *  /  %  div mod quo rem
     6             +  -
     5             ==  !=  <  <=  >  >=
     4             &&
@@ -1408,8 +1397,8 @@
 Arithmetic operators apply to numeric values and yield a result of the same type
 as the first operand. The three of the four standard arithmetic operators
 `(+, -, *)` apply to integer and decimal floating-point types;
-`+` and `*` also applies to lists and strings.
-`/` only applies to decimal floating-point types and
+`+` and `*` also apply to lists and strings.
+`/` and `%` only apply to decimal floating-point types and
 `div`, `mod`, `quo`, and `rem` only apply to integer types.
 
 ```
@@ -1417,6 +1406,7 @@
 -    difference             integers, floats
 *    product                integers, floats, lists, strings
 /    quotient               floats
+%    remainder              floats
 div  division               integers
 mod  modulo                 integers
 quo  quotient               integers
@@ -1672,6 +1662,7 @@
 - `x` is a string and `T` is a list of bytes or runes.
 
 
+<!--
 [Field tags] are ignored when comparing struct types for identity
 for the purpose of conversion:
 
@@ -1694,6 +1685,7 @@
 
 p2 = person(person2)  // ignoring tags, the underlying types are identical
 ```
+-->
 
 Specific rules apply to conversions between numeric types, structs,
 or to and from a string type. These conversions may change the representation
@@ -1716,7 +1708,6 @@
 ```
 
 
-
 #### Conversions to and from a string type
 
 Converting a signed or unsigned integer value to a string type yields a string
@@ -1791,6 +1782,7 @@
 
 ### Calls
 
+Calls can be made to core library functions or builtins.
 Given an expression `f` of function type F,
 ```
 f(a1, a2, … an)
@@ -1802,48 +1794,15 @@
 ```
 a: math.Atan2(x, y)
 ```
-<!---
-
-// FUNCTIONS ARE DISABLED:
-Point: {
-    Scale(a: float) -> Point({ Value: Point.Value * a })
-    Value: float
-}
-pt: Point
-pt: { Value: a }
-
-ptp: pt.Scale(3.5)
---->
-
 
 In a function call, the function value and arguments are evaluated in the usual
-order. After they are evaluated, the parameters of the call are passed by value
-to the function and the called function begins execution. The return parameters
+order.
+After they are evaluated, the parameters of the call are passed by value
+to the function and the called function begins execution.
+The return parameters
 of the function are passed by value back to the calling function when the
 function returns.
 
-<!---
-TODO:
-
-Passing arguments to ... parameters
-If f is variadic with a final parameter p of type ...T, then within f the type of p is equivalent to type []T. If f is invoked with no actual arguments for p, the value passed to p is nil. Otherwise, the value passed is a new slice of type []T with a new underlying array whose successive elements are the actual arguments, which all must be assignable to T. The length and capacity of the slice is therefore the number of arguments bound to p and may differ for each call site.
-
-Given the function and calls
-
-func Greeting(prefix string, who ...string)
-Greeting("nobody")
-Greeting("hello:", "Joe", "Anna", "Eileen")
-within Greeting, who will have the value nil in the first call, and []string{"Joe", "Anna", "Eileen"} in the second.
-
-If the final argument is assignable to a slice type []T, it may be passed unchanged as the value for a ...T parameter if the argument is followed by .... In this case no new slice is created.
-
-Given the slice s and call
-
-s := []string{"James", "Jasmine"}
-Greeting("goodbye:", s...)
-within Greeting, who will have the same value as s with the same underlying array.
---->
-
 
 ### Comprehensions
 
@@ -1882,7 +1841,7 @@
 
 ```
 ComprehensionDecl   = Field [ "<-" ] Clauses .
-ListComprehension   = "[" Expression "<-" Clauses "]" .
+ListComprehension   = "[" Expression [ "<-" ] Clauses "]" .
 
 Clauses             = Clause { Clause } .
 Clause              = ForClause | GuardClause | LetClause .
@@ -2344,16 +2303,6 @@
 both `a` and `b` are constraint functions, as the properties of unification
 will ensure this produces identical results.
 
-#### Manifestation
-
-TODO: a prototype which is a function invocation that cannot be evaluated
-or for which the result is not an atom or a struct is called _incomplete_.
-
-
-
-### Validation
-
-TODO: when to proactively do recursive validation
 
 #### References
 
@@ -2369,16 +2318,23 @@
 Other approaches are possible, however, and implementations are free to choose
 which approach is deployed.
 
+
+### Validation
+
+TODO: when to proactively do recursive validation
+
 ### Cycles
 
 TODO: describe precisely which cycles must be resolved by implementations.
 
+<!--
 Rules:
 
 - Unification of atom value `a` with non-concrete atom `b` for node `q`:
   - set `q` to `a` and schedule the evalution `a == b` at the end of
     evaluating `q`: `C` is only correct under the assumption that `q` is `a`
     so evaluate later.
+-->
 
 A direct cyclic reference between nodes defines a shared node for the paths
 of the original nodes.
@@ -2403,16 +2359,7 @@
 b: { y: 3 }
 ```
 
-
-1. Cycle breaking
-1. Cycle detection
-1. Assertion checks
-1. Validation
-
-The preparation step loads all the relevant CUE sources and merges duplicate
-by creating unification expressions until each field is unique within its scope.
-
-
+<!--
 For fields of type struct any cycle that does not result in an infinite
 structure is allowed.
 An expresion of type struct only allows unification and disjunction operations.
@@ -2424,7 +2371,7 @@
   with a new reference pointing to the respective copy,
 - a reference bound to a field that is not being copied refers to the
   original field.
-
+-->
 
 #### Self-referential cycles
 
@@ -2452,11 +2399,7 @@
 }                     }
 ```
 
-During the evaluation of a field  which expression is being evaluated is marked as such.  
-
-A field `f` with unification expression `e` where `e` contains reference that in turn
-point to `a` can be handled as follows:
-
+<!--
 #### Evaluation cycles
 
 For structs, cycles are disallowed
@@ -2481,7 +2424,6 @@
 A reference to `Δ(π, q0)` may not recursively refer to `Δ(π', q)`,
 where `π` is a prefix to `π'`.
 
-
 a: b & { b: _ }
 
 
@@ -2493,7 +2435,6 @@
 - Unification within disjunctions:
 
 
-<!--
 ### Inference
 
 There is currently no logical inference for values of references prescribed.
@@ -2509,5 +2450,3 @@
 
 TODO: rules for detection of unused variables
 
-1. Any alias value must be used
-
diff --git a/doc/tutorial/kubernetes/README.md b/doc/tutorial/kubernetes/README.md
index 3cfd06f..8eee896 100644
--- a/doc/tutorial/kubernetes/README.md
+++ b/doc/tutorial/kubernetes/README.md
@@ -597,7 +597,7 @@
 In this section we will look into generalizing the objects per directory.
 
 
-#### Directory `frontent`
+#### Directory `frontend`
 
 We observe that all deployments in subdirectories of `frontend`
 have a single container with one port,
@@ -1106,11 +1106,11 @@
 For ports we define two simple maps from name to port number:
 
 ```
-	// expose port defines named ports that is exposed in the service
-	expose port <N>: int
+    // expose port defines named ports that is exposed in the service
+    expose port <N>: int
 
-	// port defines a named port that is not exposed in the service.
-	port <N>: int
+    // port defines a named port that is not exposed in the service.
+    port <N>: int
 ```
 Both maps get defined in the container definition, but only `port` gets
 included in the service definition.
@@ -1161,14 +1161,14 @@
 // define services implied by deployments
 service "\(k)": {
 
-	// Copy over all ports exposed from containers.
-	port "\(Name)": {
-		port:       Port | int
-		targetPort: Port | int
-	} for Name, Port in spec.expose.port
+    // Copy over all ports exposed from containers.
+    port "\(Name)": {
+        port:       Port | int
+        targetPort: Port | int
+    } for Name, Port in spec.expose.port
 
-	// Copy over the labels
-	label: spec.label
+    // Copy over the labels
+    label: spec.label
 
 } for k, spec in deployment
 ```
@@ -1212,8 +1212,8 @@
 to write configurations.
 For instance, none of the files in the subdirectories contain comprehensions,
 not even the template files in these directores (such as `kitchen/kube.cue`).
-
-
+Furthermore, none of the configuration files in any of the
+leaf directories contain string interpolations.
 
 
 ### Metrics
