September Morn Update

This commit is contained in:
Ingy döt Net 2019-09-12 10:33:56 -07:00
parent 4e2d22a71d
commit aac6731f2c
6856 changed files with 141342 additions and 21127 deletions

View file

@ -0,0 +1,36 @@
# Dropping or keeping any non-numerics in the string
# succString :: Bool -> String -> String
def succString(blnPruned):
def go(x):
try:
return [str(1 + (float(x) if '.' in x else int(x)))]
except ValueError:
return [] if blnPruned else [x]
return lambda s: ' '.join(concatMap(go)(s.split()))
# TEST ----------------------------------------------------
def main():
print(
'\n'.join(
[succString(bln)(
'41.0 pine martens in 1491 -1.5 mushrooms ≠ 136'
) for bln in [False, True]]
)
)
# GENERIC ---------------------------------------------------
# concatMap :: (a -> [b]) -> [a] -> [b]
def concatMap(f):
return lambda xs: (
[ys[0] for ys in [f(x) for x in xs] if ys]
)
# MAIN ---
if __name__ == '__main__':
main()