[armedbear-devel] Proposal for URL to be used as Pathnames

Mark Evenson evenson at panix.com
Mon Mar 29 09:07:33 UTC 2010

On 3/28/10 5:26 PM, Alan Ruttenberg wrote:

> The reserved characters are scheme specific. I'd suggest that there be
> a generic function eql dispatch on the scheme to compute namestrings.

Since URL handlers can be added at runtime, which is the case with the 
OSGi handler for the "bundle" scheme that we are interested in 
supporting, we can't make an EQL specializer ahead of time for 
everything we will encounter.  I was hoping to use the Java 
implementations of the URLStreamHandler for the schemes help out here, 
but I don't see much.  At the moment I'm favoring just implementing such 
a specializer for "http" and "bundle", creating a protocol for a user to 
add a specializer, and calling it a day.

Do we want the namestring to always be the encoded form?  I was planning 
to have the namestring be what the user used to create the URL-PATHNAME, 
but always encode before going to the network.  I need to think about 
this more.

> Will the logical pathname system interact with URL pathnames? I'm
> thinking I could probably make use of the analogy between prefixes and
> logical hosts.

By prefix you mean schemes like "http" or "ftp" right?  I was currently 
planning to have URL pathnames explicitly not be allowed as logical 
hosts, because if one defined a logical host named "http", one could 
then never unambiguously construct an "http" scheme URL via 
#P"http://example.org/foo.lisp".  We could require that a logical host 
*has* to be in upper case?  In that case, I guess the two could co-exist.

Could you give an example of the sort of logical pathname definitions 
you would use?  Incorporating something like wildcards for the URI 
authority is going to need some thought, but wouldn't be impossible.

"A screaming comes across the sky.  It has happened before, but there
is nothing to compare to it now."

More information about the armedbear-devel mailing list