Scheme package management
Lassi Kortela 25 Apr 2021 15:22 UTC
> I don't think that the package and library namespace should be mixed.
+1. However....
> Nor are library names like "(github.com/account/repo foo qux)" very nice, quite the
> contrary.
If we have generic library name rewriting, we can have our cake and eat
it too.
So (github.com/account/repo foo qux) is just a library name. _Unless_ we
have added a rewrite rule that says to translate any library name part
with slashes into a git repo URL. So this:
(import (from-package "git://xxxxxx@github.com:accout/repo.git" (foo qux))
Could be derived from (github.com/account/repo foo qux) using a rewrite
rule, something like this:
(rewrite-import
(github.com/<acctname>/<reponame> <libname> ...)
(from-package
(string-append "git://xxxxxx@github.com:" <acctname> "/" <reponame> ".git")
<libname> ...))
> And there should be no need to find a single library.
If the library can list its own dependencies, it would make perfect
sense to find only one. The package manager can chase the dependencies
for the user.
> Adding one more indirection makes sense here. Of course, there could be
> a default mapping that will produce your suggested mapping.
Are you thinking of something like the rewrite rule above?