[asdf-devel] patch for component-relative-pathname

Faré fahree at gmail.com
Fri Feb 19 20:19:22 UTC 2010


> 2.  SPLIT-PATH-STRING --- this is the one I think might need a ticket.
> I confess I'm bamboozled by this one.  It's called on (component-name
> component), not on a pathname.  Can you explain why the COMPONENT-NAME
> would end up being a string that looks like a pathname?
>
> This SPLIT-PATH-STRING stuff looks like a relatively recent gwking
> addition (if I understand the output of git blame correctly).  I don't
> see what use case it was introduced for.  Anyone else have a clue?  I
> see this docstring for component-name:
>
gwking might have done the checkin, but I am the one who wrote the code at ITA,
where we wanted to be able to use "foo/bar" as the name of a component,
instead of having all those ugly :pathname #.(make-pathname ...)
ALL OVER THE DAMN PLACE for hundreds of components.

> "Component name: designator for a string composed of portable pathname
> characters"
>
> but I have never seen at component-name that was anything other than a
> simple name, never something with directory separators.  Is this ever
> used in the wild?  Or was this something that was added in an excess of
> enthusiasm and that should just be killed (like the undocumented
> tripartite FEATURE form)?
>
Yes, we use it a lot at ITA, and ASDF-DEPENDENCY-GROVEL
and XCVB's ASDF front-end and backend use it, too.

This change is 100% backwards compatible, since the behavior before then was
"undefined" when the #\/ character appeared in a name.
Now it's defined and portable.

[ François-René ÐVB Rideau | Reflection&Cybernethics | http://fare.tunes.org ]
Peace is an extension of war by political means. Plenty of elbowroom
is pleasanter — and much safer.
        — Robert Heinlein, "Time Enough For Love"




More information about the asdf-devel mailing list