Hi everyone
,
I am currently writing Crystalline, a Language Server Protocol implementation (think Scry) for Crystal that provides limited language features (like go-to, autocompletion, syntax and semantic checking).
I’m still working on it, and I’m planning to improve some parts of it. I began using it for my own projects for a few days now and I find it quite helpful, so I’m sharing it here in case people were missing these IDE features a much as I did
.
Small disclaimer: Crystalline does not aim to be as fast - or as feature complete - as other LSP because it would involve a massive amount of effort to write incremental semantic analysis, a fault tolerant parser or other tools needed. Despite that it should be in a fairly stable state - meaning it should not crash or report wrong information. But do not expect it to work in all cases, it will not report anything when type information is missing.
Just write in the README that LLVM 8 is needed (it is not possible to compile with LLVM 10).