From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.io!.POSTED.blaine.gmane.org!not-for-mail From: Augusto Stoffel Newsgroups: gmane.emacs.devel Subject: Re: Elisp LSP Server Date: Thu, 14 Oct 2021 15:34:38 +0200 Message-ID: <878ryvg26p.fsf@gmail.com> References: <16338bdc2497fc51c6fb6d54ab370bfb@webmail.orcon.net.nz> <87ee99dv34.fsf@gmail.com> <07cf50ddddb5a9556aa94201a7ac88c9@webmail.orcon.net.nz> <87fstf3god.fsf@fastmail.fm> <87ily2947q.fsf@yahoo.com> <87fst5ae2t.fsf@gmail.com> <87v920j0jx.fsf@fastmail.fm> <839638db-98e1-4669-1b7e-82c8e26ec4aa@yandex.ru> <87ee8obqyy.fsf@gmail.com> Mime-Version: 1.0 Content-Type: text/plain Injection-Info: ciao.gmane.io; posting-host="blaine.gmane.org:116.202.254.214"; logging-data="2476"; mail-complaints-to="usenet@ciao.gmane.io" User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/28.0.60 (gnu/linux) Cc: Joost Kremers , emacs-devel@gnu.org, Dmitry Gutov To: Tim Cross Original-X-From: emacs-devel-bounces+ged-emacs-devel=m.gmane-mx.org@gnu.org Thu Oct 14 15:36:56 2021 Return-path: Envelope-to: ged-emacs-devel@m.gmane-mx.org Original-Received: from lists.gnu.org ([209.51.188.17]) by ciao.gmane.io with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92) (envelope-from ) id 1mb0ul-0000Ms-TM for ged-emacs-devel@m.gmane-mx.org; Thu, 14 Oct 2021 15:36:55 +0200 Original-Received: from localhost ([::1]:58364 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1mb0uk-0004IZ-S1 for ged-emacs-devel@m.gmane-mx.org; Thu, 14 Oct 2021 09:36:54 -0400 Original-Received: from eggs.gnu.org ([2001:470:142:3::10]:37946) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1mb0sf-0001K4-R5 for emacs-devel@gnu.org; Thu, 14 Oct 2021 09:34:45 -0400 Original-Received: from mail-wr1-x432.google.com ([2a00:1450:4864:20::432]:35765) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1mb0se-00082U-35 for emacs-devel@gnu.org; Thu, 14 Oct 2021 09:34:45 -0400 Original-Received: by mail-wr1-x432.google.com with SMTP id g25so19546476wrb.2 for ; Thu, 14 Oct 2021 06:34:43 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20210112; h=from:to:cc:subject:references:date:in-reply-to:message-id :user-agent:mime-version; bh=gWMnylCnrSER7dYWDEVM7/lrIRCKhOgI+DQBXjRSRpc=; b=dd4CHPSE+Xqc0INJ9atvJWn9J449X5TeUCgBsGz5oTJVGLIR/AqOgRW/pA5Yg0OH6A HaatppRFaVloHT4eLguNfMG2XT0hCFM6VKz/uICldIvll6klIwOvpTUcIU7uy8T+ahvQ S/f2uArn+jr5N0WVJphDAmveKdbtsN1esFPsWvMucsS5HudlCGW9rLsOeMn7e1r5rjG9 3+BKz+EEuifjqdwbkq8HoEjQZoZGoanyvB0M+qeNR4evOvdf3nG6tTvm9IH9UjtcJki+ euTec246EB5q77Yl+HiKkVzAOGTLHcD1McUo/1LEED252wnUVemqTpzhmudSTvUFaTjO wtjw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=x-gm-message-state:from:to:cc:subject:references:date:in-reply-to :message-id:user-agent:mime-version; bh=gWMnylCnrSER7dYWDEVM7/lrIRCKhOgI+DQBXjRSRpc=; b=WIw16gYImk0306lvOpVTDnYumJvSZehGwtEM91SLX3Qpxd6EnSxVKTbp/IuRP7qZTX 6xFuhgPGjm1/xUTtmPUCJm2HNwB7HDEt5S5TZrIFjzglhkNYjsgAzcsyy+7nLuKpafP3 BQ8vh2Js7BgqEGHzrXH6JeFGVrTHbviKzKMrCiwgdMIcUa41eiqJP0j3hIpRfYld02BV HAXThke8QgsMZGH9pahuPQ3mlMiSWoHDFD7Jt6U4I4IaGk6H/pDqAt7trH+IV9IukhJL YV6O1smyvVtYoFRg9dZN4JmmQ9mS8nEwf1BXjVEKU631KL5CDgVxu/v4/VyELbIXpRjZ IksA== X-Gm-Message-State: AOAM531kV0F8hWgA54uV32VE5TmLl680WCye+8O9vLzSko67ctC+I1vw ky2N/VGxjibUtURslT9GVJB3F8GgavY= X-Google-Smtp-Source: ABdhPJycoIcI7QN98VtmSwSyT3ohfgpshAN1jdCBcOimVaRYZFiX2DrdBJZHhMSSb5krA+GsFBv5fA== X-Received: by 2002:a05:6000:44:: with SMTP id k4mr6810850wrx.68.1634218480326; Thu, 14 Oct 2021 06:34:40 -0700 (PDT) Original-Received: from ars3 ([2a02:8109:8ac0:56d0::c48f]) by smtp.gmail.com with ESMTPSA id z12sm2175379wmk.38.2021.10.14.06.34.39 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 14 Oct 2021 06:34:39 -0700 (PDT) In-Reply-To: <87ee8obqyy.fsf@gmail.com> (Tim Cross's message of "Thu, 14 Oct 2021 07:00:25 +1100") Received-SPF: pass client-ip=2a00:1450:4864:20::432; envelope-from=arstoffel@gmail.com; helo=mail-wr1-x432.google.com X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, FREEMAIL_FROM=0.001, RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: emacs-devel@gnu.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: "Emacs development discussions." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: emacs-devel-bounces+ged-emacs-devel=m.gmane-mx.org@gnu.org Original-Sender: "Emacs-devel" Xref: news.gmane.io gmane.emacs.devel:277019 Archived-At: On Thu, 14 Oct 2021 at 07:00, Tim Cross wrote: > At any rate, I only entered this thread to address the misinformation > about LSP being evil and encouraging the use of non-free software. LSP > is simply a protocol - how it is implemented and how it is used is down > to developers and users - arguing that providing an LSP server would > encourage the use of non-free software is extremely unlikely. Elisp is > of no interest to non-Emacs users and while it might seem that elisp is > the greatest language ever to those who have drunk the Emacs kool-aid, > to those outside Emacs, it is just some esoteric editor configuration > language of little interest. I wouldn't paint LSP as being that neutral. It is defined by Microsoft and primarily with VSCode in mind. Yes, they do take input from the community and encourage other editors to support the protocol. But looking into the details, you notice that this aspect tends to be an afterthought. As a silly example, note that LSP defines methods such as "hover" and "code lenses". Whatever those VSCode features are, they could have used a common name in the protocol. As a more technical example, one can mention that the LSP completion method doesn't return the bounds of the thing being completed (the equivalent of START and END in `completion-at-point-functions'). There have been several discussions on LSP's issue tracker about this problem, cf. [1] and linked threads. The conclusion, AFAICT, is that VSCode can live with this limitation so the LSP protocol won't be fixed. I think it's great to have an LSP client for Emacs, but it's important to keep it as a simple translation layer between Emacs's editing features and the current popular API for code analyzers (especially when it's not a particularly well designed one). [1]: https://github.com/microsoft/language-server-protocol/issues/648