在以下情况下使用Clojure嵌套let
是否是一个好习惯,还是会让人感到困惑?
(defn a-fun [config]
(let [config (-> config (parse) (supply-defaults))]
;; do something with config
))
我注意到我在与外部世界交互的输入函数中经常出现这种解析/检查/验证事物的模式(在本例中是公开函数的Clojurescript库,但我也有具有相同感觉的Compojure路线)。
这是否令人困惑,因为必须理解绑定可见性的规则(不确定确切的措辞是什么)?
那么做的习惯方法是什么?将config
名称更改为parsed-config
,放入另一个函数中,或完全采用其他方式?