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.