小编Ste*_*fan的帖子

如何编写Clojure宏来创建多个表达式?

是否有可能在Clojure中编写一个生成多个值或表达式的宏?对我来说,它似乎是不可能的,至少不是通过使用语法报价模板`(..).

例如来自:[1 4]via [1 (mr 2 3) 4]to[1 2 3 4]

或来自:

(do
  (prn 1)
  (prn 4))
Run Code Online (Sandbox Code Playgroud)

通过:

(do
  (prn 1)
  (mr 2 3)
  (prn 4))
Run Code Online (Sandbox Code Playgroud)

至:

(do
  (prn 1)
  (prn 2)
  (prn 3)
  (prn 4))
Run Code Online (Sandbox Code Playgroud)

macros clojure

7
推荐指数
1
解决办法
482
查看次数

标签 统计

clojure ×1

macros ×1