ok, I see. you usually don't load individual classes with [declare -lib] but only (multi-objects-per-binary) libraries.
 
the workaround usually is to do [declare -path zexy -lib zexy]. -path is for abstractions and single-object-binaries and -lib is for the multi-object-per-binary library (if it exists).
 
the problem was that with single-object-binaries you can do [zexy/atoi] but with multi-object-binaries you can't (unless they added such creators). this is what my patch mainly tries to solve.
 
Gesendet: Sonntag, 12. Mai 2019 um 17:33 Uhr
Von: "Jonathan Wilkes" <jancsika@yahoo.com>
An: "Christof Ressi" <christof.ressi@gmx.at>
Cc: Pd-List <pd-list@lists.iem.at>
Betreff: Re: Aw: Re: Re: Re: Re: [PD] Full stop '.' in class namespace
 
> On Sunday, May 12, 2019, 10:58:52 AM EDT, Christof Ressi <christof.ressi@gmx.at> wrote:
 
>> that allows it to be built both as a single binary *or* with one class per binary.
 
> ah, of course that makes sense.
 
>> with multi-binary style I can do [declare -lib foo/bar] whereas with the single-binary style that won't work.
 
> I'm not sure I understand. Can give an example?
 
That's the libdir prefix logic. Say I have a "foo" library where one of many binaries inside "extra/foo/" is 
named bar.pd_linux. Then I can do [declare -lib foo/bar] to load that library.
 
On the other hand, if "foo" was compiled as a single binary with many classes inside it, then there is 
just "extra/foo/foo.pd_linux." In that case [declare -lib foo/bar] won't work.
 
Theoretically you could have a loader branch that would look for the "foo" binary in that case, load it, and then 
search for a "bar_setup" routine. But that's getting pretty damned complicated. And without a spec for 
what the loader is supposed to be doing in the first place I'd be hesitant to add that.