Skip to content

Instantly share code, notes, and snippets.

@ZeekoZhu
Created September 3, 2018 12:04
Show Gist options
  • Save ZeekoZhu/ea2bb97e442986b2881dbe3889d33bac to your computer and use it in GitHub Desktop.
Save ZeekoZhu/ea2bb97e442986b2881dbe3889d33bac to your computer and use it in GitHub Desktop.
eval = (\char reducer fn -> String.split char >> List.map (String.trim >> fn) >> List.foldr reducer (if char == "+" || char == "-" then 0 else 1)) |> \op -> (String.toFloat >> Maybe.withDefault 0) |> op "*" (*) |> op "/" (/) |> op "-" (-) |> op "+" (+)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment