I just thought I'd propose an idea I had driving home : ):
As a supplement to the subpatcher functionality, what about having a [pddefine] object that took a name as its argument, and a patch built inside would then be callable within the parent patch patch, acting functionally equivalent to an abstraction (i.e. arguments, etc).
The advantage of this would to simplify distribution of pd-patches that would like to use abstractions, but don't want to have to include 15 files for one program. It would also be great for "1-off" abstractions that aren't usable elsewhere, but are needed multiple times in the same patch.
Anyhow, I can't write it, so I guess it's just an idea for able devs to consider.
Luke