Skip to content

Instantly share code, notes, and snippets.

@yanns
Created December 2, 2021 03:47
Show Gist options
  • Save yanns/b8ea295d91ac64d8bd6d41a0d1611ac8 to your computer and use it in GitHub Desktop.
Save yanns/b8ea295d91ac64d8bd6d41a0d1611ac8 to your computer and use it in GitHub Desktop.
app "cli-tutorial"
packages { pf: "examples/cli/platform" }
imports [ pf.Stdout, pf.Task.{ await } ]
provides [ main ] to pf
measurements = [199, 200, 208, 210, 200, 207, 240, 269, 260, 263 ]
increases = List.walk measurements { counts: 0, previousElement: None } \state, elem ->
when state.previousElement is
Some previousElement if previousElement < elem -> { counts: state.counts + 1, previousElement: Some elem }
_ -> { state & previousElement: Some elem }
increasesStr = Num.toStr increases.counts
main =
{} <- await (Stdout.line "There are \(increasesStr) increases")
Task.succeed {}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment