Jump to content
Sign in to follow this  
Michael Aivaliotis

If you could ask anyone at National Instruments any question. What

Recommended Posts

QUOTE(Aristos Queue @ May 31 2007, 11:03 AM)

Zen Koans teach that certain yes/no questions can only be answered with "mu". The classic example:

Question: "Have you stopped beating your wife yet?"

Answer: "Mu."

"Mu" unasks a question that is based on false assumptions. The above question not only presumes that you have a wife, but also that at some point you started beating her. If you don't have a wife or never started beating her, then both yes and no would both be misleading answers.

The answer to your question is "mu." Can you puzzle out the incorrect assumptions built into the question?

That explains why there is never a bug associated with it. If its behaviour does not have any specifications, it can never fail to meet them.

Maybe my question should have been along the lines of "If there were a specification...."

Should I assume a response of "mu" to that Q as well? :rolleyes:

Ben

Share this post


Link to post
Share on other sites

QUOTE(Ben @ May 31 2007, 10:13 AM)

Should I assume a response of "mu" to that Q as well? :rolleyes:

*grin*

The algorithm has many specifications for what it has to do. But how it does them... well... if you come to NI HQ on Samhain/All Souls Night, when the barriers to the spirit world are thinnest, you can hear the whispers in the wind that tell us lines of code to change. Some developers hear better than others, and they enter a sort of trance that allows them to change obscure lines of code. At any other time of the year, staring at those lines of code is much like staring at a Rorshach ink blot.

Share this post


Link to post
Share on other sites

QUOTE(Aristos Queue @ May 31 2007, 12:13 PM)

*grin*

The algorithm has many specifications for what it has to do. But how it does them... well... if you come to NI HQ on Samhain/All Souls Night, when the barriers to the spirit world are thinnest, you can hear the whispers in the wind that tell us lines of code to change. Some developers hear better than others, and they enter a sort of trance that allows them to change obscure lines of code. At any other time of the year, staring at those lines of code is much like staring at a Rorshach ink blot.

OK I am done poking (for now :) ).

The in-placeness algorithm is a dragon* I'd love to drop a sadle on and put a bit in its mouth rather than watching it wonder around and then re-arranging my castles (data structures) to exploit it power.

Ben

*I just finished reading "The Children of Hurin" the day before yesterday. :thumbup:

Share this post


Link to post
Share on other sites

QUOTE(eaolson @ May 31 2007, 09:53 AM)

Aristos Queue once said that the Get Queue Status VI "generates no code" if a particular wire was left unconnected. Ever since then I've wondered if much of LabVIEW is a front-end for connecting bits of pre-compliled code.

Just like any compiler for any computer language, the source code of LabVIEW (the block diagram) is translated to assembly instructions that the computer can actually execute. The Add primitive generates machine code instructions to load values into registers, add them and store the result back to memory. The Queue prims generate considerably more complex assembly code. Ultimately, machine code is the only language the computer understands. Some routines in LV are prewritten. An example would be the Scan From String primitive, which generates assembly code needed to call an already written section of machine code stored in either labview.exe or lvrt.dll. But if all we did was string together prewritten functions, the code would be pretty slow to execute. The compiler translates the nodes/wires on the block diagram into code that is as optimal as the compiler can figure out to make it.

Of course, when we compile a VI for a target like PDA or FPGA all of the code has to be generated. There are no prewritten routines on those platforms.

Share this post


Link to post
Share on other sites

QUOTE(Aristos Queue @ Jun 1 2007, 08:51 AM)

Just like any compiler for any computer language, the source code of LabVIEW (the block diagram) is translated to assembly instructions that the computer can actually execute.

Hmm.. So you are not using any intermediate language?

Share this post


Link to post
Share on other sites

QUOTE(Tomi Maila @ Jun 1 2007, 01:27 AM)

Hmm.. So you are not using any intermediate language?

We are not using any intermediate language.

Share this post


Link to post
Share on other sites

QUOTE(Aristos Queue @ Jun 1 2007, 09:41 AM)

We are not using any intermediate language.

At least not yet :rolleyes: . And probably never for the already existing platforms.

Rolf Kalbermatter

Share this post


Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Sign in to follow this  

×
×
  • Create New...

Important Information

By using this site, you agree to our Terms of Use.