For me personally, I absolutely admire emacs - I really do. I used it a few years back when I first started in Clojure before Cursive was around and when it was configured correctly it was absolutely great. >From an engineering POV, yeah, it rocks.
I am sure that for anything I can do in IDE-X I can do it in emacs. The major difference is, and the reason that I no longer use emacs is that IDE-X _probably_ ships it out of the box (or at least is one or two plugins away), and this is very important when you end up re-installing stuff a lot on your machine and co-developers. Yeah, I know, git your .emacs or use one of the curated packs (of which Batsov's is absolutely great), but even after man-months spent tinkering, hunting down the right version on MELPA or MARMALADE (or whatever it is called) I still couldn't get close to what Cursive gives me OOTB. Emacs to me was something that could be absolutely great, but I just ran out of time making it so. Do I feel part of the 'I'm-not-clever-enough-to-make-emacs-work-properly' club - sure :). Emacs is great if you want to build your own editor, anything else is great if you need to work now. On 30 March 2015 at 05:32, Alexis <flexibe...@gmail.com> wrote: > > Bozhidar Batsov <bozhi...@batsov.com> writes: > >> Anti-Emacs stuff really gets to me. > > > i too find it somewhat tiresome. It makes me wonder how many people have > actually stopped and asked themselves: "Given that Emacs seems like a crusty > ancient artifact from The Land That Time Forgot, why do so many people keep > using it?" > > i can't speak for other Emacs users, of course, but here are some of the > main reasons i prefer to use (GNU) Emacs[1]: > > * i don't have to learn and use a distinct, possibly resource-hungry, > IDE[2] for every new programming language or environment i need/want to > work in. (When the Swift language was released, for example, basic Swift > support in the form of `swift-mode` became available within less than a > week.) > > * Further to the resource-usage issue, i can more easily use Emacs remotely > over low-bandwidth links than i could use an IDE. > > * IDEs typically don't allow one to change their basic behaviours whilst > they're running. Related: if there's a bug fix or feature i want applied, i > can apply it myself, rather than having to hope that the maintainers will > (a) accept that it's something that /should/ be applied, and (b) actually > apply it. > > * In my experience, Emacs tends to be less of a 'black box' than some > IDEs, in that i can more easily get a better sense of what's going on > "behind the scenes". This in turn means that i've got a better sense of the > relevant build system, and how to fix and/or tune it in particular > circumstances. > > * Emacs is available for a wider range of platforms than most IDEs, > meaning it's more likely to be available to me should i need to work on a > particular platform. > > * Emacs is the product of approximately three decades of constant > development, such that it handles many corner-cases of many scenarios (e.g. > in the area of i18n) and continues to adapt to new ones. > > * Emacs is, in my experience, one of the best-documented pieces of software > i've encountered. Absent or poor documentation is typically treated as a > bug. > > * The Emacs ecosystem is growing rapidly; http://melpa.org/ currently > lists ~2400 packages ("extensions" or "addons") available for easy > installation via Emacs' package.el UI. > > * Clojure-oriented point #1: since ~80%[3] of Emacs is written in Emacs > Lisp, a lot of work has been put into support for sexp-based languages; cf. > `paredit`. > > * Clojure-oriented point #2: having a polyglot dev system written in an > easily-modifiable Lisp environment makes it more attractive to me as > someone with a Lisp mindset, as per my interest in Clojure. :-) > > Yes, there can be a steeper initial learning curve with Emacs than with > IDEs, e.g. things like 'frames' and 'windows' not meaning what one might > expect (which is hardly surprising, given that GNU Emacs predates the > existence of GUIs-as-standard, and the Web). Yet this is a one-time cost > that, in my experience, is rapidly amortised as one starts to use Emacs in > an increasingly wider variety of contexts. For example: being able to use > CIDER when i wanted to start learning Clojure meant that i could focus on > learning Clojure itself, rather than an entire new dev system. > > Emacs is surely not the best tool for all developers in all contexts, but i > also feel it's something that developers - and Clojure developers in > particular - should perhaps at least give a second look. > > > Alexis. > > --- > > [1] Or Vim, if Emacs isn't an option. Some things i mention here are also > applicable to use of Vim. > > [2] In the /literal/ sense of the phrase, Emacs can indeed provide an > Integrated Development Environment. But obviously, i'm here referring to > highly graphical IDEs such as Eclipse. > [3] According to David A. Wheeler's sloccount(1) run on the Emacs 24.5.1 > sources. > > -- > You received this message because you are subscribed to the Google > Groups "Clojure" group. > To post to this group, send email to clojure@googlegroups.com > Note that posts from new members are moderated - please be patient with your > first post. > To unsubscribe from this group, send email to > clojure+unsubscr...@googlegroups.com > For more options, visit this group at > http://groups.google.com/group/clojure?hl=en > --- You received this message because you are subscribed to the Google > Groups "Clojure" group. > To unsubscribe from this group and stop receiving emails from it, send an > email to clojure+unsubscr...@googlegroups.com. > For more options, visit https://groups.google.com/d/optout. -- You received this message because you are subscribed to the Google Groups "Clojure" group. To post to this group, send email to clojure@googlegroups.com Note that posts from new members are moderated - please be patient with your first post. To unsubscribe from this group, send email to clojure+unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/clojure?hl=en --- You received this message because you are subscribed to the Google Groups "Clojure" group. To unsubscribe from this group and stop receiving emails from it, send an email to clojure+unsubscr...@googlegroups.com. For more options, visit https://groups.google.com/d/optout.