12 ms·
> as a preserved island of fun and "hacking for the sake of it" Somehow this sentiment is anything but fun to me. Emacs is the last bastion of a different path
by tazjin 5y ago
> as a preserved island of fun and "hacking for the sake of it"
Somehow this sentiment is anything but fun to me. Emacs is the last bastion of a different path down the tree of personal computing than the one our species took, one in which individual users are empowered and not - as is now the case - held hostage by us[0] in our ivory towers of impenetrable layers of cryptic technology.
Emacs was made for humans to use as a real tool. Barely anything else in the tech world really qualifies to the same degree. I'd love to peek into the parallel universe where we stuck to introspectable, malleable software and ended up with something closer to the Houyhnhnm computing stack[1]. Alas, for now that ship has sailed.
See also: That old story about Emacs at Amazon, etc.
[0]: "tech people"
[1]: https://ngnghm.github.io/ https://ngnghm.github.io/
- poidos 5y agoGot a link to the Emacs Amazon stuff?
- tazjin 5y agoIt's part of a larger post by Steve Yegge[0], of which you can find a copy here: https://sites.google.com/site/steveyegge2/tour-de-babel https://sites.google.com/site/steveyegge2/tour-de-babel Look for the heading labeled "Lisp" or just search for "Emacs" and you'll find the relevant bits :) [0]: https://en.wikipedia.org/wiki/Steve_Yegge https://en.wikipedia.org/wiki/Steve_Yegge
- 70rd 5y agohttps://archive.is/isH3s https://archive.is/isH3s I believe this is the reference.
- zozbot234 5y ago> Emacs was made for humans to use as a real tool. If Emacs was made for humans, why do so many humans get painful RSI trauma ("Emacs pinky") when they try to use it? How many humans can code in something as clunky as EmacsLISP?
- Naga 5y agoNo one is saying emacs is perfect, this is such an odd comment. Just because it is made as a real tool, as opposed to a product or something to sell more of, doesn't make it perfect. Table saws are meant to use in productive behaviour too and the fact that people cut their fingers off doesn't make them less of a real tool.
- throwaway292893 5y agoNot a great analogy. Table saws try to prevent you from cutting your finger with flesh-detection saw stops. Wouldn't hurt emacs to change the default keymap, just like it didn't hurt table saw manufacturers like SawStop or Bosch to include safety mechanisms, it helps.
- pmoriarty 5y ago"How many humans can code in something as clunky as EmacsLISP?" Apart from some legacy warts, I find eLisp about a million times more elegant than mainstream languages. Scheme would be even better, and hopefully one day emacs can transition to that.
- dan-robertson 5y agoAgree. Emacs lisp is crappy for silly reasons—archaic names and lack of complete or consistent standard library, but I think the language fundamentally gets a lot of things right, especially for the domain of a user-customisable text editor. Quick comparison to some other languages: - vimscript: lol - JavaScript: the lack of dynamic scoping may be tricky for extensibility, and not having macros is a shame (eg save-excursion and friends). But the language is mostly reasonable. One interesting aspect of elisp is that functions are typically just the symbols of their names, so it is easy to inspect and modify lists of hooks. I also worry about the pervasive use of modularity constructs like IIAFs—a great feature of elisp is the ability to poke and advise other code - C or Rust: I think it is too hard to do something small or hacky in these languages and the constraints of type systems and manual memory management make ad-hoc extensibility hard. I’ve also seen emacs (module) extensions written in a strongly typed functional language and they sort of work but can be fragile (eg advising a function but making incorrect assumptions about their types), or needing to use functions and closures for common operations like switching buffer or saving and restoring state. (It also amazes me that more languages don’t have unwind-protect and predictable evaluation order as standard, but that’s another topic)
- PaulDavisThe1st 5y agoThe "emacs amazon" link makes at least one false claim: > The original brilliant guys and gals here only allowed two languages in Amazon's hallowed source repository: C and Lisp. There actual originals (i.e. when it was two people) only allowed C++. There was no Lisp, and no C, although the C++ was a fairly limited subset that was perhaps midway between C and "full C++94". Then it compounds this error, makes another: > they didn't allow C++ here, and they didn't allow Perl. (Or Java, for that matter). They knew better. Numerous early Amazon utilities were written in Perl. I know because I wrote them. Yegge is entitled to his various views on different languages. But revisionist history about the early development at Amazon is not OK, even when in defense of Emacs, a noble cause if ever there was one.
- rejectedandsad 5y agoThe site still uses Mason heavily in parts….