mirror of
https://github.com/roc-lang/roc.git
synced 2025-09-29 14:54:47 +00:00
18 lines
662 B
Text
18 lines
662 B
Text
app "countdown"
|
|
packages { pf: "https://github.com/roc-lang/basic-cli/releases/download/0.6.0/QOQW08n38nHHrVVkJNiPIjzjvbR3iMjXeFY5w1aT46w.tar.br" }
|
|
imports [pf.Stdin, pf.Stdout, pf.Task.{ await, loop }]
|
|
provides [main] to pf
|
|
|
|
main =
|
|
_ <- await (Stdout.line "\nLet's count down from 3 together - all you have to do is press <ENTER>.")
|
|
_ <- await Stdin.line
|
|
loop 3 tick
|
|
|
|
tick = \n ->
|
|
if n == 0 then
|
|
_ <- await (Stdout.line "🎉 SURPRISE! Happy Birthday! 🎂")
|
|
Task.ok (Done {})
|
|
else
|
|
_ <- await (n |> Num.toStr |> \s -> "\(s)..." |> Stdout.line)
|
|
_ <- await Stdin.line
|
|
Task.ok (Step (n - 1))
|