English 中文(简体)
你们怎样才能在计划中重写“原始”?
原标题:How can you rewrite "begin" in Scheme?
  • 时间:2009-11-05 21:33:34
  •  标签:
最佳回答

我们不能。 这正是<代码>begin有两个作用:一个是顺序排列副作用表述,另一个是将其用于“简单”宏观结果。 您可以使用<代码>begin,其定义如上所示,是第二种特征的结果,你不能书写。

如果你真的想听从整个故事,那么你将could<>>>>>条码定义为简单宏观,仅作顺序安排(而且实际上可以按顺序实施,但通常为t)。 这意味着宏观执行是好的,但是由于核心扩展者应当知道它,它实际上不能成为一个图书馆。 (由于该语文在结构上范围很广,核心扩展者无法找到核心语言未定义的<代码>begin。)

总之,你可以说,R5RS在将<代码>begin归类为“library syntax”方面是错误的,因为它可以在图书馆中加以界定,但甚至由于R5RS将“library syntax”界定为“衍生表达”。 因此,真正的错误点是,在其他地方(就定义而言)实施<条码>的“原始>两面。

请注意,R6RS澄清了整个交易:begin的两种面孔是明确的,现在是核心语言的一部分,不是“图书馆形式”,甚至不是衍生形式。

问题回答




相关问题
热门标签