On 4/25/06, <b class="gmail_sendername">Paul Millar</b> &lt;<a href="mailto:paul@astro.gla.ac.uk">paul@astro.gla.ac.uk</a>&gt; wrote:<div><span class="gmail_quote"></span><blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">
Hi Tom,<br><br>Yes, this looks to be amenable to a clean-room implementation.<br><br>This could involve two students: one activity would be to write a document<br>describing the API and write a suite of functional tests that &quot;define&quot;
<br>correct behaviour of the API; the other activity would be to use the document<br>and functional test-suite to implement a version of the asio dll for wine.<br><br>Would this be an appropriate SoC project?&nbsp;&nbsp;I speak as someone who's got a mate
<br>who (independently) came up with much the same idea and this might allow both<br>to contribute.<br><br>Cheers,<br><br>Paul.</blockquote><div><br>I don't see any reason why that couldn't work.&nbsp; We could combine that test suite with users that use various pro-audio apps tests  of said apps.&nbsp; For example, some users prefer fruity loops over soundforge or acid, but we can test all 3 against the implementation, modify (or initially write) the tests to do the same things as these apps, and then build the implementation based on the tests..
<br><br>Not to go off topic, but that might be a good method (now that I think about it) to find out what various other apps do.. Sure it is the same as making a testcase, but in this case, we are working backwards, which might speed up patch production in some cases
<br><br>If I am reading what you said above, you basically want to for example, take fruity loops, figure out what it does when you do various things (by tracing that app's execution), then using that trace, write our own code to produce an _identical_ trace, and then use that code to make patches to other areas of wine..
<br></div><br>Am I off the mark here?&nbsp; If not that really could help out our release cycle, and increase the number of bugs fixed per release.....<br></div>