3 ms·
Every program expands until it becomes a compiler or checks mail. Emacs's sin was doing both.
by lallysingh 2y ago
Every program expands until it becomes a compiler or checks mail. Emacs's sin was doing both.
- jpgvm 2y agoAngry upvote. Maybe it's true failing though was stopping short of becoming the OS.
- yjftsjthsd-h 2y agoIt's not its own kernel, but emacs can run on Linux as PID 1, at which point it rather seems like it should count as an OS. Given its affiliation, emacs/Linux probably still counts as GNU/Linux, but still...
- 01HNNWZ0MV43FF 2y agoI say if it's not running as the kernel, it's not an OS. Otherwise you could "boot to" any terminal app. Nano? OS. Cat? OS. Echo? Believe it or not, OS. Good grief.
- randomdata 2y agoWhat we do know is that the S in OS stands for system. A kernel alone does not a system make. There needs to be other components to round out an entire system. Why does Emacs not fit the bill?
- kbolino 2y agoPID 1 has some unique responsibilities. In particular, any process that gets orphaned when its original parent exits is automatically reparented by PID 1, and so the process running as PID 1 must watch for unexpected SIGCHILD and clean up the zombies with waitpid or similar.
- striking 2y agoOne could argue (many have, in the form of a tedious copypasta) that Linux is not the operating system because an operating system needs both a kernel and a userland. Why wouldn't `nano` count as a userland in the same way as anything provided by a typical distro today?
- deleted 2y ago[deleted]
- yjftsjthsd-h 2y agoWell, cat and echo can't run other programs, so no they wouldn't qualify. I'd have to check the nano docs to see if it can spawn other programs, but I'd be shocked if it's any good at it. In stark contrast, emacs can and is good at running programs, including interactively in terminals that it manages itself. I'm happy to agree that the kernel is a big part of the OS, but a kernel alone does not an OS make.
- deleted 2y ago[deleted]
- saghm 2y agoMaybe a potential use case for GNU Hurd?
- lallysingh 2y agoThere are no use cases for Hurd.
- shortrounddev2 2y ago> Any sufficiently complicated C or Fortran program contains an ad hoc, informally-specified, bug-ridden, slow implementation of half of Common Lisp https://en.wikipedia.org/wiki/Greenspun%27s_tenth_rule https://en.wikipedia.org/wiki/Greenspun%27s_tenth_rule
- efilife 2y agoIs this a joke I'm not getting? Any examples of such software?
- steeleduncan 2y agoI think the point is that - you write some piece of software - then you add a straightforward configuration language - then you add variables because you don't want too much copy/paste - then you add if statements to allow conditional configuration - then you add loops because you are sick of seeing configuration that consists of unrolled loops - ... At some point your configuration system is Turing complete, so could be considered a programming language. However it was never designed as such, so it is not a horrible one TeX would be a good example of this. Ansible playbooks are (I believe) Turing complete, and YAML itself has such a huge spec, that if it isn't Turning complete and/or self aware already, I can't imagine it'll be long before it is
- AtlasBarfed 2y agoBut if configuration is the example, a full fledged Lisp program as your configuration is TOO MUCH. Do you want configuration files functioning as malware vectors? And what about Lisp is enduser friendly? Configuration files are intended to address people that are programming-lite to poweruser-not-programmer level. Lisp s-expressions are recursive tree structures with prefix ordering, which is a "great filter" for the IQ of users. Greenspun's law, being a joke of Lisp users, actually indicates the inability of the Lisp community to understand why their language is niche to ultra-high-IQ people. If syntax patterns, formats, and programming languages survive for decades, there is a grassroots practical reason for their existence that ironically the ultra-smart all-knowing Lisp hacker just can't properly fathom.
- bunderbunder 2y agoIn fairness, this is also every modern Web browser's sin.