@@ -0,0 +1,34 @@
1+---
2+sort: 2
3+---
4+
5+# `:keep, %_, centis, {$keep p/wing q/(list (pair wing seed))}`
6+
7+Take a wing (attribute path) with changes, preserving type.
8+
9+## Expands to
10+
11+:like(p :make(p q))
12+
13+## Syntax
14+
15+Regular: *1-fixed*, then *jogging*.
16+
17+## Discussion
18+
19+`:keep` is different from `:make` because `:make` can change the
20+span of a limb with mutations.
21+
22+## Examples
23+
24+```
25+~zod:dojo> =foo [p=42 q=6]
26+~zod:dojo> foo(p %bar)
27+[p=%bar q=6]
28+~zod:dojo> foo(p [55 99])
29+[p=[55 99] q=6]
30+~zod:dojo> %_(foo p %bar)
31+[p=7.496.034 99]
32+~zod:dojo> %_(foo p [55 99])
33+! nest-fail
34+```