Scheme langserver —— Scheme 语言 LSP 实现
Scheme-langserver 是基于 Chez Scheme 并兼容 scheme r6rs 的 language server protocol 实现。它最大的特点是基于未完成的代码做编程辅助,包括自动完成、定义跳转等。这些功能是基于对r6rs标准的scheme进行静态分析得到的。它被发布在Akku和github。 一些辅助功能如自动完成、定义跳转、鼠标悬停显示文档等功能对于编程十分有帮助。但是,和其他的编程语言如java、python、javascript和c,lisp系的语言服务器协议实现(language server protocol implementation)几乎是一篇空白。emacs的Geiser、Dr. Racket的racket langserver还有swish-lint等等,他们的工作基本上是基于repl(Read-Eval-Print Loop)或者词法解析器的,而不是基于编程的一般过程。例如,如果程序员正参与一个未完成的项目,里面的代码还并不是都能跑起来,Geiser或者其他的竞品都只能提供对顶级变量、标识符的自动补全,这些标识符在Chez Sche...
