An Engine For An Editor
https://matklad.github.io/2023/03/08/an-engine-for-an-editor.html
·
A common trope is how, if one wants to build a game, one should build a game, rather than a game engine, because it is all too easy to fall into a trap of building a generic solution, without getting to the game proper.
It seems to me that the situation with code editors is the opposite --- many people build editors, but few are building editor engines.
What's an editor engine? A made up term I use to denote a thin waist the editor is build upon, the set of core concepts, entities and APIs which power the variety of editor's components.
In this post, I will highlight Emacs' thin waist, which I think is worthy of imitation!