Spencer Salazar wrote:
Hey Atte, I dont think its possible to store references to functions, or function pointers (a four letter word these days :P )
Is function pointers considered bad? If so, why?
but you can achieve something very similar with objects and polymorphism.
Not as far as I can see (in my case). The function I'd like to reference to is inside an instrument class. Each member function is an instrument, so it's something like: public class Instruments { fun static void sine(float note, float dynamic, dur length){ 1 => float volume; sinosc osc => ADSR env => dac; dynamic => osc.gain; std.mtof(note) => osc.freq; 1 => env.keyOn; length => now; 1 => env.keyOff; .1::second => now; } } Then I have a sequencer class that essentially steps through an array of notes and spork ~ Instruments.sine() for every entry in the array. For the sequencer to be able to use any of my instruments defined in Instruments class I need to do: public class Seq{ function instrument; //later... spork ~ instrument(); setFun(function new_instrument){ new_instrument => instrument; } } Seq s; s.setFun(Instruments.sine); -- peace, love & harmony Atte http://www.atte.dk | quartet: http://www.anagrammer.dk http://www.atte.dk/gps | compositions: http://www.atte.dk/compositions