3 ms·
Emacs turns disjoint environments, languages, and activities into a (mostly) streamlined system of workflows and idioms. Explaining just how powerful that is t
by mickeyp 7y ago
Emacs turns disjoint environments, languages, and activities into a (mostly) streamlined system of workflows and idioms.
Explaining just how powerful that is to people who don't use Emacs is difficult. People need to sit with you for an hour or so and watch you work to truly appreciate just what that means.
- klik99 7y agoThere's a certain class of programmers tool that requires constant tweaking, like a road bike used in the city - and typically the users suffer from OCD or stockholm syndrome, because they won't stop evangelizing. I thought emacs was one of THOSE types of tools and the initial experience does nothing to disabuse that. On my 4th or 5th attempt to start using emacs I finally decided to get over the hump even if it took weeks of being slow. I'm sure it's the same story for every emacs user - I literally never turned back. And I don't think I've touched my dotfiles in 2 years. But I get why it looks so esoteric from the outside.
- dandelo53 7y agoCurious, can you identify what anything specific that changed the your thinking that it was THAT type of tool?
- michael-ax 7y agoi believe lists of its obsessively chiseled, unique, world-class features would only get contrasted with its pardonable shortcomings as an editor. so, that question is a no go because the thing has a transcendent dimension, it puts you at the heart of the storm, the center of computing where you commune with the gods of our field in perfect calm. once you slay the dragons. best of luck!
- msla 7y agoEmacs is almost infinitely tweakable, but it's also very stable, so your tweaks tend to have long-term value. This seems to go against the grain of most nontechnical software, like Firefox or Microsoft Windows, where there is no stable UI and new versions typically break customizations with no recourse.
- microcolonel 7y agoThe more I use Clojure at work, the more I tolerate the elisp side of things. I've written a couple little major modes (though not to any great standard of quality) and elisp is indeed pretty crap, but usually adequate. I think the ideal Emacs lisp successor would be a Clojure derivative, with the buffer represented as a persistent trie datastructure like other things are in Clojure. Maybe the buffers could be disjointed from the presentation a bit, and we could have strictly AST-driven major modes, rather than the (admittedly quite usable) hack that is paredit.
- Myrmornis 7y ago> Maybe the buffers could be disjointed from the presentation a bit, and we could have strictly AST-driven major modes Yes, good point, agree that would be a very positive direction. > elisp is indeed pretty crap Ah, I've been enjoying it a lot recently :) But I don't have an excuse to write clojure and I certainly recognize that that's a much more sophisticated thing. What are your biggest criticisms of elisp? Mine is basically that the naming of functions in the standard library is terrible. Also: I'm still a bit confused about whether I should be using lexical binding (probably my fault for not thinking about it hard enough); the situation with threading is a little obscure; on the face of it threads in now exist in the elisp API, but are they not fully featured in some aspect?
- microcolonel 7y agoMy main gripe with elisp is the default to dynamic binding, which is in most systems almost never what you want. In Emacs, the dynamic bindings are used for more productive reasons than in generalized programs, but they should still be a conscious choice. When it comes to threads, the elisp datastructures are inadequate because they are mutable. It is possible to write functioning threaded programs with shared mutable state, but for the most part, it is going to introduce the kinds of bugs that people solve one of per week on a six figure salary.
- yyoncho 7y agoUse dash/s/f/ . seq is fine too but dash is pretty much clojure port.
- m463 7y agotramp mode really helps span environments.
- pjmlp 7y agoI used XEmacs during about 10 years, after a teacher in the classroom notice how poorly we were using it, and instead of spending an hour talking about programming in Pascal, it spent the hour teaching Emacs tips and tricks. However, it is no match for modern IDEs tooling.