Clojure: Case

Вместо switch в Clojure используется case. В общем случае case по своим возможностям шире, чем switch в большинстве языков программирования. Его использование в качестве switch, это наиболее простой способ познакомиться с ним:

(let [v 0]
  (case v
    0 "zero"
    1 "one"
    2 "two"))
; "zero"

Каждая ветка в case описывается значением и тем, что вернется из выражения, если же ни один из случаев не подошел, то записывается только возвращаемое выражение. Например:

(case 6
  0 "zero"
  1 "one"
  2 "two"
  "many")
; "many"

Задание

Реализуйте функцию humanize-permission, которая принимает на вход символьное обозначение прав доступа в Unix системах, и возвращает текстовое описание.

(humanize-permission "x") ; execute
(humanize-permission "r") ; read
(humanize-permission "w") ; write

Полезное

Команда проекта находится в телеграм-сообществе. Там можно задать любой вопрос и повлиять на проект

Нашли ошибку? Есть что добавить? Пулреквесты приветствуются