diff --git a/src/script_opt/ZAM/README.md b/src/script_opt/ZAM/README.md
index 9d2ac86c72..a1313a6dd3 100644
--- a/src/script_opt/ZAM/README.md
+++ b/src/script_opt/ZAM/README.md
@@ -41,35 +41,29 @@ the _Logging Framework_, for example, and thus you won't see much improvement.
* Those two factors add up to gains very often on the order of only 10-15%,
rather than something a lot more dramatic.
-* In addition, there are some
-[types of scripts that currently can't be compiled](#Scripts-that-cannot-be-compiled),
-and thus will remain interpreted. If your processing bottlenecks in such
-scripts, you won't see much in the way of gains.
-
## Known Issues
Here we list various issues with using script optimization, including both
-deficiencies (problems to eventually fix) and incompatibilities (differences
-in behavior from the default of script interpretation, not necessarily
-fixable). For each, the corresponding list is roughly ordered from
-you're-most-likely-to-care-about-it to you're-less-likely-to-care, though
-of course this varies for different users.
+deficiencies (things that don't work as well as you might like)
+and incompatibilities (differences in behavior from the default
+of script interpretation).
-### Deficiencies to eventually fix:
+### Deficiencies:
-* Error messages in compiled scripts have diminished identifying
+* Run-time error messages in compiled scripts have diminished identifying
information.
* The optimizer assumes you have ensured initialization of your variables.
If your script uses a variable that hasn't been set, the compiled code may
crash or behave aberrantly. You can use the `-u` command-line flag to find such potential usage issues.
-* Certain complex "when" expressions may fail to reevaluate when elements
-of the expression are modified by compiled scripts.
+* When printing scripts (such as in some error messages), the names of
+variables often reflect internal temporaries rather than the original
+variables.
@@ -77,30 +71,11 @@ of the expression are modified by compiled scripts.
* ZAM ignores `assert` statements.
-* When printing scripts (such as in some error messages), the names of
-variables often reflect internal temporaries rather than the original
-variables.
-
* The `same_object()` BiF will always deem two non-container values as
different.
-### Scripts that cannot be compiled:
-
-The ZAM optimizer does not compile scripts that include "when" statements or
-lambda expressions. These will take substantial work to support. It also
-will not inline such scripts, nor will it inline scripts that are either
-directly or indirectly recursive.
-
-You can get a list of non-compilable scripts using
-`-O ZAM -O report-uncompilable`. For recursive scripts, use
-`-O report-recursive` (no `-O ZAM` required, since it doesn't apply to the
-alternative optimization, `-O gen-C++`).
-
-
-
-
## Script Optimization Options
Users will generally simply use `-O ZAM` to invoke the script optimizer.
@@ -120,7 +95,7 @@ issues:
|`optimize-AST` | Optimize the (transform) AST; implies `xform`.|
|`profile-ZAM` | Generate to _stdout_ a ZAM execution profile. (Requires configuring with `--enable-debug`.)|
|`report-recursive` | Report on recursive functions and exit.|
-|`report-uncompilable` | Report on uncompilable functions and exit.|
+|`report-uncompilable` | Report on uncompilable functions and exit. For ZAM, all functions should be compilable.|
|`xform` | Transform scripts to "reduced" form.|