5 ms·
I'we always felt like there should be no file system and no shell but a relational database with a particularly suitable and extensible SQL dialect REPL.
by qwerty456127 7y ago
I'we always felt like there should be no file system and no shell but a relational database with a particularly suitable and extensible SQL dialect REPL.
- joshspankit 7y agoI’m digging this, and up you a graph database, But how would you handle “small-file” cruft? Still have optional “folder” rows?
- qwerty456127 7y agoI can't really tell how do we apply make this idea compatible with the common workflow/model of computing. In my imaginary world everything down to the level of a statement of what is a code file in the real world is a separate record in a relational database, there are no file names and no folders (only tags, commentaries and other metadata). In the real world folder hierarchy is probably inevitable so yes, it has to be stored in a way (in a separate table perhaps so we can have many-to-many relationships sort of what hardlinks do).
- joshspankit 7y agoI’m still with you on the complete reimagining of how a computer stores and accesses ‘code files’, but there’s still a challenge with ‘small files’, which is to say the hundreds or thousands of chunks of code that can have dozens of uses (Plex’s metadata cache, for example, or the hundreds of shared libraries that allow larger more complex programs to be built small by referencing them). One benefit of folder hierarchies (and I don’t think there are many) is that it’s easy to delete/move hundreds of thousands of tiny bits of associated data just by deleting/moving the parent.
- qwerty456127 7y agoI mean using tags instead of folders. You can make a tag that may mean anything and select all files with a particular tag.
- scoobyyabbadoo 7y ago> In my imaginary world everything down to the level of a statement of what is a code file in the real world is a separate record in a relational database, I think you'd like prolog https://swish.swi-prolog.org/example/examples.swinb https://swish.swi-prolog.org/example/examples.swinb
- qwerty456127 7y agoIt's cool, indeed. Nevertheless, besides files which contain sets of logical statements/data, there are pictures, audio and video recordings which are binary by nature. Does Prolog support this kind of data types?
- scoobyyabbadoo 7y agoYes, and you can see a few hundred libraries here https://www.swi-prolog.org/pack/list https://www.swi-prolog.org/pack/list
- felixfbecker 7y agoYou know Bill Gates wanted Windows Vista to use a relational DB for all applications instead of a file system. It was one of the reasons Vista got delayed, because they realised it is just not practical and a security nightmare
- qwerty456127 7y agoI know. This was the first of the 3 times I ever felt good and even eager about a new feature [promised to be] introduced in a new version of Windows. I felt a huge pity it was cancelled. It could have been picked up by other systems (like Linux and Mac) already if it was actually released that time (provided it was engineered well enough to be usable). The second nice thing was the new taskbar (with pinnable app buttons and without text) in Windows 7-10. I've even configured the taskbar in KDE (which I use at home) to the same mode. The third cool thing is cross-app text input autocompletion and correction made available with physical keyboards in Windows 10. Sadly I don't know how to accept a completion suggestion without using mouse, yet the feature already helps me a huge lot (as I write a language I'm not very good at). If not these 3 things I'd be glad to keep using Windows 95, if only there were security&stability updates and current software and hardware support - newer versions of Windows didn't add any other features I would find useful. Everything else (besides internals which have obviously improved a lot) is either bloat or a minor goody. Windows 10 has seemingly added universal file tagging support (previous versions could only add tags to files of some formats which allow injecting them in file body) but as long as Windows, KDE and MacOS don't store the tags the same way (so I could tag files on an external drive using Windows and keep using the tags when I attach the drive to a Mac or a Linux machine) this is of little use for me.