Top
Best
New

Posted by celadevra_ 12 hours ago

Two Years of Emacs Solo(www.rahuljuliato.com)
272 points | 82 commentspage 2
hirvi74 11 hours ago|
This might be a paragon of masochism. Though, I am not only beyond impressed. I am beyond jealous as well.

I've been using Emacs since one of professors/mentors converted me over a decade ago back when I was attending university. As the years have progressed, I have found myself reaching for Emacs less and less. I still maintain my config and use it fairly often. I cannot use Emacs at my employer either, so that doesn't help.

However, I have always wanted to do what the author has demonstrated. I would love to be liberated from the all package dependencies I currently have. I just do not have the time nor self-discipline to do something like this. Even if the functionality would be less than or equal parity with 3rd-party packages, I would prefer the Devil I know over the ones I don't.

throwaway27448 11 hours ago||
Why are we so bad at naming things? Modules and packages are so abstract I need to google what they mean relative to the development environment just to move forward.
InMice 10 hours ago|
That's the beauty of open source
gyrgtyn 10 hours ago||
The only reason I'm still using emacs is magit (and muscle memory). I could not make magit myself.
asymmetric 5 hours ago|
For me it’s org-mode. Although now that I think of it, there’s a Neovim implementation I’ve been meaning to try.
fedreg 11 hours ago||
super impressive!! Going to steal some of this lisp for sure
iJohnDoe 9 hours ago||
This guy Emacs!

In all seriousness very impressive and cool. Great information and post.

coolcoder9520 9 hours ago||
[flagged]
shevy-java 6 hours ago||
Poor guy - stuck with lisp on an ancient operating system ...

And no - vim isn't any better either. I always felt that in the emacs-versus-vim debate there were two losing sides.

Antibabelic 5 hours ago||
Perhaps these poor guys possess a secret wealth beyond your wildest imagination. I wouldn't give up Emacs for anything.
gpderetta 2 hours ago||
"a weapon from a more civilized age".
bananamogul 9 hours ago|
If I was going to reimplement Emacs it wouldn't be with Lisp.

Is there some reason Lisp is superior to any other general-purpose programming language for text editing? I'm skeptical because to my knowledge, Emacs is the only major text editor written in Lisp.

drob518 23 minutes ago||
Not specifically superior for text editing, but it has some specific capabilities that make it ideal for making an editing environment. Specifically, it’s great at incremental, dynamic loading of small code snippets. This allows development of Emacs code without having to recompile and restart all the time. In fact, the low-level core of Emacs (buffer manipulation code, regex execution, redisplay, etc.) is all in C. But then those C routines are strung together with Lisp to make up all the high level functionality. Having a dynamic, incremental language is really handy for that. Does it have to be Lisp? No, not necessarily. But Lisp is a great choice.
internet_points 3 hours ago|||
The Lem editor[0] and LispWorks IDE's[1] are implemented in Common Lisp.

Still, the reason for choosing a language for whatever are always more social and path-dependent than technical (reason 1: initial developer of whatever really likes the language, reason 2: language is seen as hip within some crowd, reason 3 (later in the game): management feels language is safe). Technical reasons for choosing a language typically tend to be post-hoc rationalizations. (I mean, no sane person would choose Javascript for an editor based on technical reasons alone, yet here we are.)

[0] https://lem-project.github.io/ [1] https://www.lispworks.com/products/lispworks.html

spudlyo 9 hours ago|||
It's a product of its time. In the mid 70s when Emacs was originally created, the MIT Lisp Machine Project had already been going for a few years, and Lisp was kind of a big deal at MIT's AI Lab, where it was created. When Stallman started GNU Emacs in '85 or so, he took lots of inspiration from Lisp and those systems.

You can think of Emacs as a kind of software Lisp machine with an emphasis on editing. Although that analogy only works well if you squint or if you don't know a lot about Lisp machines.

As someone who first learned Lisp through Emacs Lisp, I found it fun, well-documented, and powerful. Once you grok the basics of how the system is dynamically glued together, infinitely hackable, and self-documenting it's kind of mind-blowing.

0xpgm 5 hours ago|||
A good reason is that Lisp has almost no syntax. So it can act as a neutral language that is easy to learn for developers from other languages.
Barrin92 5 hours ago|||
>Is there some reason Lisp is superior to any other general-purpose programming language for text editing?

purely for text editing? No. But that's not what distinguishes Emacs, it's famously very mediocre at it. The point of Emacs is to be a fully transparent, inspectable, dynamic and changeable environment. In spirit similar to Smalltalk systems like Pharo. And for that a Lisp is not the only choice but a very good one.

There's very few languages and environments that facilitate jumping into any place, making a change, compiling or evaluating a block of code or treating it as data and continuing seamlessly.

bandrami 5 hours ago|||
Because it's very easy to generate lisp code. It's meant for metaprogramming
jimbokun 9 hours ago|||
But if you were implementing it in 1976 you would have.
pkal 6 hours ago||
But in 1976 Emacs was implemented in TECO. In 1984 it was implemented in Lisp, because Multics Emacs _or_ EINE/ZWEI (Lisp Machine editors) were using Lisp as an extension language, which apparently has shown itself to be useful.
beepbooptheory 9 hours ago|||
Lisp calls c in emacs. What would be a better language? The code-as-data, data-as-code paradigm fits nicely imo with everything-is-a-buffer. Things like global namespace, hooks, defadvice, would all feel very wrong in other interpreter, and yet seem to make sense in elisp.
sunng 3 hours ago||
Emacs is like a minecraft of lisp expressions.
jibal 2 hours ago||
This article isn't about reimplementing emacs.

BTW emacs is written in C.