[PD-dev] "object" lib

Chris McCormick chris at mccormick.cx
Sun Apr 9 05:23:29 CEST 2006


On Fri, Apr 07, 2006 at 01:47:51PM -0400, Mathieu Bouchard wrote:
> On Fri, 7 Apr 2006, Chris McCormick wrote:
> > On Fri, Apr 07, 2006 at 05:25:41AM -0400, Mathieu Bouchard wrote:
> > > On Fri, 7 Apr 2006, Hans-Christoph Steiner wrote:
> > > > Pd is not an object-oriented programming language, so a classtree is
> > > > totally irrelevant.
> > > There are things that are both called OOP and don't have classes.  
> > > (http://en.wikipedia.org/wiki/Self_programming_language)
> > So? That isn't at all why Pd shouldn't be considered OOP. Puredata
> > doesn't even properly support this type of 'copy-and-modify' inheritance
> > that Self and Javascript do. A save operation is required in between,
> 
> The "copy-and-modify" part of those languages isn't inheritance, it's
> construction: they don't have ordinary "constructors". They both support
> inheritance but they both don't use classes to do inheritance.

I don't beleive this is true of Javascript. The only way to "inherit"
in javascript is to copy an existing object and then add methods to it
from the object you want to inherit from.

> No it's not: those languages have the "class" role played by ordinary
> objects: if you modify an object that is a "class" for other objects,
> those other objects immediately start behaving differently. That's even 

I don't beleive this is true for Javascript either. Once you copy an
object you get a totally new object - if you modify the original object
you copied from, it will not affect the newly copied object, and if you
modify the new object it will not affect the original object.

> better than Pd because then, modifying code and applying changes doesn't 
> need lose your settings: e.g. if [+ 42] is configured to add 37 instead, 
> then changing the abstraction in a SELF-like way doesn't reset the 
> changes.

If you ask me, this is more like having a fixed method of an object and
giving it an argument that re-configures the way it works than modifying
the code. But not entirely. This highlights the problem with trying to
map concepts like "method" and "object" onto Pd.

I take your point though; "mostly dataflow but not completely
unprocedural" sounds about right.

Chris.

-------------------
chris at mccormick.cx
http://mccormick.cx




More information about the Pd-dev mailing list