This page is not created by, affiliated with, or supported by Slack Technologies, Inc.
2022-04-15
Channels
- # asami (6)
- # babashka (74)
- # babashka-sci-dev (164)
- # beginners (50)
- # biff (3)
- # calva (71)
- # clj-kondo (4)
- # cljdoc (39)
- # cljsrn (4)
- # clojars (8)
- # clojure (70)
- # clojure-austin (7)
- # clojure-czech (5)
- # clojure-europe (4)
- # clojure-losangeles (1)
- # clojure-nl (10)
- # clojure-norway (1)
- # clojure-uk (3)
- # clojurescript (38)
- # community-development (18)
- # cursive (129)
- # datomic (9)
- # fulcro (7)
- # graalvm (4)
- # improve-getting-started (1)
- # jobs (1)
- # kaocha (2)
- # liberator (9)
- # lsp (22)
- # malli (3)
- # membrane (95)
- # off-topic (86)
- # releases (2)
- # sci (5)
- # specter (2)
I was interested in what language(s) that clojure-lsp is implemented in. Also, when one installs Calva on VScode, does that automatically install clojure-lsp, too? And if so, how is that done? I'm happy to discuss in a thread on this question to avoid polluting the top level chat too much. Especially since my main reasons for asking are to figure out whether I want to take on a project of writing an LSP for a different programming language. If I did take on that project, I wouldn't mind considering Clojure or ClojureScript as a language in which to write such an LSP.
Clojure-lsp is written in clojure, using lsp4clj lib When calva opens a clojure project,.it downloads latest clojure-lsp release automatically that tis compiled with graalvm
That uses lsp4j under the hood, but we have ideas of implementing whole lsp4j in clojure inside lsp4clj
I just found the clojure-lsp page where it mentions GraalVM, and that this is used to build a binary that can run on multiple OS's. Nice. (this page - https://clojure-lsp.io/building/ )
I would guess GraalVM must generate different binaries for different OS's?
And when installing Calva on VSCode, it just picks the latest clojure-lsp for the OS on which VSCode is currently running?
Cool. And thanks for the quick and informative replies!
Do you know if instaparse compiles with GraalVM these days? Or have a recommendation on other context-free parsing libraries that work with GraalVM compilation?
I can check there. Thanks again.
@U0CMVHBL2 I'm using lsp4clj at work to write an lsp server for a custom language. Just so you know it's possible
Whatโs the language?
For me, the language I might be creating an LSP server for is called P4: https://p4.org. Very small niche language for programming devices like network switches and NICs for the "fast path" of data packet handling.
that's cool
I wish someone else would write one, but no takers so far ๐
Ours is a markdown based DSL