On: Thursday, June 03, 2004 12:40 PM, Scott Hannah wrote:

>I don't think it is going to be quite that easy.

It never is, but I threw down the guantlet, and it is amazing what has been
accomplished by people who didn't know that something is "impossible" or
even Very Difficult.

Before I go further, note my Challenge PART II post alternate method.

>Ignoring the error message is not the same thing as solving
>a problem. ... AFAIK, LV allocates the local stack space ...
>when the icon is DROPPED on the digram.

LabVIEW, AFAIK, does not allocate any space, data, etc when you currently
try to do this (recursively drop), rather it pops up an error message. I was
not proposing that we allow an actual drop of the original VI onto its own
diagram, rather that:

1 we HOOK the error exception, (probably need NI's help on this part)
2 we do not pop up the error dialog
3 we drop, instead, an instance of a VI, like the Factorial.vi (example in
DevZone) and we use scripting to change the name of the VI wired inside to
the Open Reference node.

>Obviously a recursive VI must be reentrant.  This means
>that when you drop a VI on itself then a local data space
>is allocated recursively at diagram creation time for all
>recursion depths defeating the purpose of recursion.

This would be true, IF we were talking about literal recursion. I was
proposing that we *effect* recursion, in a usable form, not try to implement
it literally, even NI will probably have to work up a sweat delivering a
literal method (but I bet they get it before V27...)

I have posted this challenge to the LAVA forum as well.

Happy wiring everyone,
Mike




Reply via email to