Redox: a Rust-based microkernel
Redox: a Rust-based microkernel
Posted Apr 14, 2016 9:16 UTC (Thu) by farnz (subscriber, #17727)In reply to: Redox: a Rust-based microkernel by nix
Parent article: Redox: a Rust-based microkernel
The other problem with URIs is that they are a universal (and hence unambiguous) identifier that needs no additional context to interpret correctly. Great for computers, but horrible for humans; we seem to universally prefer shorter context-dependent identifiers[0] - so, for example, "Mark" is a perfectly clear identifier for a single unique individual in context, and yet, depending on context, you could be referring to Mark Shuttleworth (plausible in an Ubuntu setting) through Mark Twain (plausible in a literary setting) through Mark the Evangelist (Christian church). A URI can't deal with that - the context has to form part of the URI so that it's a universal identifier.
In that respect, filesystem paths are better - they're not universal, and thus it is reasonable that ls can refer to (depending on context) ./ls, or /bin/ls, or ~/bin/admin-help/ls, or even /usr/bin/ls on your machine instead of mine. Further, we have tools (like search paths, current working directories, aliases, chroots, bind mounts, symbolic links etc) that allow you to define your own context for a given filesystem path.
[0] Think pronouns and other pro-forms in natural language - I can't find evidence of a natural language that doesn't have any pro-forms at all, nor can I find one where it's completely unacceptable to use an ambiguous identifier and rely on context to resolve it.
