【发布时间】:2013-09-13 19:53:23
【问题描述】:
我需要为学术编译器实现选择一个 Scheme 标准。它必须足够简单,但仍然应该是一种强大的语言。 Scheme有几个(RRS-R7RS)标准。这些报告是否有公开比较以供选择?如果不是,您会推荐哪一个作为第一个编译器?
【问题讨论】:
-
"如果没有,你会推荐哪一个作为第一个编译器?" => 最后一个,R7RS (the first part is achieved now)。 R6RS 是个错误,R5RS 还是不错的。
-
@arbautjc,你说R4RS怎么样,从它开始,然后去R5RS不是更容易吗?
-
@Necto:如果你无论如何都想转向 R5RS,那么从 R5RS 的增长子集开始应该比 R4RS 更容易。这样,您就不必重写不兼容的更改或实现已删除的 R4RS 功能。
-
你打算在多大程度上使用这个编译器?如果它只是一个学期项目或类似的项目,您可能最终会实施所有这些标准的核心。所以最好选择一个简单的并从它开始。 R5RS 将成为最简单的现代方案(没有库或
syntax-case可担心,尽管它确实有syntax-rules,这并不容易实现)。选择 R4RS 的唯一原因是,如果您出于某种原因想完全避免使用syntax-rules宏。
标签: compiler-construction lisp scheme r5rs r6rs