From: Eli Zaretskii <eliz@gnu.org>
To: rms@gnu.org
Cc: philipk@posteo.net, psainty@orcon.net.nz, emacs-devel@gnu.org,
luangruo@yahoo.com, joaotavora@gmail.com, mardani29@yahoo.es,
agzam.ibragimov@gmail.com
Subject: Re: Elisp LSP Server
Date: Fri, 15 Oct 2021 09:35:00 +0300 [thread overview]
Message-ID: <83o87qkd7v.fsf@gnu.org> (raw)
In-Reply-To: <E1mb9An-0007Se-AJ@fencepost.gnu.org> (message from Richard Stallman on Thu, 14 Oct 2021 18:26:01 -0400)
> From: Richard Stallman <rms@gnu.org>
> Cc: luangruo@yahoo.com, agzam.ibragimov@gmail.com, philipk@posteo.net,
> psainty@orcon.net.nz, emacs-devel@gnu.org,
> joaotavora@gmail.com, mardani29@yahoo.es
> Date: Thu, 14 Oct 2021 18:26:01 -0400
>
> The proposal at issue -- unless I have misunderstood -- is to develop
> a server interface for Emacs specifically to make those analysis
> results available to other editors (which may mean, principally
> VScode).
That interface will be first and foremost useful for Emacs, because
that's the main/only editor people use to edit Emacs Lisp programs.
It's true that other editors will be able to use that, but the chances
of someone using VSCode to edit Emacs Lisp are slim at best.
> If I understood right, this can't be of any benefit to editing with
> Emacs. Because all the analysis results we can produce will be
> available anyway for editing in Emacs.
This assumption/conclusion misses an important point, see below.
> Would it be possible to make Emacs launch a child Emacs and use it as
> a language server to get the results of these analyses? I suppose so.
> Just as it is possible to launch Emacs inside M-x term and edit in
> that child Emacs.
>
> Is there is any practical advantage to starting a child Emacs to do
> this analysis in? I don't see it. Why not do it in the initial Emacs
> process?
Doing that in the same process will make Emacs slower, because Emacs
is fundamentally single-threaded. On modern systems that routinely
have 8 or 16 execution units, off-loading some of the processing to
asynchronous code that exploits additional execution units is a
significant advantage, and allows us to be much more scalable. If
Emacs had true concurrency, we could do that in the same process by
arranging for additional threads. But since that is not available,
running a language processor in a separate process is the next best.
And since a protocol for that already exists, reusing the protocol in
this case sounds like an idea worth exploring. Of course, if it turns
out the LSP protocol doesn't help much, we could always implement our
own protocol (which would then solve the fear of VSCode using that,
although I think that's us being haunted by the shadow of a dwarf).
next prev parent reply other threads:[~2021-10-15 6:35 UTC|newest]
Thread overview: 332+ messages / expand[flat|nested] mbox.gz Atom feed top
2021-09-28 0:38 Do shorthands break basic tooling (tags, grep, etc)? (was Re: Shorthands have landed on master) Phil Sainty
2021-09-28 5:43 ` Lars Ingebrigtsen
2021-09-28 7:26 ` João Távora
2021-09-30 6:03 ` Richard Stallman
2021-09-30 8:20 ` Gregory Heytings
2021-09-30 10:31 ` André A. Gomes
2021-09-30 10:54 ` Alan Mackenzie
2021-09-30 11:18 ` João Távora
2021-09-30 11:40 ` André A. Gomes
2021-09-30 16:58 ` Alan Mackenzie
2021-09-30 20:25 ` João Távora
2021-10-01 3:01 ` Stefan Monnier
2021-09-30 11:30 ` André A. Gomes
2021-09-30 17:37 ` Alan Mackenzie
2021-09-30 11:46 ` Gregory Heytings
2021-09-30 12:41 ` João Távora
2021-09-30 13:00 ` Tomas Hlavaty
2021-09-30 13:26 ` João Távora
2021-09-30 14:26 ` Tomas Hlavaty
2021-09-30 14:57 ` João Távora
2021-09-30 15:50 ` Tomas Hlavaty
2021-09-30 16:02 ` João Távora
2021-09-30 17:58 ` Tomas Hlavaty
2021-09-30 23:30 ` João Távora
2021-10-04 15:29 ` André A. Gomes
2021-09-30 13:18 ` Gregory Heytings
2021-09-30 13:31 ` João Távora
2021-09-30 13:41 ` Gregory Heytings
2021-09-30 16:23 ` [External] : " Drew Adams
2021-09-30 17:19 ` João Távora
2021-10-01 1:20 ` Michael Heerdegen
2021-09-30 22:10 ` Michael Heerdegen
2021-09-30 22:22 ` A read-based grep-like for symbols (el-search?) (was Do shorthands break basic tooling (tags, grep, etc)? (was Re: Shorthands have landed on master)) João Távora
2021-09-30 23:23 ` Michael Heerdegen
2021-09-30 23:38 ` João Távora
2021-10-01 1:17 ` Michael Heerdegen
2021-10-01 7:02 ` tomas
2021-10-01 13:15 ` João Távora
2021-10-01 13:53 ` tomas
2021-10-01 14:30 ` Dmitry Gutov
2021-10-01 14:40 ` João Távora
2021-10-01 15:48 ` Dmitry Gutov
2021-10-01 16:05 ` João Távora
2021-10-01 16:11 ` João Távora
2021-10-01 16:41 ` João Távora
2021-10-01 23:17 ` Michael Heerdegen
2021-10-02 1:14 ` Dmitry Gutov
2021-10-02 1:46 ` João Távora
2021-10-02 2:13 ` Dmitry Gutov
2021-10-04 15:57 ` André A. Gomes
2021-10-02 1:05 ` Dmitry Gutov
2021-10-02 1:30 ` João Távora
2021-10-02 1:43 ` Dmitry Gutov
2021-10-02 2:05 ` João Távora
2021-10-02 2:24 ` Dmitry Gutov
2021-10-02 8:39 ` Adam Porter
2021-10-02 8:36 ` Adam Porter
2021-10-02 12:16 ` Dmitry Gutov
2021-10-02 23:18 ` Richard Stallman
2021-10-03 21:17 ` Gregory Heytings
2021-10-07 22:21 ` Richard Stallman
2021-10-18 21:13 ` Gregory Heytings
2021-10-18 21:22 ` Gregory Heytings
2021-10-20 6:45 ` Richard Stallman
2021-10-20 8:00 ` Gregory Heytings
2021-10-23 23:26 ` Richard Stallman
2021-10-01 22:58 ` Gregory Heytings
2021-10-01 23:03 ` João Távora
2021-10-02 8:50 ` Gregory Heytings
2021-10-02 10:29 ` João Távora
2021-10-02 11:57 ` Gregory Heytings
2021-10-02 12:44 ` João Távora
2021-10-02 14:50 ` João Távora
2021-10-02 15:01 ` Gregory Heytings
2021-10-02 15:22 ` Stefan Kangas
2021-10-02 15:33 ` But then what are namespaces ? (was: A read-based grep-like for symbols (el-search?) (was Do shorthands break basic tooling (tags, grep, etc)? (was Re: Shorthands have landed on master))) João Távora
2021-10-02 19:42 ` Gregory Heytings
2021-10-02 19:59 ` But then what are namespaces ? Stefan Monnier
2021-10-02 20:41 ` Gregory Heytings
2021-10-02 21:05 ` Stefan Monnier
2021-10-02 21:09 ` João Távora
2021-10-02 21:14 ` Stefan Monnier
2021-10-02 22:41 ` João Távora
2021-10-02 22:49 ` João Távora
2021-10-02 23:31 ` Stefan Monnier
2021-10-03 21:47 ` Gregory Heytings
2021-10-02 20:00 ` But then what are namespaces ? (was: A read-based grep-like for symbols (el-search?) (was Do shorthands break basic tooling (tags, grep, etc)? (was Re: Shorthands have landed on master))) João Távora
2021-10-02 20:41 ` Gregory Heytings
2021-10-02 20:46 ` João Távora
2021-10-03 1:15 ` [External] : " Drew Adams
2021-10-02 15:25 ` A read-based grep-like for symbols (el-search?) (was Do shorthands break basic tooling (tags, grep, etc)? (was Re: Shorthands have landed on master)) João Távora
2021-10-02 16:08 ` Gregory Heytings
2021-10-01 22:58 ` Gregory Heytings
2021-10-01 23:10 ` João Távora
2021-10-02 9:03 ` Gregory Heytings
2021-10-02 10:25 ` João Távora
2021-10-01 23:04 ` Michael Heerdegen
2021-09-30 12:34 ` Do shorthands break basic tooling (tags, grep, etc)? (was Re: Shorthands have landed on master) Tomas Hlavaty
2021-09-28 6:25 ` Eli Zaretskii
2021-09-28 7:41 ` João Távora
2021-09-28 8:04 ` Eli Zaretskii
2021-09-28 8:07 ` Helmut Eller
2021-10-02 1:06 ` João Távora
2021-09-28 12:40 ` Stefan Monnier
2021-09-28 15:28 ` João Távora
2021-09-28 19:21 ` Stefan Monnier
2021-09-28 17:25 ` Alan Mackenzie
2021-09-28 18:25 ` Eli Zaretskii
2021-09-28 19:05 ` Alan Mackenzie
2021-09-28 19:29 ` Eli Zaretskii
2021-09-30 12:23 ` Phil Sainty
2021-09-30 12:28 ` Gregory Heytings
2021-09-30 12:29 ` Gregory Heytings
2021-09-30 12:44 ` Joost Kremers
2021-09-30 13:18 ` Adam Porter
2021-10-01 0:11 ` Stefan Kangas
2021-09-30 12:52 ` Tomas Hlavaty
2021-09-30 12:55 ` João Távora
2021-09-30 13:49 ` Tomas Hlavaty
2021-09-30 13:17 ` Lars Ingebrigtsen
2021-10-01 0:21 ` João Távora
2021-09-30 14:12 ` Eli Zaretskii
2021-09-30 14:27 ` João Távora
2021-09-30 22:50 ` Phil Sainty
2021-10-01 0:44 ` Stefan Kangas
2021-10-01 7:06 ` Lars Ingebrigtsen
2021-10-01 7:24 ` João Távora
2021-10-01 10:10 ` Eli Zaretskii
2021-10-01 6:09 ` Eli Zaretskii
2021-10-01 12:24 ` Phil Sainty
2021-10-01 13:00 ` Eli Zaretskii
2021-10-02 0:28 ` Phil Sainty
2021-10-02 6:45 ` Eli Zaretskii
2021-10-02 7:44 ` Phil Sainty
2021-10-02 8:53 ` Eli Zaretskii
2021-10-02 10:52 ` João Távora
2021-10-04 0:12 ` Richard Stallman
2021-10-04 0:16 ` Richard Stallman
2021-10-04 13:09 ` Gregory Heytings
2021-10-04 15:44 ` João Távora
2021-10-04 16:51 ` Eli Zaretskii
2021-10-04 17:43 ` João Távora
2021-10-04 17:51 ` Eli Zaretskii
2021-10-04 18:34 ` Gregory Heytings
2021-10-04 19:15 ` João Távora
2021-10-04 19:30 ` Gregory Heytings
2021-10-05 21:20 ` Richard Stallman
2021-10-06 13:12 ` João Távora
2021-10-05 21:20 ` Richard Stallman
2021-10-05 21:20 ` Richard Stallman
2021-10-05 22:07 ` João Távora
2021-10-05 22:15 ` Stefan Monnier
2021-10-06 11:28 ` João Távora
2021-10-06 12:21 ` Stefan Monnier
2021-10-06 12:30 ` João Távora
2021-10-06 12:46 ` Stefan Monnier
2021-10-06 13:16 ` João Távora
2021-10-06 16:23 ` João Távora
2021-10-06 20:00 ` Stefan Monnier
2021-10-06 21:10 ` João Távora
2021-10-06 21:39 ` Stefan Monnier
2021-10-10 21:09 ` Dmitry Gutov
2021-10-07 22:21 ` Richard Stallman
2021-10-07 22:24 ` João Távora
2021-10-08 6:08 ` Eli Zaretskii
2021-10-08 12:58 ` Stefan Monnier
2021-10-08 13:22 ` Eli Zaretskii
2021-10-10 21:06 ` Dmitry Gutov
2021-10-10 21:18 ` João Távora
2021-10-08 14:16 ` João Távora
2021-10-08 15:55 ` Stefan Monnier
2021-10-08 17:34 ` Eli Zaretskii
2021-10-08 18:16 ` Stefan Monnier
2021-10-08 18:51 ` Eli Zaretskii
2021-10-08 23:43 ` João Távora
2021-10-01 22:38 ` Richard Stallman
2021-10-01 22:41 ` João Távora
2021-10-01 22:52 ` João Távora
2021-10-01 23:52 ` Phil Sainty
2021-10-02 1:38 ` T.V Raman
2021-09-28 19:30 ` Dmitry Gutov
2021-09-28 18:38 ` Stefan Monnier
2021-09-28 19:14 ` Alan Mackenzie
2021-09-28 19:22 ` Eli Zaretskii
2021-09-28 19:31 ` Alan Mackenzie
2021-09-28 19:41 ` Eli Zaretskii
2021-09-30 22:10 ` Richard Stallman
2021-09-30 23:59 ` Tomas Hlavaty
2021-09-28 7:21 ` João Távora
2021-09-28 12:49 ` Phil Sainty
2021-09-28 13:08 ` Dmitry Gutov
2021-09-28 14:04 ` Gregory Heytings
2021-09-28 15:01 ` Adam Porter
2021-09-28 15:20 ` João Távora
2021-09-28 19:23 ` Gregory Heytings
2021-09-28 15:15 ` João Távora
2021-09-30 6:06 ` Richard Stallman
2021-10-05 5:57 ` Elisp LSP Server Ag Ibragimov
2021-10-05 6:38 ` Po Lu
2021-10-05 9:50 ` Philip Kaludercic
2021-10-05 11:27 ` Po Lu
2021-10-05 11:46 ` Philip Kaludercic
2021-10-06 20:57 ` Richard Stallman
2021-10-06 21:22 ` Philip Kaludercic
2021-10-06 21:44 ` Stefan Monnier
2021-10-07 22:27 ` Richard Stallman
2021-10-07 0:49 ` Po Lu
2021-10-10 12:48 ` Ag Ibragimov
2021-10-10 14:19 ` Daniel Martín
2021-10-10 16:49 ` Philip Kaludercic
2021-10-10 19:25 ` Daniel Martín
2021-10-11 7:44 ` Po Lu
2021-10-11 21:15 ` Richard Stallman
2021-10-12 5:29 ` Ag Ibragimov
2021-10-12 5:48 ` Po Lu
2021-10-12 17:14 ` Ag Ibragimov
2021-10-12 17:46 ` Stefan Kangas
2021-10-12 20:53 ` dick
2021-10-13 2:29 ` Eli Zaretskii
2021-10-13 11:56 ` dick
2021-10-13 13:19 ` Eli Zaretskii
2021-10-13 4:47 ` Ag Ibragimov
2021-10-13 0:02 ` Po Lu
2021-10-27 14:36 ` Richard Stallman
2021-10-27 18:04 ` dick
2021-10-27 18:27 ` tomas
2021-10-27 18:33 ` Eli Zaretskii
2021-10-27 18:55 ` Karl Fogel
2021-10-27 19:15 ` dick
2021-10-12 7:14 ` tomas
2021-10-12 8:04 ` Ag Ibragimov
2021-10-12 22:43 ` Richard Stallman
2021-10-13 3:42 ` Ag Ibragimov
2021-10-13 5:20 ` Po Lu
2021-10-13 12:39 ` Eli Zaretskii
2021-10-13 12:49 ` Po Lu
2021-10-13 13:25 ` Eli Zaretskii
2021-10-13 13:37 ` Po Lu
2021-10-13 13:53 ` Eli Zaretskii
2021-10-13 23:42 ` Po Lu
2021-10-13 13:38 ` Philip Kaludercic
2021-10-14 22:22 ` Richard Stallman
2021-10-14 22:26 ` Richard Stallman
2021-10-15 6:35 ` Eli Zaretskii [this message]
2021-10-15 9:54 ` Tim Cross
2021-10-12 22:43 ` Richard Stallman
2021-10-13 5:36 ` Ag Ibragimov
2021-10-13 22:40 ` Richard Stallman
2021-10-10 23:45 ` Dmitry Gutov
2021-10-11 7:34 ` Po Lu
2021-10-11 9:10 ` Alexandre Garreau
2021-10-11 10:46 ` Po Lu
2021-10-11 10:48 ` Alexandre Garreau
2021-10-11 21:16 ` Richard Stallman
2021-10-12 7:17 ` tomas
2021-10-14 12:48 ` Alexandre Garreau
2021-10-15 22:47 ` Richard Stallman
2021-10-11 21:10 ` Richard Stallman
2021-10-22 16:23 ` Mathias Dahl
2021-10-22 16:40 ` Dmitry Gutov
2021-10-22 16:45 ` Alexandre Garreau
2021-10-22 19:59 ` Tim Cross
2021-10-22 22:27 ` Dmitry Gutov
2021-10-22 22:48 ` Tim Cross
2021-10-22 23:11 ` Dmitry Gutov
2021-10-23 23:27 ` Richard Stallman
2021-10-25 7:47 ` Alexandre Garreau
2021-10-23 2:00 ` Po Lu
2021-10-25 2:17 ` Richard Stallman
2021-10-25 7:00 ` Alexandre Garreau
2021-10-22 16:55 ` Mathias Dahl
2021-10-22 20:55 ` Dmitry Gutov
2021-10-25 2:17 ` Richard Stallman
2021-10-25 7:22 ` Alexandre Garreau
2021-10-25 7:45 ` Theodor Thornhill
2021-10-25 7:51 ` Alexandre Garreau
2021-10-25 8:23 ` Theodor Thornhill
2021-10-30 6:51 ` Richard Stallman
2021-11-01 11:48 ` Alexandre Garreau
2021-11-01 17:47 ` Tim Cross
2021-11-03 3:18 ` Richard Stallman
2021-11-03 20:06 ` Jostein Kjønigsen
2021-11-05 3:53 ` Richard Stallman
2021-11-05 5:55 ` Daniel Brooks
2021-11-05 6:25 ` Jostein Kjønigsen
2021-11-05 9:56 ` Alexandre Garreau
2021-10-25 5:46 ` Jostein Kjønigsen
2021-10-06 20:57 ` Richard Stallman
2021-10-06 21:35 ` Philip Kaludercic
2021-10-05 10:15 ` Joost Kremers
2021-10-06 20:57 ` Richard Stallman
2021-10-12 2:52 ` Ag Ibragimov
2021-10-12 3:37 ` dick
2021-10-12 3:43 ` Stefan Kangas
2021-10-12 22:41 ` Richard Stallman
2021-10-12 4:08 ` Stefan Monnier
2021-10-12 5:55 ` Po Lu
2021-10-12 7:22 ` Ag Ibragimov
2021-10-12 10:21 ` Philip Kaludercic
2021-10-12 12:14 ` tomas
2021-10-12 12:51 ` Philip Kaludercic
2021-10-12 13:08 ` tomas
2021-10-12 12:22 ` Stefan Monnier
2021-10-12 22:41 ` Richard Stallman
2021-10-13 0:00 ` Po Lu
2021-10-13 0:22 ` Dmitry Gutov
2021-10-13 0:31 ` Tim Cross
2021-10-13 17:15 ` Joost Kremers
2021-10-13 17:34 ` Dmitry Gutov
2021-10-13 20:00 ` Tim Cross
2021-10-13 21:47 ` Stefan Monnier
2021-10-13 23:14 ` Dmitry Gutov
2021-10-14 6:39 ` Eli Zaretskii
2021-10-14 6:58 ` Po Lu
2021-10-14 6:52 ` Po Lu
2021-10-14 11:08 ` dick
2021-10-14 13:34 ` Augusto Stoffel
2021-10-14 8:20 ` João Távora
2021-10-15 22:51 ` Richard Stallman
2021-10-16 19:02 ` João Távora
2021-10-17 23:49 ` Richard Stallman
2021-10-17 23:58 ` Dmitry Gutov
2021-10-20 22:33 ` Richard Stallman
2021-10-18 0:32 ` Tim Cross
2021-10-18 1:18 ` Stefan Monnier
2021-10-18 2:23 ` Eli Zaretskii
2021-10-18 12:43 ` Stefan Monnier
2021-10-18 13:13 ` Eli Zaretskii
2021-10-14 7:01 ` Po Lu
2021-10-14 8:43 ` [OT] Elisp as a general purpose programming language (was: Elisp LSP Server) Joost Kremers
2021-10-14 10:37 ` Jean-Christophe Helary
2021-10-14 7:03 ` Elisp LSP Server Po Lu
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
List information: https://www.gnu.org/software/emacs/
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=83o87qkd7v.fsf@gnu.org \
--to=eliz@gnu.org \
--cc=agzam.ibragimov@gmail.com \
--cc=emacs-devel@gnu.org \
--cc=joaotavora@gmail.com \
--cc=luangruo@yahoo.com \
--cc=mardani29@yahoo.es \
--cc=philipk@posteo.net \
--cc=psainty@orcon.net.nz \
--cc=rms@gnu.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
Code repositories for project(s) associated with this public inbox
https://git.savannah.gnu.org/cgit/emacs.git
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).