Talkin' Bout Ma G-G-Gen~ eration!!!!

    Oct 15 2011 | 5:51 pm
    Congrats on the mind-blowing improvements!
    I'm most interested in gen~ right now. In the help-file for gen~ under the "buffer-and-data" tab, I'm just wondering where I can find more information on the [history writeindex] portion.
    I then find the 'history' object described within the gen standard operators tab. Cool. It reads, "With the history operator, single-sample feedback loops are possible. The inlet sets the value of the history node for the next sample, while the outlet sends the value of the history node from the last sample. If the history node is given a name, it becomes a param that can be set from the host object."
    And mousing over the inlet and outlet of history i see i can get the 'previous' and set the 'next'.
    This is great. I think I get it. But I'm still curious how to conceive of this technically. More specifically, what exactly is a 'history node'? Is that a single 64-bit floating point sample held in RAM memory? Does 'history' basically allot 2 areas in memory to hold 2 single 64-bit floating-point samples? One for 'next' and one for 'previous'?
    Apologies if it's anal-retentive or stupid. Just want to know what i'm dealing with(and I figured I'd need to start this thread since I'll probably have alot more questions about gen~).
    Final question for now: any way I can get a better grasp of gen~ other than help file and reference? (oh wait, answered my own question: examples folder. that. is. superb. let me know, though, if there's anything i'm missing.)

    • Oct 18 2011 | 5:16 am
      Hi there,
      Sorry for the late reply, got a lot of things to catch up on...
      You could think of [history] is as a single sample delay, as a z^-1 operator. It allows you to have feedback loops in the signal processing patch.
      (Technically, it holds one 64-bit float in heap allocated memory. During processing, this value is copied into a stack register, and after processing its new value is copied from a stack register back to heap memory for the next sample loop iteration.)
      As Joshua mentioned in another post, Max 6 is still in beta and many things are not completely there yet, including documentation for gen~. There will be more soon!
    • Oct 18 2011 | 10:07 pm
      This helps immensely, Thank you. (I was thinking it was like the z-1 object in Reaktor core cells.)
      And yea, i trust there'll be more gen~ docs. I'm having an easy time with what's there already, though. So thank you again for this great addition to Max.