【问题标题】:Is there a lint for Common Lisp or Chicken Scheme?Common Lisp 或 Chicken Scheme 有 lint 吗?
【发布时间】:2011-10-17 02:52:17
【问题描述】:

Common Lisp 或 Chicken Scheme 有 lint 吗?可能类似于 C 的夹板、Haskell 的 HLint、Perl 的 B::Lint 等?

【问题讨论】:

  • 当我进行一些搜索时,我看到了一些名为 SCL 或 SCL Lint 的东西,我不确定它是否仍然存在,以及以下内容:cs.cmu.edu/afs/cs/project/ai-repository/ai/lang/lisp/code/tools/…
  • 这真的很酷,但是我们如何使用它呢?是否像 B::Lint,即在加载代码检查之前加载它?
  • blush 我不知道,我只是做了一些网络搜索... :D 这是一个不同的问题。
  • 我将其移植到现代 CL、Quicklisp 等。如何在不同的 CL 实现中访问 si:definition-type-name?编译器同上:样式检查器?
  • 说真的,我对 C-Lisp 毫无头绪。我做不到hello world。如果您有需要回答的特定问题,我建议您提出一个可以回答该问题的问题,和/或自己尝试并在遇到死胡同时提出问题。如果我的回答让您认为我可以回答这个问题,我很抱歉,但在这种情况下这不是现实。请为您的查询创建一个新问题;我专注于 C-Lisp Lint 解析器。另请注意,在某些情况下,您最好删除问题而不是编辑它。

标签: debugging scheme common-lisp lint chicken-scheme


【解决方案1】:

sblint ? Common Lisp 的 linter,基于 SBCL。

【讨论】:

    【解决方案2】:

    特别是对于 CHICKEN Scheme,在 4 系列中添加了一个“审查器”,它将对您的数据类型执行(有限的)流分析。尤其是如果您将代码放入模块中(可以说使代码成为“封闭世界”),它对检测类型错误非常有帮助。

    在 4.9.0 及更高版本中,审查器默认启用。在旧版本中,您可以通过 -scrutinize 命令行选项启用它。

    【讨论】:

      【解决方案3】:
      【解决方案4】:

      有一个用于 PLT Scheme 的静态调试器,称为“MrSpidey”,如果您使用的是“Bigloo”Scheme 编译器,则称为“bugloo”,但这就是我能找到的全部内容。看到这个Stack Overflow question关于静态分析器的方案。

      【讨论】:

        【解决方案5】:

        不,Common Lisp 没有这样的东西。

        【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2012-06-28
        • 2013-06-24
        • 1970-01-01
        • 1970-01-01
        • 2014-10-24
        相关资源
        最近更新 更多