Some ways back I was watching an interview of John Wiegly that Sacha Chua posted (see here) and something he said gave me pause so much so that I had to stop the recording. To quote directly:
I do prefer Emacs Lisp. I have to tell you that probably of all the languages I’ve used, definitely, Emacs Lisp has been the most fun.
This didn’t compute. My experience with lisp was at best a bad run-in. It consisted of a single class in a computer science university comparative languages course I took followed up with a solitary assignment which I can’t remember the specifics of. I do remember that what I coded was mostly correct but some how dyslexia seemed to repeatedly kick in on placement of brackets so much so that what should have been a relatively simple exercise took much longer. I came away with a bad first impression that the language was arcane and obtuse despite the incredible flexibility it was purported to possess.
In the interim between then and now I vacillated between a number of nondescript editors and emacs mixed in with occasionally bouts of vi/vim. I’d always think the latest and greatest editor would be the final panacea only to be disappointed and revert back to emacs. Once I discovered org-mode all other editors became much less compelling. Despite using emacs on the regular basis and taking the opportunity to automate much outside of the editor I still dragged my heels when it came to better harnessing the possibilities that one is afforded once lisp is mastered.
When I get perplexed about code inside my .emacs file I learn just enough to find out how to fix what I’m interested in. Afterwards I promptly seem to forget everything until the next problem arises. I’ve been meaning to learn emacs lisp but there always seems to be something more important or pressing.
But immediately after hitting the pause button on the Youtube interview, I thought why wouldn’t it be fun? Emacs is pretty much self contained with embedded help, open source code that you can look at for many multiple examples, newer lisp variants you can pick up easily once you master emacs lisp (thinking clojure here) and just the pure joy of automating pretty much everything or anything within the considerably large context of emacs.
There’s also the corroborating experience of Yukihiro Matsumoto the creator of the Ruby language and how he was deeply influenced by emacs (see here). Much of what is mentioned in the latter link resonates with everything I’ve experienced using emacs.
Clearly to take emacs to the next level, you’d have to learn emacs-lisp and what isn’t fun about modifying your working environment to suit you and not the other way around.