【问题标题】:Reading and Understanding Common Lisp (HyperSpec) Documentation阅读和理解 Common Lisp (HyperSpec) 文档
【发布时间】:2017-12-20 17:43:36
【问题描述】:

在尝试更深入地了解 Common Lisp 的工具时,我发现自己在阅读文档时遇到了困难。也就是说,很难理解所讨论的宏的用法会是什么样子。

例如,考虑this

do ({var | (var [init-form [step-form]])}*) (end-test-form result-form*) declaration* {tag | statement}*

如何解释括号?圆括号() 是否对应于 Lisp 列表?什么是竖线?大括号?星号?

我基本上可以阅读 Unix 手册页并很好地理解它们的语法;但是,这里似乎发生了完全不同的事情。

【问题讨论】:

标签: lisp common-lisp ebnf hyperspec


【解决方案1】:

这是我评论的扩展,我认为可以作为答案。

首先请记住,CLHS 是一个规范:它通常不是非常好的介绍性材料,尽管当然很多人都从中学习了 CL。一些符号在规范的纸质(或 PDF)版本中也更容易阅读:虽然转换为 HTML 非常好(并且在当时是英雄)但并不总是完全正确:如果你能得到纸质副本在某些情况下会更好。

话虽如此:section 1.4.1 有符号约定,section 1.4.1.2 专门处理规范中使用的 BNF 变体。

【讨论】:

猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2014-02-01
  • 1970-01-01
  • 2015-09-11
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多