Frank Barknecht wrote:
Hallo, marius schebella hat gesagt: // marius schebella wrote:
Hans-Christoph Steiner wrote:
Lots of people contribute, but I am the person who manages the releases. Any help is welcome. The path/import/declare stuff is currently a half-complete effort of Miller's and mine.
is there a page where this idea is documented? how is it supposed to work in the future? I still don't know. will I have to include declare in every patch that I write???
[declare] currently is rather useless. You can load a binary library with [declare], but AFAIK Pd-extended doesn't have any libraries except Gem. [declare -path] acts "funny", or rather, it's unclear whether it should act differently when used in an abstraction instance compared to being used standalone.
there are some other libraries that are still bundled binaries, pdp for example. I think declare -lib works relative to the abstraction. but you also have to possibility to use -stdlib which will be relative to pd or use absolute paths.
Directory prefixes like [zexy/abs~] kind of solve the problem. The problem is, that nobody likes them. (Though probably Hans does;) E.g. I remember that you were complaining quite loudly when the new pd-extended version didn't preload many libraries and libdirs. But of course preloading libraries makes the [zexy/abs~] approach pointless, except for objects in private or rarely used libraries.
I totally agree with you that preloading unnecessary libraries is a waste of memory. there are only two cases where you really have to do that: bundled libraries and objects that have abbreviated names. if you don't preload them, they will not work. with the rest of the objectclasses I think it should be enough to load the path, which would only load the classes into memory, after you created an object (and then only load this single object. correct?
still don't know what to do about abbreviated objectnames. maybe the meta file can handle this?
marius.
OTOH the names of the directories in CVS have been chosen to be the names of the prefixes, which is something, several developers didn't like, but some way to name the subdires had to be chosen of course. Example: Martin doesn't like [mrpeach/packOSC], I don't like the redundant [list-abs/list-abs] etc.
But the real problem is this: Advertising the libdir directories as namespaces has created hundreds of possible new object names. Of course people use these new names, and now backwards compatibility has to take these new names into account. Any "pd-condensed" which I recently invented as a joke would still need to support these new names (or just ignore them). And if some future, cleaned up version of pd-extended includes [abs~] globally, it also will need to offer support for [zexy/abs~], [creb/abs~], [markex/abs~] and [flatspace/abs~] to not break patches written in the advertised style. Not very beautiful.
Ciao