@@ -3,42 +3,57 @@
33 |= corpus=@t
44 ^- (list @t)
55 ?: =(corpus '') ~
6+ =/ parts (split corpus)
7+ ?~ parts ~
68 %+ skip
7− (split corpus)
9+ (need parts)
810 |= word=@t
911 (~(has in words) word)
1012++ norm
1113 |= corpus=@t
1214 ^- @t
1315 ?: =(corpus '') ''
14− (crip (cass (expunge (crip (trimall corpus)))))
16+ =/ cleaned (trimall (weave (expunge (weave (trimall `corpus)))))
17+ ?~ cleaned ''
18+ (crip (cass (need cleaned)))
19+++ weave
20+ |= corpus=(unit tape)
21+ ^- (unit @t)
22+ ?~ corpus ~
23+ (some (crip (need corpus)))
1524++ split
1625 |= corpus=@t
17− ^- (list @t)
26+ ^- (unit (list @t))
1827 ?: =(corpus '') ~
1928 =/ test (norm corpus)
20− %+ rash test
29+ %+ rush test
2130 (more (plus ws) (cook crip (plus ;~(pose aln hep))))
2231++ allowed ;~(pose aln hep ace)
2332++ banned ;~(less allowed next)
2433++ ws (mask " \0a\0d\09")
2534++ expunge
26− |= corpus=@t
27− ^- tape
28− ?: =(corpus '') ~
29− %- zing
30− %+ rash corpus
31− %- plus
32− ;~ pose
33− ;~(pfix (plus banned) (star allowed))
34− ;~(sfix (star allowed) (plus banned))
35− (plus allowed)
36− ==
35+ |= corpus=(unit @t)
36+ ^- (unit tape)
37+ ?~ corpus ~
38+ =/ text (need corpus)
39+ ?: =(text '') ~
40+ =/ parsed
41+ %+ rush text
42+ %- plus
43+ ;~ pose
44+ ;~(pfix (plus banned) (star allowed))
45+ ;~(sfix (star allowed) (plus banned))
46+ (plus allowed)
47+ ==
48+ ?~ parsed ~
49+ `(zing (need parsed))
3750++ trimall
38− |= corpus=@t
39− ^- tape
40− ?: =(corpus '') ~
41− %+ rash corpus
51+ |= corpus=(unit @t)
52+ ^- (unit tape)
53+ ?~ corpus ~
54+ =/ text (need corpus)
55+ ?: =(text '') ~
56+ %+ rush text
4257 %+ ifix [(star ws) (star ws)]
4358 %- star
4459 ;~ less