LabVIEW

cancel
Showing results for 
Search instead for 
Did you mean: 

Converting seconds to a date in another language

Solved!
Go to solution

Since we have gone down this path anyway....

 

I can't profess to be an expert, but first, we don't generally get something from nothing.  To be honest, Jeff's reply seems somewhat garbled and was hard for me to follow (maybe Jeff needed another cup of coffee 😉 ).

 

"G, The native langauge of the LabVIEW IDE, is a 4th generation language and C is not as abstracted from hardware.  "

 

I am not sure what this means, but let's be clear - the graphical aspect of LV (what makes LabVIEW LabVIEW) was not written in G.  It was written in C.  When you move a wire or a VI on a block diagram, and the system responds as you expect, this is not G, but rather C.  The windowing was not written in G.  Do not confuse this with an IDE - it is the very core of what LabVIEW is. 

 

Yes, it is true.  There are many high level routines that have been written in C that have been wrapped in a VI because the C could be better optimized.  And it is most definitely true that more and more of the routines emerging are written in G (I myself have written routines that were better optimized in G than in C) - the best, most recent example is the Actor Framework which was very purposefully written with all G.  But, the foundation still lies in C - the low level functions on which you build everything. 

 

And this is why you get the marketing campaigns like "We write C so you don't have to."

 

But, I don't know why this is even a point worth bearing out, as if the fact that LabVIEW might somehow be built of C discredits the language.  Many wonderful analytical packages have been built off of C (Matlab anyone?) and Python is very explicitly built of of C.  So, why is this a point of contention?

0 Kudos
Message 21 of 22
(573 Views)

@billko wrote:

I understand this is off-topic, so this is the last I will mention of it in this thread - not because of any hurt feelings and such, but because I hate hijacking threads.  I was always led to believe that most of LabVIEW was written in G, but a lot of the highly optimized stuff was written in C.  To me, that doesn't qualify for something being "based" on something else.  To me, being written in C with calls to G would be more in line with that.  To anyone: feel free to PM me if you'd like to continue the discussion.  I'd rather be proved wrong than continue to BE wrong.


NI likes to say that more of LabVIEW is written in LabVIEW with each release, but the core language I'm sure is still in C++. In a text-based language you can separate the editor from the compiler, and it's maybe worth thinking of LabVIEW that way as well even though they're tightly integrated. It's easy for NI to add features to the editor that are written in LabVIEW, but I can't imagine writing the compiler in LabVIEW, especially given the speed of the compiler (every time you modify your dataflow the VI gets recompiled, almost instantaneously). Maybe the phrasing "based on" is problematic but it's certainly accurate to say that the core of LabVIEW is written in C++.

0 Kudos
Message 22 of 22
(547 Views)