good morning

On 2010-03-16, at 11:20 , Nikodemus Siivola wrote:
[ ... ]
   (make-pathname :name "foo.tar" :type "gz")
   (make-pathname :name "foo" :type "tar.gz")

are wrought with difficulty.

For Common Lisp these are two non-equal pathnames, so the namestrings
--if they exist-- should be non-equal.

SBCL takes the stance that the first one has the namestring
"foo.tar.gz", and that the second one has no namestring -- another
implementation could take the opposite stance, though I freely submit
that IMO disallowing dots in types is less problematic than
disallowing them in names.


my experience was that sbcl takes the stance that neither one has a namestring.
i endeavored to formulate the tests such that they do not depend on the existence of such namestrings.

The issue with (make-pathname :name "foo.bar" :type nil) is identical.

Cheers,

 -- Nikodemus