I’m both asking how they should be named, and how to advertise them for 
programmatic consumption.
For example, and automatic testing program such as that included in quicklisp, 
should not try to stand-alone
load systems which are not designed to work stand-alone.   We have to work 
around this by artificially
making all systems “work” in standalone enough to fool quicklisp.

quickref is another tool which tries to publish documentation extracted from 
packages, but quickref would
like to skip packages which are not part of the public API, such as test case 
packages which may require
other non-public testing frameworks.

It would be nice if asdf had some declarative way of specifying which systems 
are intended as entry points.
That would also avoid different people relying on non-standard naming 
conventions to encode declarative 
information.


> On 06 Feb 2019, at 15:36, Robert Goldman <rpgold...@sift.info> wrote:
> 
> On 6 Feb 2019, at 2:22, Jim Newton wrote:
> 
> When creating an lisp application I usually have one (or several) what I call 
> top-level asdf systems
> which advertise the public interface to the application, and I may have 
> several internal systems
> which are used but not intended for public use.
> 
> What is the convention with asdf to distinguish entry-point systems from 
> internal/private
> systems?
> 
> I generally try to use either Faré's "slashy" systems (like "shop2/common") 
> in my work. When I can, it's even better to use a :module which isn't visible 
> at all.
> 
> I think what you are really asking is "how should I name a system that the 
> user should never load directly?" I don't have a great answer to this 
> question.
> 

Reply via email to