aboutsummaryrefslogtreecommitdiffstats
path: root/examples/effects-concept.lisp
blob: 0bde72f6c65bf38c339dc8e6030b46be28a0f3a9 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
; FUNCTIONS

(let prompt-input (\[]
    (let p "> ")
    (do get-user-input "prompted" p)))

; SIGNAL HANDLERS

(on user-input (\[msg s]
    (match msg
        "prompted" (batch [
            (do print-line (fmt "You entered: %%" [s]))
            (prompt-input)])
        (do fatal-error (fmt "error: unknown signal %%" [msg])))))

; ENTRYPOINT

(prompt-input)