[PD-dev] the future of [declare] and canvas_savedeclarationsto()
Hans-Christoph Steiner
hans at eds.org
Thu May 22 21:22:12 CEST 2008
The realpath() is definitely related. If you start Pd using a
relative path, like I do when doing dev work (e.g. make && ../bin/
pd), then sys_libdir will be a relative path. That means it is
impossible to make absolute paths using sys_libdir, which is what I
need to do to make [import] work, or loading libdirs with [declare -
lib] and the libdir loader.
I can't see any problems that realpath() might cause.
.hc
On May 22, 2008, at 8:45 PM, Miller Puckette wrote:
> OK, I took most of the patch (not the "realpath()" call which seems
> unrelated) and uploaded to SVN, unless I'm mistaken.
>
> cheers
> Miller
>
> On Wed, May 21, 2008 at 08:22:23PM +0200, Hans-Christoph Steiner
> wrote:
>>
>> I was looking into this a bit more, and from what I can tell, the
>> canvas-local path (ce_path) is always relative to the path of the
>> parent patch. Here's the commit for pd-extended that adds support
>> for absolute paths:
>>
>> http://pure-data.svn.sourceforge.net/viewvc/pure-data?
>> view=rev&revision=9862
>>
>> Also, I submitted a patch:
>>
>> http://sourceforge.net/tracker/index.php?
>> func=detail&aid=1917574&group_id=55736&atid=478072
>>
>> .hc
>>
>>
>> On May 19, 2008, at 9:42 PM, Hans-Christoph Steiner wrote:
>>
>>>
>>> I think I fixed the full paths bug, here's the commit:
>>>
>>> http://pure-data.svn.sourceforge.net/viewvc/pure-data?
>>> view=rev&revision=9856
>>>
>>> .hc
>>>
>>> On May 19, 2008, at 8:03 PM, Hans-Christoph Steiner wrote:
>>>
>>>>
>>>> I think this issue is pretty clear, and the languages that I know
>>>> would fall along the lines of "each patch/abstraction has its own
>>>> namespace" or in other words "#include only affects the one .c
>>>> file", "import only affects the one .py file", etc. So I agree
>>>> with Frank. Global settings are global, and canvas-local settings
>>>> are local to the original file.
>>>>
>>>> The "semi-functional" part is the full paths that Marius mentioned.
>>>>
>>>> Then the other question is how to use something like "#X declare"/
>>>> canvas_savedeclarationsto() in externals. I'd like to create an
>>>> [import] modelled after Python's import does, so I'd like to use
>>>> "#X declare"/canvas_savedeclarationsto() with it.
>>>>
>>>> .hc
>>>>
>>>> On May 19, 2008, at 6:33 PM, Miller Puckette wrote:
>>>>
>>>>> Hi all,
>>>>>
>>>>> I use 'declare' all the time.. don't think it's semifunctional at
>>>>> all.
>>>>> I think the questions about how declares should act inside
>>>>> abstractions
>>>>> are hard to resolve; in my own usage (and in the way I suggest
>>>>> others might
>>>>> want to use declare) it's always in the main patch, as a way to
>>>>> show the
>>>>> patch what libraries, etc, it needs.
>>>>>
>>>>> cheers
>>>>> Miller
>>>>>
>>>>> On Mon, May 19, 2008 at 06:28:31PM +0200, Hans-Christoph Steiner
>>>>> wrote:
>>>>>>
>>>>>> Hey,
>>>>>>
>>>>>> So I am diving into the whole canvas-local namespace and
>>>>>> [declare]
>>>>>> issue these days. I like the new "#X declare"/
>>>>>> canvas_savedeclarationsto() functionality, I think it could be
>>>>>> useful
>>>>>> for a lot of things. I was thinking of making an API to use
>>>>>> it in
>>>>>> externals, something like sys_register_loader(). I have two
>>>>>> questions, first, how entrenched is the current behavior of
>>>>>> [declare]? It currently is only semi-functional, and I think few
>>>>>> people use it.
>>>>>>
>>>>>> The second is how to structure this for general use. I have
>>>>>> thought
>>>>>> of two ways:
>>>>>>
>>>>>> - make "declare" the key word and allow other objectclasses to
>>>>>> have
>>>>>> their own custom "#X declare" data.
>>>>>>
>>>>>> - allow objectclasses to register their own declaration key
>>>>>> words,
>>>>>> like [import] could have "#X import".
>>>>>>
>>>>>> The first would mean changing the behavior of [declare], the
>>>>>> second
>>>>>> could lead to a big mess...
>>>>>>
>>>>>> .hc
>>>>>>
>>>>>>
>>>>>> -----------------------------------------------------------------
>>>>>> --
>>>>>> -----
>>>>>> ----
>>>>>>
>>>>>> Man has survived hitherto because he was too ignorant to know
>>>>>> how to
>>>>>> realize his wishes. Now that he can realize them, he must either
>>>>>> change them, or perish. -William Carlos Williams
>>>>>>
>>>>>>
>>>>>>
>>>>>> _______________________________________________
>>>>>> PD-dev mailing list
>>>>>> PD-dev at iem.at
>>>>>> http://lists.puredata.info/listinfo/pd-dev
>>>>
>>>>
>>>>
>>>> -------------------------------------------------------------------
>>>> --
>>>> -------
>>>>
>>>> News is what people want to keep hidden and everything else is
>>>> publicity. - Bill Moyers
>>>>
>>>>
>>>
>>>
>>>
>>>
>>> --------------------------------------------------------------------
>>> --
>>> ------
>>>
>>> You can't steal a gift. Bird gave the world his music, and if you
>>> can hear it, you can have it. - Dizzy Gillespie
>>>
>>>
>>>
>>
>>
>>
>> ---------------------------------------------------------------------
>> ---
>> ----
>>
>> News is what people want to keep hidden and everything else is
>> publicity. - Bill Moyers
>>
>>
>>
>> _______________________________________________
>> PD-dev mailing list
>> PD-dev at iem.at
>> http://lists.puredata.info/listinfo/pd-dev
------------------------------------------------------------------------
----
News is what people want to keep hidden and everything else is
publicity. - Bill Moyers
More information about the Pd-dev
mailing list