[armedbear-devel] Fwd: Bugs(?) in pathnames
evenson at panix.com
Wed Feb 1 08:28:27 UTC 2012
[Forwarding message for errors with Pathnames that didn't seem to make it to the list]
Begin forwarded message:
> From: Mark Evenson <evenson at panix.com>
> Subject: Re: [armedbear-devel] Bugs(?) in pathnames
> Date: January 28, 2012 14:33:41 GMT+01:00
> To: Theam Yong Chew <senatorzergling at gmail.com>
> Cc: armedbear-devel <armedbear-devel at common-lisp.net>
> On Jan 27, 2012, at 12:46 PM, Theam Yong Chew wrote:
>> Hi devs,
>> I've observed a few issues (some I'm not so sure about) with pathnames:
>> CL-USER> (make-pathname :device '("c:/a.b.jar")
>> :directory '(:absolute "cl-ppcre"))
>> ; Evaluation aborted on NIL.
> We probably expect the serialized form to be in canonical form
> ("file:///C:/a/b.jar"). We can loosen this a bit. Wrap a local
> handler on the execution: the full Common Lisp condition system
> should be available.
>> Why am I not getting any errors (and not dropping into a debugger)? I
>> know the error is because the device is not a list of a pathname ie
>> missing a #P.
>> 2. What's printed out is not what was read in (trailing /)
>> CL-USER> #P"jar:file:c:/a/b.jar!/cl-ppcre/"
> We attempt [c8n]() (via the notions in the various URI/IRI specs)
> here: does it EVAL again to the same string? Then that's the
> serialized form, locally. Otherwise, this is a bug.
> [c8n]: http://en.wikipedia.org/wiki/Canonicalization
> Liberal use of the #P operator locally is advised, as it also gives the
> compiler a better chance to optimize.
>> 3. Should this repeated jar:file:jar:file thing throw an error?
>> ==> #P"jar:file:jar:file:c:/a/b.jar!/cl-ppcre"
> Such forms should probably be illegal for abcl-1.1-dev, and should not survive attempts
> to introspect their validity. I'll clarify as part of the abcl-1.1
> release, probably refactoring org.aremedbear.lisp.Pathaname into a
> protocol description (where I can check constraints a bit easier).
>> I think that was all I found, at least for now :-), thanks.
> Thanks for using!
More information about the armedbear-devel