【发布时间】:2018-06-18 17:01:32
【问题描述】:
显然向 Haskell 添加宏比在 Scheme 中更难。
我对函数式编程中的宏到底是什么感到非常困惑,但根据我对 C 语言的理解,它是在预处理时改变“代码”的代码,而不是程序本身。
这是否与 Haskell 是纯的这一事实有关,因此更改函数式代码要困难得多?
跟惰性求值有关系吗?
【问题讨论】:
-
这是否与 Haskell 是纯的,因此更难更改函数式代码这一事实有关? 不是:宏在代码之间大多是纯函数。
-
Scheme/Lisp 宏的名称与 C 预处理器宏相同。
标签: haskell functional-programming macros scheme