@@ -33,7 +33,7 @@ apex
3333 parse-numeral
3434 ::
3535 %+ cook
36− |=(=prefix-expr [%prefix-expr prefix-expr])
36+ |=(=prefix-expr (unwrap-prefix [%prefix-expr prefix-expr]))
3737 (knee *prefix-expr |.(parse-prefix-expr))
3838 ::
3939 %+ cook
@@ -136,7 +136,11 @@ apex
136136 --
137137++ parse-expr
138138 %^ tnee %parse-expr expr
139− %+ cook process-expr-list parse-expr-list
139+ %+ cook unwrap-prefix
140+ ;~ pose
141+ %+ cook process-expr-list parse-expr-list
142+ (ifix [;~(plug (just '(') ws) ;~(plug ws (just ')'))] (knee *expr |.(parse-expr)))
143+ ==
140144++ parse-parened-expr
141145 %^ tnee %parse-parened-expr prefix-expr
142146 %+ cook
@@ -960,4 +964,9 @@ apex
960964 |= [nedl=* stak=(list *)]
961965 ^- ?
962966 ?=(^ (find ~[nedl] stak))
967+++ unwrap-prefix
968+ |= x=expr
969+ ^- expr
970+ ?: ?=([%prefix-expr %expr *] x) $(x +>.x)
971+ x
963972--