We have only a few more major features/changes to implement and we will publish v1.0 final. (new render kernel, etc...)
Next week we also have a new developer starting and one of his first tasks will be adding several new nodes to complete the node collection for our first final release.
I would like to use this thread to discuss them and get feedback / ideas from the user community on what the best / most useful nodes would be to add.
Note that any possible nodes presented here or discussed are not guaranteed to appear in v1.0 final, we might cancel some or move some to the roadmap for subsequent releases after the first final version, based on complexity and requirements.
Here is an overview of the nodes that we have assembled:
DYNAMIC OPERATORS & FUNCTIONS
Dynamic nodes are nodes that have no default type. They have grey input and output pins for the actual data type they manipulate (eg float, int, texture, material), and they automatically change to a type when they are first connected to another typed node (currently all nodes in 2.44 are typed)
This makes them generic, eg the same multiply operator can be used for int, float and texture values for example.
Since most of these are simple functions, they are very easy and quick to implement so we can add heaps.
Math Operators:
* add (+) [int, float, texture]
* subtract (-) [int, float, texture]
* multiply (*) [int, float, texture]
* divide (/) [int, float, texture]
* invert [float, bool, texture]
* power (pow) [int, float, texture]
* square root (sqrt) [int, float, texture]
* modulo (mod) [int, float, texture]
* exponent (exp) [float, texture]
* logarithm (log) [float, texture]
* sine (sin) [float, texture]
* cosine (cos) [float, texture]
* tangent (tan) [float, texture]
* arc sine (asin) [float, texture]
* arc cosine (acos) [float, texture]
* arc tangent (atan2) [float, texture]
* arc tangent w 2 params (atan2) [float, texture]
CONTROL FLOW SWITCHES (can switch connection between nodes based on an input value)
* switch (simple switch between two dynamic inputs, controlled by bool or int) [accepts any type for switching]
* multiswitch (switch with dynamic number of inputs, minimum 2, inputs can be added and removed, controlled by int, eg 0, 1, 2, etc...) [accepts ant type for switching]
TESTS (test value of inputs, and returns bool true or false, can be combined with switch above for elaborate testing)
* equals (==) [bool, int, float, texture]
* not equal (!=) [bool, int, float, texture]
* greater (>) [bool, int, float, texture]
* smaller (<) [bool, int, float, texture]
* greater or equal (>=) [int, float, texture]
* smaller or equal (<=) [int, float, texture]
STATIC OPERATORS AND FUNCTIONS
These are remaining node, which have a statically defined type, eg they are not dynamic and must be used with the right types.
Math Functions:
* ceiling [float]
* floor [float]
* absolute [float]
Boolean Logic & Operators:
* AND
* OR
* NOT
* XOR
List And translation of Values:
* listint (Combobox, strings can be added to list, outputs selected string as int index value, can drive a switch or multiswitch for presets. Being able to drag these combo boxes and dock them into menu bars should create very useful UI customisation for presets by users.) [int]
* unitsystem (a float value textfield input with small combo box at the right to select unit type, eg, cm, m, km, foot, mile, outputs converted float value in octane meter format) [float]
* lumensystem (node with watt and efficiency inputs for determining correct area light power) [float]
* floattotexture (converts float node value into texture) [texture]
* inttotexture (converted int node value to texture, uses extra scale parameter to define integer range) [texture]
Procedurals and Noises:
* rand (returns random float value in range [0-1], always same seed/sequence) [float]
* perlin3D (3d low level perlin noise texture) [texture]
* noise3D (3d low level noise with no interpolation, eg cell based noise) [texture]
Colours and spectra:
* hsvspectrum (HSV control colour spectrum, similar to current RGBSpectrum) [texture]
* dataspectrum (spectral distribution that can be edited / loaded from file, enables use of measured spectra) [texture]
That is it, it's a large list, and for me the ultimate node collection for low level development.
The point would be to supply a large amount of low level nodes, which then can be used by power users to develop more complex high level macros as prototypes. If those prototypes turn out to be useful, we can add them hardcoded as native nodes in subsequent releases, to make them faster.
This list is not definitive, we would appreciate your feedback about the list, and your ideas and suggestions.
PLEASE, before you post your requests, don't start suggesting any high level nodes if they can be built with the low level nodes above. We will definitely add more high level nodes, if they are essential and will be used often, and if they cannot be built with the above nodes in macros, or would be too complex and slow to use for practical purposes.
We will be adding / removing and merging some of these on the list during the weeks to come as we go along.
We are also not making any promises regarding when and how much of the above nodes will be I plemented, as it's a big list.

Note that this list is not definitive, it does not reflect all new nodes to come, we will be adding other nodes to support the features we will implement for v1.0 final, for example transforms and scene/mesh groups.
Looking forward to your feedback,
Yours,
Radiance