Scheme-langserver is a language server protocol implementation based on Chez Scheme and compatible with scheme r6rs. Its biggest feature is programming assistance based on unfinished code, including auto-completion, definition jump, etc. These functions are obtained based on static analysis of the r6rs standard scheme. It is released on Akku and github.
A fundamental reason is that for Scheme and other dialects of Lisp, their rich data structures and flexible control mechanisms make static analysis of code a great challenge. In fact, scheme doesn’t even have a general project management framework and corresponding file extension. Take .ss and .scm as an example. Most programmers assume that code using these two file extensions is used in a running environment and do not specify the library information required by the code. Although Akku and Snow encourage providing file information through .sls and .sld and constructing a stable library management framework, involve, load and many other processes make the library link dynamic, which is even less likely to get anything in the static analysis phase of the code information.
#Scheme #langserver #Homepage #Documentation #Download #LSP #Implementation #Scheme #Language #News Fast Delivery