<html><head></head><body><div style="color:#000; background-color:#fff; font-family:Helvetica Neue, Helvetica, Arial, Lucida Grande, sans-serif;font-size:13px"><div id="yui_3_16_0_1_1490797412009_5096">Hi list,</div><div id="yui_3_16_0_1_1490797412009_5052">I'd like to propose "feature-triggered specifications" for development of Purr Data.</div><div id="yui_3_16_0_1_1490797412009_5051"><br></div><div>If someone wants to implement a new feature to the language or environment, <br></div><div dir="ltr" id="yui_3_16_0_1_1490797412009_5097">they need to write a clear specification for how that part of the language or <br></div><div dir="ltr" id="yui_3_16_0_1_1490797412009_3571">environment currently works.  Once done, discussion of the proposed <br></div><div dir="ltr" id="yui_3_16_0_1_1490797412009_5098">feature can start simply by showing how it changes (or newly written spec.<br></div><div dir="ltr" id="yui_3_16_0_1_1490797412009_3587"><br></div><div dir="ltr" id="yui_3_16_0_1_1490797412009_4834">I've suffered from not having done that with the additions to data <br></div><div dir="ltr" id="yui_3_16_0_1_1490797412009_4833">structure drawing.  It really eats at development time because it increases <br></div><div dir="ltr" id="yui_3_16_0_1_1490797412009_5099">the chance of coding oneself into a corner.</div><div id="yui_3_16_0_1_1490797412009_5100"><br></div><div id="yui_3_16_0_1_1490797412009_5045">For example: if we want to make it possible to save symbols with spaces <br></div><div id="yui_3_16_0_1_1490797412009_5101">in them to pd patches, we would need a spec for how Pd goes from <br></div><div id="yui_3_16_0_1_1490797412009_5102">FUDI to text and back.  That's a lot of work.  But it's also a lot of work to <br></div><div id="yui_3_16_0_1_1490797412009_5044">make a change to the parser that doesn't break things.  The best way to <br></div><div dir="ltr" id="yui_3_16_0_1_1490797412009_5103">refrain from breaking things it to write down how things work.  So I propose <br></div><div dir="ltr" id="yui_3_16_0_1_1490797412009_5104">we do that.</div><div dir="ltr" id="yui_3_16_0_1_1490797412009_5105"><br></div><div dir="ltr" id="yui_3_16_0_1_1490797412009_5108">This wouldn't apply to crasher/UI bugs.  It might need to apply to deeply <br></div><div dir="ltr" id="yui_3_16_0_1_1490797412009_5218">ingrained bugs, like the fact that you can cause dropouts by moving the <br></div><div dir="ltr" id="yui_3_16_0_1_1490797412009_5217">mouse over a patch.<br></div><div dir="ltr" id="yui_3_16_0_1_1490797412009_5191"><br></div><div dir="ltr" id="yui_3_16_0_1_1490797412009_5106">-Jonathan<br></div><div id="yui_3_16_0_1_1490797412009_3399"><br></div></div></body></html>