News for hackers. Stuff that matters.
Re:GNU/Hurd strikes back: How to use the legendary OS in a (... by PaulDavisThe1st on Monday August 07, 2023 @05:25PM (#37041171)
Oh please do, because what really screws up filesystem implementations is the language they're written in.
Re:GNU/Hurd strikes back: How to use the legendary OS in a (... by meepmorp on Monday August 07, 2023 @05:46PM (#37041401)
It's a good thing that you warned them off, or they might've accidentally gone and done something interesting or enjoyable.
Re:GNU/Hurd strikes back: How to use the legendary OS in a (... by serf on Monday August 07, 2023 @06:25PM (#37041795)
I think it's a great project to tackle.

Here are my criticisms :

1) LoC doesn't indicate complexity. When you're looking at a code base and you see that it's 65000 lines, that by no means should be an indicator of whether or not a re-write is easily feasible -- especially with a filesystem.

2) Language shouldn't be a motivator for a re-write without considering why the language offers advantages, the end users don't care about which file extension is littered across the source tree.

Both of those tendencies (one to re-write everything in your favorite language, and two to come across with an idea that you understand how complex a mechanism is simply from LoC) indicate to me, anecdotally of course, a certain lack of experience; and I have a hard time imagining someone with those concerns tackling a re-write of a filesystem that gains 'the audience' any benefits.

If it's just for the sake of personal toys and fooling around with your own machine I feel as if those motivations are fine, but I have concerns if 'a new filesystem in Rust' comes from what I view as shaky initial motivations.

Re:GNU/Hurd strikes back: How to use the legendary OS in a (... by PaulDavisThe1st on Monday August 07, 2023 @05:58PM (#37041523)
Yep, because everyone who is going to do something interesting or enjoyable starts with the question "should I use language X because it's cool?".

Look, I'm as into cool FS-hacks as anyone, but writing a new filesystem has 99+ problems and the language used is either the last of them, or it isn't even in the set.

Granted, you could (on Linux) write a little pseudo-filesystem (e.g. /proc or /sys) and not face any of the issues involved in extN or btrfs etc. I didn't get the sense that this was what the OP intended, but I could be wrong.

Re:GNU/Hurd strikes back: How to use the legendary OS in a (... by Paul-Craft on Tuesday August 08, 2023 @03:20AM (#37045604)
Writing a basic filesystem using FUSE is pretty simple, fun, and can occasionally be useful.
Re:GNU/Hurd strikes back: How to use the legendary OS in a (... by Gibbon1 on Tuesday August 08, 2023 @03:49AM (#37045819)
I frankly don't understand why he doesn't realize that the borrow checker is just the thing to prevent all the bugs you can have with a file system implementation.
Re:GNU/Hurd strikes back: How to use the legendary OS in a (... by Paul-Craft on Tuesday August 08, 2023 @04:20AM (#37046033)
All the bugs? I doubt that.

Many of the worst bugs (data loss and corruption)? Probably.

Having something like the Rust borrow checker around to make sure you don't make dumb mistakes is handy, to be sure. But, let's not oversell it as some kind of panacea. I bet I could write a FS in Rust with all kinds of bugs, and the borrow checker wouldn't be able to stop me.