@@ -153,12 +153,7 @@ Here's a skeleton example of an implementation:
153153::
154154++ on-load
155155 |= =old-state=vase
156− =/ old-state !<(@ old-state-vase)
157− ?~ old-state
158− ~& %prep-lost
159− `this
160− ~& %prep-found
161− `this(state old-state)
156+ `this(state !<(@ old-state-vase))
162157::
163158++ on-poke
164159 |= [=mark =vase]
@@ -366,14 +361,12 @@ represent a value which has a type that isn't known at compile time. A
366361vase has three operations:
367362
368363- `!>` is a unary rune that lifts a statically typed value to a
369− dynamically-typed `vase`. For example, `!>('hi')` gives `[[%atom %t ~]
370− 26.984']`, which has type `[type *]`.
364+ dynamically-typed `vase`. For example, `!>('hi')` gives `[#t/@t q=26.984]`.
371365
372366- `!<` is a binary rune that takes a mold and a dynamically typed `vase`
373367 and reduces it to a statically typed value. If the `vase` does not in
374− fact have the type of the mold you give it, then it produces `~`, else
375− it produces `[~ value]`. For example, `!<(@t !>('hi'))` produces `[~
376− 'hi']` while `!<(^ !>('hi'))` produces `~`.
368+ fact have the type of the mold you give it, then it nest-fails, else
369+ it produces `value`. For example, `!<(@t !>('hi'))` produces `'hi'` while `!<(^ !>('hi'))` causes a nest fail..
377370
378371- The compiler takes text and converts it to a `vase` of the compiled
379372 code. Agents shouldn't need this directly, but Gall uses this to