[plt-scheme] planet require idea
On Thu, Mar 20, 2008 at 1:06 PM, Jacob Matthews <jacobm at cs.uchicago.edu> wrote:
>
> I chose the syntax I did because it reminds me of the syntax one uses
> for specifying a path on a remote machine with scp; I suppose that's
> kind of an idiosyncratic choice though. I definitely think the
> major.minor syntax looks good, but what would the more advanced
> minor-version selectors look like? 3.>=5 looks a bit messy to me.
>
> One potential way to do it would be to introduce brackets:
>
> owner/package:1/path
> owner/package:1.5/path
> owner/package:1.[<=5]/path
> owner/package:1.[>=5]/path
> owner/package:1.[3-7]/path
>
> This would make the versionless spec look like:
>
> owner/package:/path
>
> which looks a bit ugly, but that's fine with me because I think people
> shouldn't generally specify packages without at least a major version
> anyway.
Brackets in what's supposed to be a non-sexpression format is
counterintuitive, possibly problematic. Also, there's no reason to
keep the colon when not using a version number. And I agree that
period is weird-lookin' when using <= and friends. So how about:
owner/package/path -- versionless
owner/package:major/path -- major-only
owner/package:major:minor/path -- major and minor
There are no more colons than necessary at any point, and (to pick an
example familiar to me):
robby/redex:4:<=4/reduction-semantics.ss
doesn't look so bad (at least better than "4.<=4").
--
Carl Eastlund