6 ms·
IMO any "old enough" and complex enough software suffer some kind of "age&complexity" problems... No matter how you design it, unix choose simplicity and we see
by xte 8y ago
IMO any "old enough" and complex enough software suffer some kind of "age&complexity" problems... No matter how you design it, unix choose simplicity and we see that today no real unix exists anymore (yes, they do exists per name, but in fact they do not follow unix principles), ITS, Emacs, LispM, Alto, ... choose integration and completeness and except Emacs they are essentially dead... Modern software try to choose modularity and if you find a modern complex enough software you know well how messy pachyderm is...
Personally I choose (recently) Emacs as my main computing environment because even with it's many problems (there are and recent evolution solve some and add others) it's the most effective computing environment I have ever found.
So in conclusion I dream a "modern Emacs" with an EXWM that play nice with any kind of GUIs (it gets a bit worse recently for floating windows or floating windows apps change for the worse I do not know exactly), I dream a damn coherent and complete MUA instead of my actual super-spaghetti-code mess mix of mbsync+notmuch+afew+homegrown crappy scripts + ... just to have a damn good modern and efficient email solution NO ONE, web(cr)app(y) UIs included seems to provide... I dream a GuixSD in org-mode in my own personal config so I have an "my_desktop.org" that contain anything from OS to Emacs config and I can export, change, replicate it in a snap... But that's a bit of a dream for now. New nice stuff arrive (doom modeline is really nice, for instance) but change the entire ecosystem, perhaps re-writing it in Guile Scheme... Well It's unlike to happen more than a timid POC by few smart guys...
- benj111 8y agoI'm trying to parse your first paragraph. Isn't Unix entirely about modularity? And I suppose you could argue that emacs is a (os like) substrate that enables modularity on top of it. Theres an old joke, emacs is a nice OS, only lacking a decent text editor. Or are you referring to the actual code itself?
- jrockway 8y agoI think he's just saying that the Unix philosophy of hundreds of different programs that communicate with pipes lost out, for him, to everything in one address space communicating with data structures, which is what Emacs is. Emacs was derided for being the anti-Unix. It's a text editor... but it has a shell, and a calendar, and reads email? CRAZY. WRONG. But in reality, the Unix way is showing its age and Emacs was a solution ahead of its time. Emacs as a computing environment is remarkably consistent across platforms. Say you write code, commit to a git repository, and run shell-like commands. Your Windows computer will look exactly like your Linux box if you use Emacs with magit and eshell for those operations. I personally kind of fell out of using a lot of Emacs's extras, and am constantly cursing the inconsistency between platforms. But, to some extent, Emacs has failed even in that regard by depending a little too much on the host OS. As far as I can tell, there is no binary I can download for Windows that will let Emacs spell check anymore; the last time someone compiled aspell was in the early 2000s and the latest version of Emacs explicitly checks for that binary and tells you you can't use it, providing no alternative. The failure is not in packaging this for Windows, of course, but rather in allowing the OS to provide the spell checker. That should just be a lisp package! But alas, it is not. (You will also find this in other things. M-x rgrep is a favorite of mine on Unix-like systems. But on Windows, find.exe is not quite the "find" that find | grep is looking for, and it's kind of a pain to get your path setup to find the Unix version of find while in Emacs, and still let native windows programs get find.exe included with Windows.) However, for those ambitious enough to decide to implement the functionality in pure Lisp... you get "write once run anywhere" which is quite enjoyable. (And was a thing before anyone ever coined the phrase "write once, run anywhere".)
- xte 8y agoWell... Unix bring the idea of being a "base platform" for third party software using simple IPC as a way to integrate any different kind of software. This work well in many case, but can't really scale so I consider UNIX model as a good model for "embedded devices" nothing more. Today's unix, only with X prove that unix model does not exists anymore. Emacs bring the idea that there is no real distinction between application, OS, data whatever, we need a completely integrated computing environment that act "uno animo" easy bent and build for anyone by anyone. This works really well, but in academia, so in a super-slowly evolving environment because the level of complexity needed to realize such idea in practice is so high that's demand decades only to create a desktop... That's why Emacs while keep evolving and even after decades it's still on the scene, it shine or better as someone say it outshine other software like the sun outshine night stars, but it suffer it's own architecture being nearly unable to really radically evolve... I hope for a distant future with a GuixSD OS, perhaps based on Plan9 (more interest IMO than Hurd), that boot directly into Emacs instead of a shell and anything is done with Guile Scheme so I can really see and use a LispMachine in the present (future) but it's a dream I do not really think it can ever arrive...
- anthk 8y ago- GuixSD is writting a Bash replecement shell based on Scheme =) - About Unix and Emacs, I like both approach, but Emacs tends to locks itself pretty often. Now, if there was an Acme-like editor without mouse chord and Vi keys, it would blast anything. Emacs has google-translate-at-point, I, myself, just use xsel on the clipboard and pipe it automatically to translate-shell. A cwm keybinding, and I get a translated text on a popup.
- sedachv 8y ago> I, myself, just use xsel on the clipboard and pipe it automatically to translate-shell You can do SHELL-COMMAND-ON-REGION (M-|) and get the output in the echo area.
- xte 8y agoSorry for my English, I'll try to be clear... > Isn't Unix entirely about modularity? No, unix goal is to provide a minimal "platform" that third party software may use as a "detached" base and interoperate via a simple, small and common IPC mechanism. Unix is essentially like a wagon to support any kind of boxes/pallets. LispM, Alto workstations, ITS, Emacs do the opposite: the OS must not be for them a platform with a very basic set of API/IPC any software can use but a sole, single, integrated environment in witch any software live inside like a complex machine. Unix was a success being simple because at that time using "unix-hater's OSes" was expensive, hard, to a point that you are totally tied to specific hw and you have to know many things to develop even a super-simple software. After however unix prove to be unable to evolve. Third party "giant frameworks" became a common thing, X with it libs etc is the most common example. Basic subset of functions and IPC can't compensate. We do not develop ANYTHING serious anymore after that, Plan9 was probably the last tentative but never get completed enough... I consider actual Emacs such as a small way to keep LispM alive, that suffer enormous limitation of not having hardware, bootloader a kernel to be a real OS however in today's tech status it offer the best way to operate on a desktop: everything is integrated through the most common things we know, text. It's status prove that idea is valid but so complex to accomplish completely that's practically failed. We simply can't sustain economically a LispMachine today. Hope to be more clear now...
- benj111 8y agoI think what you're saying is, is that modularity at the level of the library is what succeeded? Rather than at the process /syscall level, or in process level. To borrow your analogy. Pallet/shipping containers are modular(they won). Individual boxes and container ships, less so. I can get behind that. I'm not sure that's the absolute best way. Although as I write this, I'm reminded of the web browser I'm writing it in. Is it not more emacs than emacs?
- xte 8y agoHum no, being "platform" for independent communicating software succeed at first (unix), after reach it's limit and it now appear clear that ancient idea pre/against unix of "fully integrated environment" in witch "programs" are only a module/code inside the "big" environment/framework succeed, unfortunately only partially because complexity it's too high to evolve it properly at "modern speed"... So we do not have now nothing that can really work at a scale only various horrid, hard to maintain and future-less hybrid solutions like Windows, GNU/Linux, AiX, HP_UX, True64, ... ... On today's web no it't certainly nothing like Emacs. In Emacs YOU have the full control of your environment, in modern web you only think to have a certain control but in the reality you are a powerless puppet of few giants companies... The sole similarity is the concept of hypertext itself that offer a kind of integration similar to Emacs one, but it's similar at a very superficial level because in Emacs it's integrated anything, not only the presentation level. In Emacs you can modify your software at runtime during normal use, not only link/integrate any text around your documents :-)
- agumonkey 8y agoif you read emacs/lisp mailing list, people were already crying about the vast difference in capabilities, ergonomics, ease of use.. saying that emacs was really really below what lisp machines editor would offer. Not even talking about the near fully reflective OS. Can't find the newsgroup url yet. But still it seems that we are far from peak even 30 years after these systems died. There's a smalltalk/pharo mooc online, it was also pretty telling how a single system can offer cohesiveness and peace of mind. I'm not extremist against unix way of things but it's a duty to try other systems (maybe oberon, or even amiga os) to see what can be done differently. Otherwise we live in a local optimum blur.
- xte 8y agoI've read in the past Unix Hater's handbook, but I'm to young to have ever used LispM... I only see very few demos and feel Emacs like a poor's man remnant of them. I do not really know how much we lost. However, for a rare circumstance my first computer was a decommissioned SGI O₂ donated by family friend so I have the privilege of having use SGI CDE as my first desktop environment and growing up I see how much we lost, even in PC case vs what I call "normal" well designed case with easy access and proper components and cables pass layout...
- agumonkey 8y agoI never used LispM either, and the newsgroup I mentioned had messages from people that weren't even lispers but got their hands on one lisp machine and they had to admit there was something. That's the way of the world, things wave off, we follow along, unix won, wintel won, but that doesn't mean they were absolutely better, nor that we can't bring other good stuff from the past. We just have to keep an open mind.
- xte 8y agoI'll try to look for them :-)
- anthk 8y ago> I have the privilege of having use SGI CDE as my first desktop environment and growing up I see how much we lost, Not much. IceWM was already ahead of MWM, and Synaptic was almost a clone of the SGI graphical package manager. I mean, DFM and IceWM were good enough. No vector icons, but the usability was many times better than you think. CDE was overrated. MS inverted LOADS of money in order to generate an easy interface. The W95 one is basically a clean TWM iconbar one. And no one realized that that setup was many times better than Windows 3.1 . A shame.
- anthk 8y ago>code mess mix of mbsync+notmuch+afew+homegrown crappy scripts Alpine and MUTT support IMAP just fine. Even s-nail supports it.
- xte 8y agoI'd like to have my mail on my computer, so a local maildir... In the past I've used pine and tried neomutt, while far better than classic Thunderbird/Evolution etc I do not feel much at home with them... I'm at home now with my mix however even if it works really well and far better than any other things I tried it's still too complex for many people and that's not good because we need to attract young people to keep and feed the community instead of having all drooling behind the latest web(cr)app from one of the few supergiants... Sometimes I do some talks about GNU/Linux mostly at my ex university and high school, normally people see a bit astonished and attracted my "dancing screen" with Emacs, they are willing to replicate at least part of my setup, they are willing to learn. But too many simply try and after few time quit in frustration because it's simply too long and complex for them. Of course I know that good things can hardly be "for everyone" but we can provide better defaults. I've tried to give a sanitize personal config, it was a regular failure because few MELPA packages randomly disappear or fail to being properly auto-installed. I end up to give pre-made tarballs with a quick linking script and certainly that's not much a good business card especially if there are more and more few teachers that teach FOSS stuff and more and more books and lecture note that feel NO shame in suggesting proprietary software...