3 ms·
Funny anecdote from an IRC chat I "overheard" today. The chat was for a relatively new GNU command line tool. It was discussed whether it would be possible to
by dark-star 4y ago
Funny anecdote from an IRC chat I "overheard" today.
The chat was for a relatively new GNU command line tool. It was discussed whether it would be possible to detect changes to a file being edited through "outside" programs, before saving. The typical "the file you have opened was changed on disk. Overwrite/Reload/..." question.
It was suggested that they could use inotify for that. A GNU developer responded with "there's no inotify on OpenBSD". Then discussion went to "could we maybe use kqueue there?"
The response from said GNU developer? I quote, and this is not a joke:
"There are plenty of systems without kqueue. Like TOPS-10"
The other developer jokingly said that he didn't know of anyone still using TOPS-10, to which the GNU developer responded along the lines of "Well, I am intending to compile and run this on TOPS-10, so we should use a mechanism similar to what EMACS does to detect those changes, as that is portable to more systems and is equally safe, i.e. race-condition-free"
I'm not sure if the race conditions in the "EMACS way" are actually there or not (I didn't feel like reading the elisp code for saving files), the discussion quickly went to filesystem requirements, NFS and other remote filesystems, etc.
But the fact that they are considering porting to an OS that has been out of (active) use for more than 30 years over using more recent APIs on more modern OS's shows how far in the past they are stuck. And this is only a very recent example that I wanted to share, there are many more such examples if you know where to look (mailing lists etc.). Things like "we cannot change this as SunOS requires this-or-that" and "this will break on VMS" are still things they are thinking about... I mean I get it, backwards compatibility is cool and all, but some things can be taken a bit to the extreme...