【问题标题】:Is there a digest for different "RnRS" Scheme standards?是否有不同“RnRS”方案标准的摘要?
【发布时间】: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


【解决方案1】:

您可以使用标准文档本身中的“语言更改”部分进行比较。以下是公共 HTML 版本中这些部分的链接:

【讨论】:

    【解决方案2】:

    最容易开始的是R5RS 子集,稍后将其变为R7RS-small 并不难。 R5RS 不是很大,所以它自己几乎就是​​一个摘要。

    您可以通过它们在不同报告中的language changes 部分来比较它们。 R7RS-small 甚至有一个针对 R5RS 和 R6RS 的列表。

    【讨论】:

      猜你喜欢
      • 2022-08-14
      • 2015-08-06
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-09-04
      相关资源
      最近更新 更多