Am Mo., 27. Apr. 2020 um 18:15 Uhr schrieb Lassi Kortela lassi@lassi.io:
[...]
I'd advocate focusing on web URLs and only supporting other types if that falls out naturally from the overall design. There are now tens of thousands of hosting sites where anyone can get their own web URLs for free, both conventional GeoCities-style webhosts as well as social sites like GitHub that give everyone a github.com/username.
Do we want advertising for commercial services in library names in Scheme?
Of course, if a library name part can be a URN (Uniform Resource Name, https://en.wikipedia.org/wiki/Uniform_Resource_Name) that's one way to solve the problem. We can do the same thing we did for Unisig (https://github.com/unisig/unisig) where the default URI scheme is whatever protocol is the most popular way to transfer web pages at any given time (previously http, now https, in the future http/2 or something else).
To encode a protocol in library names is crazy if you ask me, especially because the most popular protocol changes over time as you write. But without the protocol, we don't have URLs anymore.
I'd recommend simply not using any fancy URLs. A simple "foo.com/bar/baz" with lowercase [a-z0-9], dash, slash, and dot ought to be enough for almost everything.
I guess that most R7RS systems will map the library `(foo.com/bar/baz)' to the same file system location as `(foo.com bar baz)'. To me, this shows some flaws in the approach.
To use the example from above, GitHub may distribute a library `(github.com hacker foo)' under this proposal. Mr. Hacker owning a GitHub account wants to distribute `(github.com/hacker foo)'. This won't work without a clash.