15 lines
381 B
Plaintext
15 lines
381 B
Plaintext
(defenum Key
|
|
[space 32 escape 256 left 263 right 262])
|
|
|
|
(defn key-name [k Key] str
|
|
(cond
|
|
(= k :space) "space"
|
|
(= k :escape) "escape"
|
|
:else "an arrow"))
|
|
|
|
(defn main [] ()
|
|
;; :space resolves against the parameter's enum at compile time.
|
|
;; A typo is an error here, not a wrong number later.
|
|
(println (key-name :space))
|
|
(println (key-name :left)))
|