hi
i tried to put some things into the devel_0_38 but couldn't really get it to work, and so it stopped being fun after a while (devel_0_38 currently does not load externals, and i didn't want to find out why)
however, to keep thomas musil from rewriting every single math~ object to our needs i have added another (over-simple) resampling method to pd0.38test8
the idea is as follows: when doing dsp on "fft-signals" it is often enough to do the calculations on only the first half of the signal-vector (as the information in the second half is redundant) to reduce cpu-load it might therefore be interesting to have objects, that only operate on the 1st half of the vector. no rewriting each object seems stupid to me, as pd can handle this way more simple;
the "block-downsampling" (i haven't come across a better name yet, but it is surely no "resampling") does as follows:
downsampling) only the first part of the original vector is copied 1:1 to the shorter result-vector; the rest is silently ignored upsampling) the shorter original vector is copied 1:1 to the longer result vector; the rest of the result is filled up with 0.
the attached patch modifies - m_pd.h (to use defines like "RESAMPLE_HOLD" rather than "1"; i consider this more readable and it was lazy for me in the first place to not have this in the original resampling) - g_io.c (to add another argument to the in/outlet~ functions: "block"; btw, i have changed the arg-parsing a bit to not use the symbol-table but rather decide on the first letter which resampling method to use) - d_resample.c (add the new resampling methods)
probably you could include this (i cannot watch thomas producing [+~2] objects)
only drawback: still uses arguments to inlet~/outlet~ to define behaviour instead of tooltips...
mfg.as.r IOhannes