GitHub - foxsae/The-One-True-Lisp-Style-Guide:基于其他风格指南中达成的共识点,为 Common Lisp 提供的一组风格建议的子集。

主要观点:创建 Common Lisp 的风格推荐子集,基于其他风格指南的共识点,虽标题诙谐但非严肃创建新指南,而是寻找不同指南的共识并简化为单行规则,仅为个人兴趣,若成为公认指南也不失望。
关键信息:包含 19 个方面的风格共识,如注释、命名、函数定义等;提及多个来源,如不同的 Lisp 风格指南等;对各方面风格共识有详细解释和说明。
重要细节

  • 目的:提高可读性,避免陷阱,基于其他指南共识创建子集。
  • 来源:多个 Lisp 相关的指南和文档,如 Peter Norvig 和 Kent Pitman 的教程、lisp-lang.org 风格指南等。
  • 风格共识方面

    • 注释:使用不同数量的分号表示不同层级的注释。
    • 命名:名称为完整单词、小写、用“-”分隔,特殊变量和常量有特定标记。
    • 函数定义:避免同时使用&OPTIONAL和&KEY参数。
    • 特殊变量:慎用。
    • 缩进:使用编辑器提供的标准。
    • 功能性风格:写单用途函数。
    • EVAL 使用:是个危险信号。
    • 宏:能用宏就用宏,最好理解宏。
    • :USE 使用:除非需要所有符号,否则:import-from更好。
    • 错误检测:所有错误是条件,但不是所有条件是错误。
    • 递归:偏爱迭代,递归适用于递归数据结构。
    • 类型检查:知道类型应明确声明。
    • 条件表达式:使用 when、unless 代替 if 无 else 情况,用 cond 处理多分支。
    • 谓词:根据单词是否有连字符后缀为“p”或“-p”,返回 t 或 nil。
    • 避免列表滥用:根据情况使用合适的数据结构。
阅读 11
0 条评论