It's actually there, at least if you are looking for it.

Looking for "lower" I found this, but in the discussion of `asdf:load-system`, which isn't great placement.

Note that the canonical name of a system is a string, conventionally lowercase.
A system name can also be specified as a symbol (including a keyword),
in which case its @code{symbol-name} is taken and lowercased.
The name must be a suitable value for the @code{:name} initarg
to @code{make-pathname} in whatever filesystem the system is to be found.

The lower-casing-symbols behaviour is unconventional,
but was selected after some consideration.
The type of systems we want to support
either have lowercase as customary case (Unix, Mac, Windows)
or silently convert lowercase to uppercase (lpns).

This material is largely repeated in the "Pathname specifiers" section.

I have clarified this a little in the latest draft of the manual, and made sure that it's explained clearly in the defsystem grammar chapter. I will push this update and make sure that the copy of the manual on the web site is up-to-date.

On 17 Feb 2019, at 14:53, Robert Dodier wrote:

On Sun, Feb 17, 2019 at 6:25 AM Robert P. Goldman <> wrote:

Quick response for now: yes, lowercase naming is a requirement.

Hi Robert, thanks for your reply. Got it, no problem. I will adjust my
stuff accordingly.

It would really help a lot if the policy for the name of the system
and the corresponding .asd filename were spelled out in the ASDF
manual. As it stands, the manual doesn't say anything about
requirements for system-designator; there are incidental comments
suggesting using lowercase but not a specification or requirement. If
names are indeed restricted to lowercase letters, digits, and hyphens,
it would be great to say so.

On a separate topic, are there any restrictions on the names of
components? As it stands the manual says only that component names may
be either strings or symbols.  Mixed case component names appear to
work OK but that may be only fortuitous.

Thanks again, and best wishes.
Robert Dodier

Robert P. Goldman
Research Fellow
Smart Information Flow Technologies (d/b/a SIFT, LLC)

319 N. First Ave., Suite 400
Minneapolis, MN 55401

Voice:  (612) 326-3934

Reply via email to