ABC words: Difference between revisions

m
Line 2,364:
return None is not bind(
bind(
residue('abc')(, 'bca')(s)
)(
residue('bc')(, 'cb')
)
)(
Line 2,373:
 
 
# residue (String, Char -> String) -> String -> Maybe String
def residue(cs, c):
'''Any characters remaining in s after c, unless
c is preceded by excluded characters.
'''
def excludinggo(css):
defif go(s):
ifx = s:[0]
return None if x =in cs else s[0](
return Nones[1:] if xc in== csx else go(s[1:])
s[1:] if c == x else go(s[1:])
)else:
else:return None
 
return None
return go
return excluding
 
 
9,655

edits