[racket-dev] package name restrictions - why?

2013-07-31 Thread Tony Garnock-Jones
Hi all, Package names are restricted as follows, per the documentation: a package name — a string made of the characters a through z, A through Z, 0 through 9, _, and -. Why does this restriction exist? Programmers never see package names when using (require); Operators see package names

Re: [racket-dev] package name restrictions - why?

2013-07-31 Thread Jay McCarthy
The restriction is primarily because they appear in URLs as single path segments. Jay On Wed, Jul 31, 2013 at 11:50 AM, Tony Garnock-Jones to...@ccs.neu.edu wrote: Hi all, Package names are restricted as follows, per the documentation: a package name — a string made of the characters a

Re: [racket-dev] package name restrictions - why?

2013-07-31 Thread Tony Garnock-Jones
On 07/31/2013 02:11 PM, Jay McCarthy wrote: The restriction is primarily because they appear in URLs as single path segments. Could we then widen the restriction to be [-A-Za-z0-9._~!$'()*+,;=], following http://tools.ietf.org/html/rfc3986#section-3.3 (but disallowing percent-escaping)? I

Re: [racket-dev] package name restrictions - why?

2013-07-31 Thread Matthew Flatt
At Wed, 31 Jul 2013 14:17:18 -0400, Tony Garnock-Jones wrote: On 07/31/2013 02:11 PM, Jay McCarthy wrote: The restriction is primarily because they appear in URLs as single path segments. Could we then widen the restriction to be [-A-Za-z0-9._~!$'()*+,;=], following

Re: [racket-dev] package name restrictions - why?

2013-07-31 Thread Tony Garnock-Jones
On 07/31/2013 02:42 PM, Matthew Flatt wrote: Package names show up in all sorts of other contexts, too, such as filesystem paths. Sure, but if there's something that won't work as a filesystem path, the developer finds that out awfully quickly. Note that the programming language in which

Re: [racket-dev] package name restrictions - why?

2013-07-31 Thread Matthew Flatt
At Wed, 31 Jul 2013 15:02:34 -0400, Tony Garnock-Jones wrote: Finally, there's the question of inference that `raco pkg install' and other tools perform on a string that represents a package source. Keeping the package-name grammar simple makes that inference more predictable. Do you