【发布时间】:2016-02-27 21:54:18
【问题描述】:
这是我的 clojure 代码:
(defn salutation-adder-maker
([salutation call]
(def call (salutation-adder-maker salutation)))
([salutation]
#(str % salutation))
)
(salutation-adder-maker "-Thanks!" salutation1)
(salutation1 "Help me!")
下面两行代码给出了一个错误,无法解析符号salutation1。该函数编译得很好,但这是因为它将函数定义为call。因此以下代码有效:
(call "Help me!")
吐出来
Help me-Thanks!
而不是函数salutation1 具有该功能。如何更改代码以使 salutation1 执行与 call 当前相同的操作?
我希望能够传递两个参数:
- 最后添加的称呼
- 添加该称呼的函数的名称
例如:
(salutation-adder-maker "-Have a good day!" day_salutation)
(day_salutation "I will talk to you later")=>"I will talk to you later-Have a good day!"
【问题讨论】:
-
你的问题不清楚。提供一些示例调用和预期结果。你所说的“应用所说的称呼”是什么意思?
-
希望添加所需的输出可以阐明我的目标。
标签: clojure