[PD-dev] "declare" strangeness in abstractions (0.41 test10)
Miller Puckette
mpuckett at imusic1.ucsd.edu
Sat Jan 5 19:32:14 CET 2008
Hi Frank,
Well, I can't remember now if I was looking at that bug report or if I was
having my own problems with declare (I've had many). I had bad confusion
making abstractions use "soundfiler", for instance, and having relative
paths get expanded relative to the abstraction instead of the calling patch.
However, when an abstraction opens a sub-abstraction as in "x/y", I think
it's best to have x/y be relative to the abstraction's location and not the
calling patch's. These two needs seem in direct conflict. I hope to figure
out a better way to handle this but have given up trying to resolve it
for 0.41.
I hope nobody is yet throwing "declare" objects in abstractions, as that
currently does something so wrong (altering the global path for the calling
patch!?) that I thought it better to get rid of the whole thing for now.
cheers
Miller
On Sat, Jan 05, 2008 at 06:28:20PM +0100, Frank Barknecht wrote:
> Hi,
>
> I checked out the behaviour of [declare] in the latest test version,
> which supposedly should have some fixes according to the release
> notes:
>
> Fixed "declare" which wasn't working properly yet in 0.40-0, and made
> more objects (notably "soundfiler") respect "declared" paths. Path
> entries are relative to the parent patch. Declares inside abstractions
> are ignored.
>
> Now I'm not sure, if simply ignoring declares in abstractions is the
> right thing (tm) to do. Using the declare-bug.tgz examples from Bug
> #1714473 I now cannot make abstractions evaluate declares anymore.
> This seems to be intended, but why?
>
> The example uses an abstraction, "myabs/test-patch-with-deep-declare"
> that includes an instance of [abuse-me], which by [declare -path
> ./sub] inside "myabs/test-patch-with-deep-declare.pd" should be taken
> from "myabs/sub/abuse-me.pd". But, alas, this isn't found and thus
> "myabs/test-patch-with-deep-declare" is broken. Opening
> "myabs/test-patch-with-deep-declare.pd" directly will make it find the
> correct abuse-me.pd in myabs/sub/abuse-me.pd
>
> I believe, the correct behaviour would be to not ignore the declares
> in abstractions, but make them act relative to the abstraction's path.
>
> Otherwise abstractions would behave differently when opened directly
> compared to when used as abstractions, which I think is very
> confusing.
>
> Ciao
> --
> Frank Barknecht _ ______footils.org__
>
> _______________________________________________
> PD-dev mailing list
> PD-dev at iem.at
> http://lists.puredata.info/listinfo/pd-dev
More information about the Pd-dev
mailing list