I can see that this would happen in a "By Value" world, but not in a "By Reference" world, because the pointer to the same class would be NULL at the start and would not causing any recursive memory allocation problem.
Of cause LabVIEW is by value, but if I had to develop the source code for LabVIEW, internally I would use pointers for memory allocation and just let the user (me and all other LabVIEW fans), get the feeling of a by value flow development language.
Of cause I don’t have all knowledge of how to write a such sophisticating and great development language as LabVIEW so I’m sure I don’t understand all hurdles and problem it causes to have a Class Cube in its own private data cluster.
Yes you are right; we can implement all design patterns in the GOF with a little tweaking here and there,
But it would be nice to be able to implement these with less tweaking,
I think/hope that in a future version of LabVIEW, we'll both have support for interface and and Call by Reference node with dynamic dispatch class member VIs.
//Mikael