On 10/11/2015 01:11 AM, Przemysław Wojnowski wrote: > Hello everybody, > > Recently I was going through Emacs C code and immediately one thing come > to my > mind: "Did anyone consider rewrite it a more maintainable language?" :-) > > Did anyone consider pros/cons of having base code in other language? > AFAIK maintenance cost of C code is pretty high, because the code is > tangled, > has no tests and the language has its limits (e.g. no namespaces, no > abstractions, etc.). Maintaining that and adding new features will be > harder > and harder. As others have pointed out, most of Emacs is written in Emacs Lisp. As for the rest: a common understanding among a certain crowd these days is that C is a broken, legacy language that nobody really understands. But the operating system kernel and window system you used to compose your message are a giant C programs. Linux and Xorg are blasphemies against hipster software engineering. Both generally work fine, as does Emacs. The Emacs C core isn't going anywhere. You're welcome to try to rewrite it, but if C really were such an albatross, I'd expect at least one of Hemlock, JEmacs, Ermacs, Ymacs, Climacs, or EdWin to have become a viable contender by now. Yet here we are, talking about GNU Emacs. We can improve the Emacs core by making it less "tangled" (e.g., abstracting away frame functions so that we can support more than one window system) and by writing better tests for some of the hairier bits of functionality (e.g., the recently-broken syntax engine). These potential improvements have nothing to do with language choice. I'd rather people focus on fixing long-standing problems and adding new features than satisfying some aesthetic impulse by reimplementing the same old functionality in a new language.