Two books that helped me learn how to write clearly modularized programs were Starting Forth (1981) and, especially, Thinking Forth (1984) by Leo Brodie. Of course, these are for a particular language, and one which encourages -- you might even say requires -- modularization. But a lot of the tips are about how to *think* about the program you're creating, so they carry over into other languages. And they're especially good for showing what can be done even in low-level languages ... like Forth and Pd.
Hans-Christoph Steiner wrote: > > This all makes me think that we should write a Pd book that covers > things like good form. Perhaps we could make it a decentralized > collaborative effort with strange consensus decisionmaking to mirror the > Pd community :D > > .hc > > On Jan 12, 2008, at 8:41 AM, Jamie Bullock wrote: > >> >> On Fri, 2008-01-11 at 11:29 -0800, Dudley Brooks wrote: >>> Can anyone direct me to articles on constructing clear, modular, >>> non-spaghetti patches in pd or other visual dataflow languages? >>> Especially if the articles derive their recommendations from theoretical >>> analysis (as with the investigations that led to structured programming >>> in imperative languages), rather than just rules-of-thumb -- although >>> the latter are useful also. >> >> You might find this document interesting if not helpful: >> >> http://dspace.mit.edu/handle/1721.1/13474 >> >>> Or is some amount of spaghetti unavoidable in dataflow languages, >>> perhaps because it is inherent in the situation being modeled, rather >>> than being an artifact of the language? >> >> Personally, I find that there is an idiomatic way to use most languages, >> which is congruous with the way the language is designed. Of course, >> people may want to deliberately subvert this relationship, but I guess >> that's different from using something in an unidiomatic way and not >> being aware of the fact. >> >> Although, I think Frank wrote these in a non-didactic spirit, I find >> Franks 'dogmas' very helpful for clear and idiomatic Pd patching: >> >> http://lists.puredata.info/pipermail/pd-list/2007-04/049447.html >> >> I have also found Frank's 'footils' collection of abstractions to be an >> excellent source of idioms and examples of how to make clear and >> coherent patches. >> >> I must stress that I'm not suggesting that this is the 'correct' way to >> patch, I just personally find it to be clear, elegant and spaghetti >> avoiding! >> >> best, >> >> Jamie >> >> -- >> www.postlude.co.uk >> >> >> _______________________________________________ >> PD-list@iem.at mailing list >> UNSUBSCRIBE and account-management -> >> http://lists.puredata.info/listinfo/pd-list > > > > ---------------------------------------------------------------------------- > > > 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-list@iem.at mailing list UNSUBSCRIBE and account-management -> http://lists.puredata.info/listinfo/pd-list