Hello dev list,
In recent months I changed some lines in Pd core code to make it double-precision-compilable. I'd like to help a bit with making Pd-extended ready for double precision as well. After puzzling on repository layout and build system, and figuring out a decent test method (together with Fred Jan Kraan), I am now ready to commit rewritten lines for one external lib, creb. It is for this library that I want to request commit access now, but it doesn't stop here. A brief description of the project:
Pd-double is a fork of Miller Puckette's Pure Data, patched with mentioned double-ready lines. It has (and will continue to have) the same API, apart from the option to compile in single or double precision at will. Pd-double enables double precision builds of vanilla Pd, and is tested to work well on OSX and Linux. I still have to work on the Windows side of things. In the meantime Pd-double is useful as a framework against which external libraries can be developed towards double-readiness. A usable development setup is described on http://puredata.info/dev/pd-double/PdDoubleDevelopment. Convenient unit-test abstractions are introduced here: http://www.katjaas.nl/pdunittests/pdunittests.html. I'd like to invite all Pd-devs to join in. Rewriting and testing classes assumes a fair knowledge of their functioning, and Pd-extended is huge. For me, doing one lib at a time works well, thoroughly testing the whole of it before committing. When starting on another lib, I'll ask commit access again. I could also submit patch files instead, if that is preferred in some case.
A few words on my background so you know who's wanting to poke in your code. During a one-year course at the Sonology Department of the Hague Conservatory (Holland), I learned the basics of dsp math and programming. That was 2007-2008, and I've never stopped music programming since, documenting my efforts and experiments on www.katjaas.nl. Pd has become my favourite environment, because of it's open source and active community, and because I like how you can prototype a neat audio tool quite fast, with GUI and all, while C code is still an option to solve details. A few Pd-externals and projects are shared online via mentioned site (nb 'slicycle' stuff and [soundtouch~]). I teach Pd workshops sometimes. The single-precisioness of Pd has been my only serious gripe. See http://www.katjaas.nl/doubleprecision/doubleprecision.html for illustrations of precision-bottlenecks. Working on this topic, I hope to contribute to the wonderful tool and the community supporting it.
Katja