corrade-nucleus-nucleons – Blame information for rev 20
?pathlinks?
Rev | Author | Line No. | Line |
---|---|---|---|
20 | office | 1 | (defn parting |
2 | "returns a String parting in a given language" |
||
3 | ([] (parting "World")) |
||
4 | ([name] (parting name "en")) |
||
5 | ([name language] |
||
6 | ; condp is similar to a case statement in other languages. |
||
7 | ; It is described in more detail later. |
||
8 | ; It is used here to take different actions based on whether the |
||
9 | ; parameter "language" is set to "en", "es" or something else. |
||
10 | (condp = language |
||
11 | "en" (str "Goodbye, " name) |
||
12 | "es" (str "Adios, " name) |
||
13 | (throw (IllegalArgumentException. |
||
14 | (str "unsupported language " language)))))) |
||
15 | |||
16 | (println (parting)) ; -> Goodbye, World |
||
17 | (println (parting "Mark")) ; -> Goodbye, Mark |
||
18 | (println (parting "Mark" "es")) ; -> Adios, Mark |
||
19 | (println (parting "Mark", "xy")) ; -> java.lang.IllegalArgumentException: unsupported language xy |