From: Eli Zaretskii <eliz@gnu.org>
To: Lynn Winebarger <owinebar@gmail.com>
Cc: rms@gnu.org, emacs-devel@gnu.org
Subject: Re: Emacs design and architecture (was: Shrinking the C core)
Date: Tue, 12 Sep 2023 16:00:38 +0300 [thread overview]
Message-ID: <83cyynpmvd.fsf@gnu.org> (raw)
In-Reply-To: <CAM=F=bBzfj3GUgoHLtDWD4hAfL3o-TCJzj7vZZdpkYnqPO4p2A@mail.gmail.com> (message from Lynn Winebarger on Tue, 12 Sep 2023 07:31:35 -0400)
> From: Lynn Winebarger <owinebar@gmail.com>
> Date: Tue, 12 Sep 2023 07:31:35 -0400
> Cc: Richard Stallman <rms@gnu.org>, incal@dataswamp.org, emacs-devel <emacs-devel@gnu.org>
>
> If Emacs will ever be "rewritten", it will not be Emacs, but a
> text-processing system with a very different architecture and design,
> which will take from the Emacs experience the lessons we learned and
> implement them differently, to produce a system whose starting point
> is closer to the needs of today's users and whose main technologies
> are more modern from the get-go.
>
> It sounds like you have some specific ideas. I wouldn't mind hearing them at more length.
They are all well known. And they aren't ideas, just main design
features of Emacs which we found restrictive in some aspects:
. "buffer with gap" for storing buffer text
. "mark and sweep" GC
. basic single-threaded MVC architecture
. display engine design around the rectangular canvas model and
on-the-fly layout decisions
> My understanding is the design is deliberately kept simple (or "simple") to make it accessible to
> more programmers.
Richard will tell, but I don't think this goal was ever of high
priority, back when Emacs was still being designed.
> Instead of discussing porting emacs to CL, why don't people work on porting the compiler
> techniques used in CL to emacs?
Well, native-compilation is one step in that direction. We've been
discussing something like that for many years, and we even tried a
couple of approaches (which didn't work). Native compilation is the
first successful experiment in that direction. Working on making the
native code more efficient is definitely encouraged.
next prev parent reply other threads:[~2023-09-12 13:00 UTC|newest]
Thread overview: 379+ messages / expand[flat|nested] mbox.gz Atom feed top
2023-08-27 15:14 Shrinking the C core Arthur Miller
2023-08-27 16:29 ` Eli Zaretskii
2023-08-28 5:32 ` Gerd Möllmann
2023-08-28 6:23 ` Arthur Miller
2023-08-28 6:21 ` Arthur Miller
2023-08-28 1:31 ` Richard Stallman
2023-08-28 5:50 ` Arthur Miller
2023-08-28 12:20 ` Po Lu
2023-08-28 14:39 ` Arthur Miller
2023-08-28 15:17 ` Po Lu
2023-08-29 2:41 ` Arthur Miller
2023-08-28 1:41 ` Po Lu
2023-08-28 2:53 ` chad
2023-08-28 3:43 ` Emanuel Berg
2023-08-28 4:53 ` Arthur Miller
2023-08-28 5:36 ` Po Lu
2023-08-28 6:55 ` Arthur Miller
2023-08-28 7:31 ` Po Lu
2023-08-28 8:06 ` Ihor Radchenko
2023-08-28 14:30 ` Arthur Miller
2023-08-28 15:09 ` Ihor Radchenko
2023-08-29 2:20 ` Arthur Miller
2023-08-28 15:14 ` Po Lu
2023-08-29 2:36 ` Arthur Miller
2023-08-29 4:07 ` Po Lu
2023-08-31 1:07 ` Emanuel Berg
2023-08-28 14:08 ` Arthur Miller
2023-08-28 15:08 ` Po Lu
2023-08-29 2:06 ` Arthur Miller
2023-08-29 4:15 ` Po Lu
2023-08-29 11:50 ` Eli Zaretskii
2023-08-29 3:57 ` Arthur Miller
2023-09-01 1:18 ` Richard Stallman
2023-08-31 2:07 ` Richard Stallman
2023-09-01 14:58 ` Arthur Miller
2023-09-01 16:36 ` tomas
2023-09-04 1:32 ` Richard Stallman
2023-09-04 1:44 ` Emanuel Berg
2023-09-04 5:49 ` Rudolf Schlatte
2023-09-04 14:08 ` Emanuel Berg
2023-09-07 1:21 ` Richard Stallman
2023-09-07 1:54 ` Emanuel Berg
2023-09-07 7:02 ` tomas
2023-09-07 7:36 ` Alfred M. Szmidt
2023-09-07 7:56 ` Emanuel Berg
2023-09-07 8:19 ` Ihor Radchenko
2023-09-07 8:39 ` Emanuel Berg
2023-09-07 9:28 ` Alfred M. Szmidt
2023-09-09 1:00 ` Emanuel Berg
2023-09-09 6:25 ` Po Lu
2023-09-09 7:24 ` Eli Zaretskii
2023-09-07 9:31 ` Eli Zaretskii
2023-09-07 9:39 ` Ihor Radchenko
2023-09-09 1:06 ` Emanuel Berg
2023-09-11 0:43 ` Richard Stallman
2023-09-11 12:24 ` Eli Zaretskii
2023-09-11 12:43 ` tomas
2023-09-13 5:59 ` Emanuel Berg
2023-09-12 4:44 ` Gerd Möllmann
2023-09-12 12:25 ` João Távora
2023-09-12 11:31 ` Lynn Winebarger
2023-09-12 13:00 ` Eli Zaretskii [this message]
2023-09-13 20:52 ` Emacs design and architecture (was: Shrinking the C core) Lynn Winebarger
2023-09-13 21:19 ` Christopher Dimech
2023-09-14 6:01 ` Eli Zaretskii
2023-09-15 0:13 ` Richard Stallman
2023-09-15 4:39 ` Emacs design and architecture Werner LEMBERG
2023-09-17 0:43 ` Richard Stallman
2023-09-17 13:22 ` Werner LEMBERG
2023-09-14 5:57 ` Emacs design and architecture (was: Shrinking the C core) Eli Zaretskii
2023-09-14 6:30 ` Emacs design and architecture Gerd Möllmann
2023-09-14 6:38 ` Po Lu
2023-09-14 6:49 ` Gerd Möllmann
2023-09-14 15:03 ` Helmut Eller
2023-09-14 15:30 ` Gerd Möllmann
2023-09-14 16:21 ` Helmut Eller
2023-09-17 0:46 ` Richard Stallman
2023-09-17 13:02 ` Björn Bidar
2023-09-19 10:19 ` Richard Stallman
2023-09-14 16:23 ` Philip Kaludercic
2023-09-14 16:50 ` joakim
2023-09-14 16:30 ` Emacs design and architecture (was: Shrinking the C core) Lynn Winebarger
2023-09-14 16:52 ` Eli Zaretskii
2023-09-14 21:35 ` Dmitry Gutov
2023-09-15 5:50 ` Eli Zaretskii
2023-09-15 6:51 ` Yuri Khan
2023-09-15 7:23 ` Emacs design and architecture Max Brieiev
2023-09-15 7:30 ` Emacs design and architecture (was: Shrinking the C core) Eli Zaretskii
2023-09-15 9:32 ` Emacs design and architecture Gerd Möllmann
2023-09-15 15:52 ` Dmitry Gutov
2023-09-15 18:36 ` Gerd Möllmann
2023-09-15 18:42 ` Eli Zaretskii
2023-09-15 19:19 ` Gerd Möllmann
2023-09-15 22:20 ` Dmitry Gutov
2023-09-15 23:58 ` Emanuel Berg
2023-09-16 6:00 ` Eli Zaretskii
2023-09-17 12:16 ` Emanuel Berg
2023-09-17 14:24 ` Eli Zaretskii
2023-09-17 15:36 ` Emacs design and architecture. How about copy-on-write? Alan Mackenzie
2023-09-18 10:30 ` Eli Zaretskii
2023-09-18 11:38 ` Alan Mackenzie
2023-09-18 12:08 ` Eli Zaretskii
2023-09-18 12:49 ` Ihor Radchenko
2023-09-18 14:27 ` Eli Zaretskii
2023-09-18 15:55 ` Ihor Radchenko
2023-09-18 17:47 ` Eli Zaretskii
2023-09-18 22:48 ` Emanuel Berg
2023-09-19 10:53 ` Eli Zaretskii
2023-09-19 11:14 ` Emanuel Berg
2023-09-19 12:37 ` Ihor Radchenko
2023-09-19 19:21 ` Emanuel Berg
2023-09-20 9:56 ` Ihor Radchenko
2023-09-22 15:50 ` Emanuel Berg
2023-09-22 16:15 ` Ihor Radchenko
2023-09-22 16:22 ` Emanuel Berg
2023-09-22 18:08 ` Eli Zaretskii
2023-09-19 19:34 ` Emanuel Berg
2023-09-20 9:59 ` Ihor Radchenko
2023-09-20 10:22 ` Po Lu
2023-09-20 10:56 ` Ihor Radchenko
2023-09-20 11:11 ` Po Lu
2023-09-20 11:53 ` Ihor Radchenko
2023-09-20 11:58 ` Po Lu
2023-09-20 12:05 ` Ihor Radchenko
2023-09-20 13:35 ` Po Lu
2023-09-20 15:53 ` Eli Zaretskii
2023-09-21 0:55 ` Po Lu
2023-09-21 3:35 ` Po Lu
2023-09-21 7:27 ` Eli Zaretskii
2023-09-21 7:34 ` Po Lu
2023-09-21 8:13 ` Eli Zaretskii
2023-09-21 8:35 ` Ihor Radchenko
2023-09-21 9:59 ` Eli Zaretskii
2023-09-21 10:13 ` Ihor Radchenko
2023-09-21 11:49 ` Po Lu
2023-09-21 23:43 ` Dmitry Gutov
2023-09-21 12:57 ` Eli Zaretskii
2023-09-21 13:12 ` Po Lu
2023-09-21 13:29 ` Eli Zaretskii
2023-09-21 13:35 ` Po Lu
2023-09-21 13:49 ` Eli Zaretskii
2023-09-21 13:57 ` Po Lu
2023-09-21 14:10 ` Eli Zaretskii
2023-09-21 9:14 ` Po Lu
2023-09-22 15:59 ` Emanuel Berg
2023-09-22 16:45 ` [External] : " Drew Adams
2023-09-25 13:31 ` Emanuel Berg
2023-09-19 12:38 ` Eli Zaretskii
2023-09-19 12:57 ` Po Lu
2023-09-19 14:36 ` Eli Zaretskii
2023-09-20 1:05 ` Po Lu
2023-09-20 12:02 ` Eli Zaretskii
2023-09-20 12:09 ` Ihor Radchenko
2023-09-20 12:27 ` Po Lu
2023-09-19 19:38 ` Emanuel Berg
2023-09-20 12:35 ` Eli Zaretskii
2023-09-22 14:22 ` Emanuel Berg
2023-09-22 15:51 ` Eli Zaretskii
2023-09-22 16:00 ` Emanuel Berg
2023-09-22 19:00 ` Eli Zaretskii
2023-09-22 21:14 ` Emanuel Berg
2023-09-22 16:11 ` Ihor Radchenko
2023-09-22 16:14 ` Eli Zaretskii
2023-09-22 16:27 ` Ihor Radchenko
2023-09-22 17:19 ` Emanuel Berg
2023-09-22 16:13 ` tomas
2023-09-19 11:36 ` Ihor Radchenko
2023-09-19 12:34 ` Eli Zaretskii
2023-09-19 13:35 ` Ihor Radchenko
2023-09-19 14:14 ` Eli Zaretskii
2023-09-19 15:15 ` Dmitry Gutov
2023-09-19 15:37 ` Eli Zaretskii
2023-09-19 16:01 ` Dmitry Gutov
2023-09-19 17:54 ` Eli Zaretskii
2023-09-19 20:21 ` Dmitry Gutov
2023-09-20 11:28 ` Eli Zaretskii
2023-09-20 11:38 ` Ihor Radchenko
2023-09-20 14:35 ` Eli Zaretskii
2023-09-21 10:41 ` Ihor Radchenko
2023-09-21 13:26 ` Eli Zaretskii
2023-09-22 10:05 ` Ihor Radchenko
2023-09-22 11:53 ` Eli Zaretskii
2023-09-22 12:49 ` Ihor Radchenko
2023-09-22 13:01 ` Eli Zaretskii
2023-09-22 13:08 ` Ihor Radchenko
2023-09-20 12:21 ` Po Lu
2023-09-20 14:51 ` Eli Zaretskii
2023-09-20 19:39 ` Dmitry Gutov
2023-09-21 4:31 ` Eli Zaretskii
2023-09-21 10:41 ` Dmitry Gutov
2023-09-21 22:21 ` Stefan Kangas
2023-09-21 23:01 ` Dmitry Gutov
2023-09-21 0:41 ` Po Lu
2023-09-21 2:23 ` Adam Porter
2023-09-21 2:53 ` Po Lu
2023-09-21 7:25 ` Eli Zaretskii
2023-09-21 7:48 ` Po Lu
2023-09-21 8:18 ` Eli Zaretskii
2023-09-21 9:25 ` Po Lu
2023-09-21 9:39 ` Ihor Radchenko
2023-09-21 10:36 ` Dmitry Gutov
2023-09-21 10:48 ` Ihor Radchenko
2023-09-21 11:10 ` Dmitry Gutov
2023-09-21 11:17 ` Ihor Radchenko
2023-09-21 11:27 ` Dmitry Gutov
2023-09-21 11:36 ` Debouncing slow mode line constructs (was: Emacs design and architecture. How about copy-on-write?) Ihor Radchenko
2023-09-21 11:56 ` Dmitry Gutov
2023-09-22 10:07 ` Ihor Radchenko
2023-09-22 11:55 ` Eli Zaretskii
2023-09-22 12:50 ` Ihor Radchenko
2023-09-22 13:04 ` Eli Zaretskii
2023-09-22 13:10 ` Ihor Radchenko
2023-09-22 13:14 ` Eli Zaretskii
2023-09-23 10:54 ` Ihor Radchenko
2023-09-21 13:48 ` Eli Zaretskii
2023-09-22 10:23 ` Ihor Radchenko
2023-09-22 12:08 ` Eli Zaretskii
2023-09-22 13:03 ` Ihor Radchenko
2023-09-22 13:06 ` Eli Zaretskii
2023-09-22 13:19 ` Ihor Radchenko
2023-09-22 14:41 ` Eli Zaretskii
2023-09-23 11:10 ` Ihor Radchenko
2023-09-22 12:52 ` Dmitry Gutov
2023-09-22 15:05 ` [External] : " Drew Adams
2023-09-21 13:00 ` Emacs design and architecture. How about copy-on-write? Eli Zaretskii
2023-09-21 13:30 ` Dmitry Gutov
2023-09-21 13:44 ` Eli Zaretskii
2023-09-22 1:29 ` Dmitry Gutov
2023-09-22 10:51 ` Ihor Radchenko
2023-09-22 10:28 ` Ihor Radchenko
2023-09-22 12:26 ` Eli Zaretskii
2023-09-22 13:06 ` Ihor Radchenko
2023-09-22 13:12 ` Eli Zaretskii
2023-09-21 10:03 ` Eli Zaretskii
2023-09-20 19:22 ` Dmitry Gutov
2023-09-21 4:29 ` Eli Zaretskii
2023-09-21 20:24 ` Richard Stallman
2023-09-20 9:47 ` Ihor Radchenko
2023-09-20 14:02 ` Eli Zaretskii
2023-09-21 10:29 ` Ihor Radchenko
2023-09-21 14:02 ` Eli Zaretskii
2023-09-22 10:48 ` Ihor Radchenko
2023-09-22 12:34 ` Eli Zaretskii
2023-09-23 11:07 ` Ihor Radchenko
2023-09-23 11:23 ` Eli Zaretskii
2023-09-23 12:53 ` Dmitry Gutov
2023-09-23 13:01 ` Eli Zaretskii
2023-09-23 13:08 ` Dmitry Gutov
2023-09-23 13:15 ` Eli Zaretskii
2023-09-23 14:09 ` Ihor Radchenko
2023-09-24 0:29 ` Dmitry Gutov
2023-09-23 14:23 ` Yuri Khan
2023-09-23 14:25 ` Dmitry Gutov
2023-09-18 13:30 ` Po Lu
2023-09-18 13:34 ` Po Lu
2023-09-18 13:55 ` Ihor Radchenko
2023-09-18 15:04 ` Eli Zaretskii
2023-09-18 23:41 ` Po Lu
2023-09-19 14:25 ` Eli Zaretskii
2023-09-20 1:01 ` Po Lu
2023-09-20 11:56 ` Eli Zaretskii
2023-09-20 12:13 ` Po Lu
2023-09-20 14:46 ` Eli Zaretskii
2023-09-20 18:50 ` Dmitry Gutov
2023-09-21 4:23 ` Eli Zaretskii
2023-09-21 10:08 ` Ihor Radchenko
2023-09-21 10:12 ` Eli Zaretskii
2023-09-21 10:35 ` Ihor Radchenko
2023-09-21 13:13 ` Eli Zaretskii
2023-09-19 21:37 ` Björn Bidar
2023-09-19 10:20 ` Richard Stallman
2023-09-18 21:38 ` Emacs design and architecture Emanuel Berg
2023-09-16 8:41 ` Gerd Möllmann
2023-09-16 11:02 ` Dmitry Gutov
2023-09-16 11:59 ` Sebastian Miele
2023-09-16 13:00 ` Po Lu
2023-09-16 13:08 ` Gerd Möllmann
2023-09-16 13:25 ` Po Lu
2023-09-16 14:20 ` Björn Bidar
2023-09-16 16:33 ` Dmitry Gutov
2023-09-16 17:07 ` Gerd Möllmann
2023-09-16 17:30 ` Dmitry Gutov
2023-09-16 18:33 ` Gerd Möllmann
2023-09-16 19:18 ` Lynn Winebarger
2023-09-16 20:02 ` Gerd Möllmann
2023-09-16 19:40 ` Dmitry Gutov
2023-09-16 20:01 ` Gerd Möllmann
2023-09-16 23:50 ` Po Lu
2023-09-16 16:24 ` Dmitry Gutov
2023-09-16 23:46 ` Po Lu
2023-09-17 6:08 ` Immanuel Litzroth
2023-09-17 6:43 ` Po Lu
2023-09-17 18:51 ` Dmitry Gutov
2023-09-18 0:11 ` Po Lu
2023-09-18 10:46 ` Dmitry Gutov
2023-09-18 11:12 ` Po Lu
2023-09-18 11:19 ` Dmitry Gutov
2023-09-20 18:35 ` Richard Stallman
2023-09-20 18:59 ` Eli Zaretskii
2023-09-17 23:02 ` Richard Stallman
2023-09-19 18:22 ` chad
2023-09-21 20:26 ` Richard Stallman
2023-09-22 0:31 ` Bob Rogers
2023-09-23 7:13 ` Richard Stallman
2023-09-18 18:48 ` Dmitry Gutov
2023-09-19 23:14 ` Richard Stallman
2023-09-17 23:03 ` Richard Stallman
2023-09-15 23:26 ` Emanuel Berg
2023-09-16 9:09 ` Gerd Möllmann
2023-09-17 7:34 ` Gerd Möllmann
2023-09-17 15:44 ` Helmut Eller
2023-09-17 16:23 ` Eli Zaretskii
2023-09-18 6:36 ` Gerd Möllmann
2023-09-15 15:10 ` Emacs design and architecture (was: Shrinking the C core) Dmitry Gutov
2023-09-15 15:13 ` Dmitry Gutov
2023-09-17 0:45 ` Richard Stallman
2023-09-17 6:31 ` Eli Zaretskii
2023-09-19 10:22 ` Richard Stallman
2023-09-19 14:31 ` Eli Zaretskii
2023-10-12 12:27 ` Richard Stallman
2023-09-13 6:12 ` Shrinking the C core Emanuel Berg
2023-09-05 4:23 ` Arthur Miller
2023-09-06 0:58 ` Richard Stallman
2023-09-06 1:12 ` Emanuel Berg
2023-09-06 5:04 ` Arthur Miller
2023-09-06 11:29 ` Alan Mackenzie
2023-09-06 23:03 ` Emanuel Berg
2023-09-07 7:00 ` tomas
2023-09-07 7:23 ` Emanuel Berg
2023-09-07 7:52 ` tomas
2023-09-07 5:30 ` Po Lu
2023-09-07 6:15 ` Emanuel Berg
2023-09-11 0:43 ` Richard Stallman
2023-09-11 12:05 ` Eli Zaretskii
2023-09-12 23:55 ` Richard Stallman
2023-09-13 6:34 ` Emanuel Berg
2023-09-07 8:51 ` Manuel Giraud via Emacs development discussions.
2023-09-07 9:20 ` Po Lu
2023-09-07 9:34 ` Eli Zaretskii
2023-09-08 2:00 ` Arthur Miller
2023-09-08 7:35 ` Gerd Möllmann
2023-09-09 10:05 ` João Távora
2023-09-08 15:38 ` [External] : " Drew Adams
2023-09-09 11:55 ` Arthur Miller
2023-09-09 12:55 ` Eli Zaretskii
2023-09-09 13:20 ` Arthur Miller
2023-09-10 0:09 ` Drew Adams
2023-09-11 0:40 ` Richard Stallman
2023-09-11 15:10 ` João Távora
2023-09-11 16:12 ` Drew Adams
2023-09-11 20:37 ` Tomas Hlavaty
2023-09-11 21:10 ` João Távora
2023-09-12 19:52 ` Tomas Hlavaty
2023-09-12 20:52 ` João Távora
2023-09-15 8:43 ` Emanuel Berg
2023-09-15 15:35 ` Drew Adams
2023-09-11 21:09 ` Eric S. Raymond
2023-09-12 2:05 ` Arthur Miller
2023-09-12 4:38 ` Gerd Möllmann
2023-09-12 5:48 ` Arthur Miller
2023-09-12 12:07 ` Eli Zaretskii
2023-09-12 12:16 ` Po Lu
2023-09-12 19:58 ` Arthur Miller
2023-09-13 14:39 ` Eli Zaretskii
2023-09-14 11:53 ` Arthur Miller
2023-09-14 13:36 ` Po Lu
2023-09-12 2:30 ` Arthur Miller
2023-09-12 12:15 ` Emanuel Berg
2023-09-12 12:32 ` Emanuel Berg
2023-09-12 19:57 ` Tomas Hlavaty
2023-09-13 0:00 ` Richard Stallman
2023-09-08 17:58 ` Bob Rogers
2023-09-15 21:59 ` Emanuel Berg
2023-09-17 23:03 ` Richard Stallman
2023-09-09 0:39 ` Richard Stallman
2023-09-09 12:50 ` Arthur Miller
2023-09-12 0:27 ` Richard Stallman
2023-08-28 7:45 ` Andrea Monaco
2023-08-28 14:35 ` Arthur Miller
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
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=83cyynpmvd.fsf@gnu.org \
--to=eliz@gnu.org \
--cc=emacs-devel@gnu.org \
--cc=owinebar@gmail.com \
--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 external index
https://git.savannah.gnu.org/cgit/emacs.git
https://git.savannah.gnu.org/cgit/emacs/org-mode.git
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.