Using Emacs in 2020

My thoughts on using Emacs in 2020 - especially on how I leverage it to write Clojure

May 5, 2020

cool light art

Well it’s been almost a year since I “started” this blog and to be honest, I can’t say that it’s been off to a very good start.

The last year has been stressful in many different ways, personally and professionally. I’ve changed jobs, struggled with understanding what I want to do with my career and tried to come to terms with reality.

But scratch all that. It’s time to talk about Emacs.

Thousands of people have probably started off blog posts that way. And with good reason. Emacs has plenty of material that is worth talking about. But darn it if I’m going to let a well-trodden road discourage me from putting my own thoughts out there.

So. Emacs in 2020. I’ve been having flashes of inspiration to learn a Lisp for a while now. There’s just something … intriguing about them. The foreign syntax, the hushed whispers of parenthesis hell, meta-programming, macros… The list goes on. Coming from an imperative programming background, these concepts seem pretty foreign but also exciting.

But maybe learning a language just for those reasons isn’t good enough.

You have to justify it with more concrete reasons. You need to conduct a serious analysis on the pros of cons of the language, understand it’s ecosystem, it’s power, if any well-known companies are using it.


You can just pick something that you saw on Hacker news once and run with it.

That’s how I landed on Clojure. This is not to say that Clojure doesn’t stand on it’s own merits as a programming language. It does. Wait. Maybe it’s too early to say for me. After all I’ve only been learning for a few days now.

Anyway. Once I picked Clojure, the next obvious question is what do i write Clojure on.

Since Clojure is a Lisp, I figured I should pick an “editor” (part of the mythology of Emacs is that it’s not just an editor but we’ll get to that later) that was built with and for lisps. And that would be Emacs.

So what makes Emacs a good text editor: