LSP could have been better

This page summarizes the projects mentioned and recommended in the original post on news.ycombinator.com

Stream - Scalable APIs for Chat, Feeds, Moderation, & Video.
Stream helps developers build engaging apps that scale to millions with performant and flexible Chat, Feeds, Moderation, and Video APIs and SDKs powered by a global edge network and enterprise-grade infrastructure.
getstream.io
featured
InfluxDB – Built for High-Performance Time Series Workloads
InfluxDB 3 OSS is now GA. Transform, enrich, and act on time series data directly in the database. Automate critical tasks and eliminate the need to move data externally. Download now.
www.influxdata.com
featured
  1. language-server-protocol

    Defines a common protocol for language servers.

    There was a lengthy discussion on this [1]. UTF-16 was used because it was convenient: it's what Microsoft API's and JavaScript already use (the latter being the language VS Code is written in).

    [1] https://github.com/microsoft/language-server-protocol/issues...

  2. Stream

    Stream - Scalable APIs for Chat, Feeds, Moderation, & Video. Stream helps developers build engaging apps that scale to millions with performant and flexible Chat, Feeds, Moderation, and Video APIs and SDKs powered by a global edge network and enterprise-grade infrastructure.

    Stream logo
  3. python-lsp-server

    Fork of the python-language-server project, maintained by the Spyder IDE team and the community

    I came at the tail end of https://github.com/python-lsp/python-lsp-server/issues/195. The possibility of me sponsoring a fix came up, and I’m on board with it, but the other contributor never replied.

  4. rust-analyzer

    A Rust compiler front-end for IDEs

    Agree this is not a problem. rust-analyzer also includes a boatload of custom extensions. Here's how "query type of selected expression" works, for example:

    https://github.com/rust-lang/rust-analyzer/blob/master/docs/...

  5. eglot

    A client for Language Server Protocol servers

    Recently I stumbled upon this issue:

    https://github.com/joaotavora/eglot/discussions/1127

    I don't know enough about emacs and LSP to see the full picture, but it seems that both eglot's and corfu's maintainers, assumably very competent programmers, can't find a solution for this.

    I only skimmed the thread. My understanding is that LSP dumps a long list of completion candidates at once and they can't decide a cache strategy that works well with existing code...?

  6. company-mode

    Modular in-buffer completion framework for Emacs

    I'm curious to know what `company` does differently here than `corfu`. As a longtime user I couldn't be happier.

    https://company-mode.github.io/

  7. pharo

    Pharo is a dynamic reflective pure object-oriented language supporting live programming inspired by Smalltalk.

  8. vscode-debugadapter-node

    Debug adapter protocol and implementation for VS Code.

    https://github.com/microsoft/vscode-debugadapter-node/issues...

  9. InfluxDB

    InfluxDB – Built for High-Performance Time Series Workloads. InfluxDB 3 OSS is now GA. Transform, enrich, and act on time series data directly in the database. Automate critical tasks and eliminate the need to move data externally. Download now.

    InfluxDB logo
  10. iceberg

    Iceberg is the main toolset for handling VCS in Pharo. (by pharo-vcs)

    The problem with the filesystem is that it privileges organization scheme which isn’t the best one for every editing task. This makes, for example, implementation inheritance hard because your class has a bunch of invisible code in it. But, it you could expand all the superclass methods into a single view and then have edits automatically integrated into the appropriate places, this wouldn’t be as much of a problem.

    Java’s filesystem hierarchy is a great example of a “fileout” format for the sort of environment I’m talking about. Another example here is smalltalk repositories generated by Iceberg: https://github.com/pharo-vcs/iceberg

NOTE: The number of mentions on this list indicates mentions on common posts plus user suggested alternatives. Hence, a higher number means a more popular project.

Suggest a related project

Related posts

  • Blamer.el: A Git blame plugin for Emacs inspired by VS Code's GitLens plugin

    1 project | news.ycombinator.com | 26 Aug 2024
  • M-X Reloaded: The Second Golden Age of Emacs – (Think)

    4 projects | news.ycombinator.com | 27 Feb 2024
  • Is it too late to learn emacs as a vim lifer?

    3 projects | /r/emacs | 3 Oct 2023
  • Mastering Emacs: What's new in Emacs 29.1

    6 projects | news.ycombinator.com | 7 Sep 2023
  • New Package: Peek

    2 projects | /r/emacs | 9 Jul 2023

Did you know that Emacs Lisp is
the 26th most popular programming language
based on number of references?