PD ONLINE DOCUMENTATION CHAPTER 5: Writing your own objects

You can write your own objects that you and others can use in their Pd
applications.  Learn to do this and you'll never again feel
that some faceless hacker is deciding what you can and cannot do.  I
owe this idea to David Zicarelli.

HOW EXTERNS ARE LOADED

Whenever you type the name of an object (into an "object" text box) that Pd
doesn't yet know about, Pd looks in its current directory for a relocatable
object file, named, for instance, "profile.pd_irix5".  Pd will then add whatever
object is defined there to its "class list," which is the set of all Pd classes
you can use.  If all this works, Pd then attempts again to create the object
you asked for, this time perhaps sucessfully.  There is no difference between
an object defined this way and an object built into Pd.

Once you load a new object into Pd, it's there for the duration of your Pd
session.  If you load another Pd document which supplies a different version
of some Pd object, the object won't be updated.  IF you're working on a new
object and decide to change it, you have to exit and re-enter Pd to get the
change to take.

EXAMPLES

In the "externs" subdirectory of the documentation you can find three
examples of "externs" with their source code and test patches.



