5Parser generator. Produces a parser that succeeds upon encountering one
6of the [`++term`]()s in a faceless list `a`.
8A perk is an arm used to parse one of a finite set of options, formally
9a choice between [`++term`]()s: if you want to match "true" or "false", and
10nothing else, (perk \~[%true %false]) produces the relevant parser,
11whose result type is `?(%true %false)`. For more complicated
12transformations, a combintation of ++[`++sear`]() and map ++[`++get`]() is recommended,
13e.g. `(sear ~(get by (mo ~[[%true &] [%false |]]))) sym)` will have a
14similar effect but produce `?(& |)` , a [boolean](). However, constructions
15such as `(sear (flit ~(has in (sa %true %false %other ~))) sym)` are
21`a` is a [`++pole`](), which is a [`++list`]() without [`%face`]()s.
31 ++ perk :: parse cube with fork
43 ~zod/try=> (scan "ham" (perk %sam %ham %lam ~))
45 ~zod/try=> (scan "ram" (perk %sam %ham %lam ~))
keysesc to close
- j k
- move down, up
- enter
- open
- esc
- back, or up a level
- 1 2 3 4
- readme, files, commits, refs
- /
- filter
- y
- copy the clone command
- c
- compare the chosen commit with another (or shift-click both)
- ?
- show or hide this list