summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--chapter15/README.md2
-rw-r--r--chapter16/README.md3
-rw-r--r--chapter17/README.md9
3 files changed, 8 insertions, 6 deletions
diff --git a/chapter15/README.md b/chapter15/README.md
index d0f2ce60..63305367 100644
--- a/chapter15/README.md
+++ b/chapter15/README.md
@@ -168,7 +168,7 @@ This means the IR for:
becomes `Load(mem,x,Add(Shl(i,3),16))`
- `x[i+1]` becomes `16/*base*/ + ((i+1) << 3/*scale*)` becomes
+ `x[i+1]` becomes `16/*base*/ + ((i+1) << 3/*scale*/)` becomes
`Load(mem,x,Add(Shl(i,3),24))`
Notice the `idx+1` folds the `+1` into the base math.
diff --git a/chapter16/README.md b/chapter16/README.md
index 3e29bbae..1489d93d 100644
--- a/chapter16/README.md
+++ b/chapter16/README.md
@@ -82,7 +82,8 @@ return new Buffer;
## Final fields
-Final fields are declared with a `!` before the name:
+Final fields are declared with a `!` before the name.
+This decision is revisited in the next chapter.
```
int !x = 17; // Final field x
diff --git a/chapter17/README.md b/chapter17/README.md
index 6c19b642..d56ab7bb 100644
--- a/chapter17/README.md
+++ b/chapter17/README.md
@@ -46,10 +46,11 @@ infers as
Typed primitive fields are always mutable. Typed reference fields without an
initializer must be mutable to get a value. Initialized reference variables
-are *immutable* by default and can be made mutable with a leading `!`. `var`
-and `val` keep their current sense and can be used to make any field mutable or
-immutable. Fields are always mutable during construction, but will become
-immutable at the end of either constructor.
+are immutable by default and can be made mutable with a leading `!`. Contrast
+this with what [chapter16](https://github.com/SeaOfNodes/Simple/tree/chapter16)
+did with `!`. `var` and `val` keep their current sense and can be used to make
+any field mutable or immutable. Fields are always mutable during construction,
+but will become immutable at the end of either constructor.
`int x; x=3; x++; // OK, primitive so mutable`