[asdf-devel] :logical-hostname
Robert Goldman
rpgoldman at sift.info
Tue Mar 30 14:06:42 UTC 2010
On 3/29/10 Mar 29 -4:00 PM, Juan Jose Garcia-Ripoll wrote:
> One of the common problems that ASDF users faced when introducing the
> new binary location system is finding out where things reside.
>
> Another problem we will eventually find is locating the resources
> associated to an ASDF system which has been replaced by a precompiled
> version.
>
> In general it would be desirable for a system to be able to locate its
> resources (additional files, icons, bitmaps, etc) using logical pathnames.
>
> For that purpose I have coded a small patch that adds a new keyword,
> :logical-host, to DEFSYSTEM. The keyword defines a logical pathname
> translation from "**;*.*.*" to "path/to/asdf/or/pathname/argument/**/*.*"
>
> This way we may have
>
> (defsystem :cl-unicode
> :logical-host "cl-unicode"
> ...)
>
> and in the sources load the databases such as
> "cl-unicode:uppercase-table.dat"
>
> https://bugs.launchpad.net/asdf/+bug/551222
FWIW, Faré provided a couple of new API functions to give ASDF users
this function, notably
SYSTEM-RELATIVE-PATHNAME
and
SYSTEM-SOURCE-DIRECTORY
For what it's worth, I try to avoid logical-pathnames in portable code,
having been hoist too many times on the petard of ACL/SBCL
incompatibility in handling logical pathnames (SBCL sticks to the spec,
in the name of portability and standardization; ACL accepts sensible,
spec-defying logical pathnames in the name of utility).
Best,
r
More information about the asdf-devel
mailing list