-
Posts
4,942 -
Joined
-
Days Won
308
Content Type
Profiles
Forums
Downloads
Gallery
Everything posted by ShaunR
-
I think his definition is "A sense of superiority to all others"
-
Nope. Lost me again Indeed. But most of your article was about specifying dynamic types. Well. Except for terminology (I think). I was talking about "Strict" type checking rather than "Static" linking. LV doesn't type check at compile time. It does it before compilation to make sure you don't do anything the compiler will object to. Its more like "syntax" checking. OK. I was under the impression that you were promoting dynamic type checking rather than "Generic Programming" (which I've never heard of before) since most of the article was about types. Re- reading it for the 8th time and in that context, your comments in this thread make a bit more sense (hopefully ). We can already wire a number of types to (taking your example) an add function. Is the only concern that it fixes the output to the same type? Are you saying that we should also be able to wire the inputs of an add function to (say) 2 double numbers and wire directly to a string without converting first? Hmmm. Obviously not what I said previously then. This is what is really confusing Don't most of the primitives do this already (numeric functions, comparisons etc)?
-
I think I see what you are saying. I think the difficulty is that the type philosphy of a language is generally defined at the languages conception as to whether the reponsibilty of type information should be in the compiler or the run-time environment (or both and how much in each). Those that choose "compiler" or "run-time" are pretty much stuck with it and only the hybrids are capable of moving towards natively supporting one or the other. Thats not say though that strict typed systems are unable to "emulate" dynamic typed systems or vice versa. Its just its not natively supported which is I think is what you are suggesting for LV. I think also its a personal choice as to what a particular programmer programmer is comfortable with. The arguements are stacked equally on both sides. Dynamic typing has the advantages you have outlined. But it is also a lot easier to shoot yourself in the foot. Even with the polymorphic vis that Labview provides, it is considered good programming style not to use this feature and instead explicity cast it to the receivers expected type for this reason. For that (amongst others), I prefer strictly typed languages and (if there is a choice of equivelents) choose the strictly typed every time since I don't have many feet and theres too many holes already .
-
NXT-G is very different. It doesn't have the granularity of LV and is more akin to a LV toolkit rather than G itself. Saying they are both "G" is a bit like saying Delphi, C++, PHP, Java etc are all "TEXT". This is what NXT-G looks like. You can also see that it is completely sequential.
-
Is it possible to update links to my Eyes on VIs blog?
ShaunR replied to Christina Rogers's topic in Site Feedback & Support
Search and replace SQL on the database with PHPMyAdmin. heres an example. Its not that difficult. http://www.zimmertech.com/tutorials/php/60/mysql-search-replace-phpmyadmin.php -
I don't get it Labview IS a strictly typed language (only functions of the same type can be connected and a conscious decision to "cast" must be made to other types) as opposed to (say) PHP which isn't (anything can be assigned to virtually anything). Delphi is another example of a strictly typed language whereas C is loosely typed (I think). The add function you describe is a strictly typed primitive with polymorphism which, in other strictly typed text based langauges, would be an overloaded function. So I don't really see what your getting at. What am I missing?
-
How do I create fixed X-Axis intervals using Chart Properties?
ShaunR replied to hova2010's topic in LabVIEW General
Do you think that will let me save it in 8.0 then?....lol. -
How's your PHP?
-
How do I create fixed X-Axis intervals using Chart Properties?
ShaunR replied to hova2010's topic in LabVIEW General
Aha. Because mine isn't 8.6 its 2009. BUG! -
Whilst a "State Machine" (action engine) has many advantageous features. A state machine is used to "break" the dataflow feature of LV so that so that a program can "branch" dependent on dynamic conditions. Your requirement has a sequential nature and doesn't really require one ("Do this" THEN "Do That" THEN "Do It All Again"). What you will end up with in your situation is either sections of code waiting in a particular state until something happens (which deteats the object), or lots of code to check state information to enable a decision to be made on which state to execute next (messy). I would put each "action" into a sub and vi use labviews dataflow to sequence the operations so the top level vi would be farily simple and look something like.... Initialise.vi Heat Up.vi Stabilise.vi Aquire.vi Shutdown.vi But I like simple things
-
How do I create fixed X-Axis intervals using Chart Properties?
ShaunR replied to hova2010's topic in LabVIEW General
Me too. I even deleted bits until I had just an event case left.....still crashed when trying to save. One point to the man with the magic digits. The secret? -
How do I create fixed X-Axis intervals using Chart Properties?
ShaunR replied to hova2010's topic in LabVIEW General
Is anyone able to save this to a previous version other than 8.6 for the OP? Both LV x32 and x64 crash if I try to save below 8.6. -
Ooooh. I'm getting confused between this thread and the axis one Have a look at this A little bit of thought and it can be extended to acheive what you require.
-
LabVIEW Equivalent of Visual Basic's 'For Each' Syntax
ShaunR replied to iannicholson's topic in Calling External Code
Well. Getting the length of an array and wiring that to the "N" terminal (I think the LV equivelent would be an array of clusters or objects) isn't that inefficient. But labview arrays are "self indexing". If you wire an array through a for loop and don't wire anything to the "N" terminal, it will iterate for the number of elements that are in it. -
Well. If you can't spell "peeling" then why not?
-
How do I create fixed X-Axis intervals using Chart Properties?
ShaunR replied to hova2010's topic in LabVIEW General
I knocked up a quick version of what I was talking about earlier about creating "views" of logged data. If you were to use it you would still need to figure out how to get "Month" data in properly and slide the scale (don't want to do all your work ) But should give you an idea. -
Unexpected Behavior with Vista and Write Protected Files
ShaunR replied to RobWright's topic in LabVIEW Bugs
ทุกเวลา -
-
Unexpected Behavior with Vista and Write Protected Files
ShaunR replied to RobWright's topic in LabVIEW Bugs
This usually happens if you have the "New" or "New or existing" checked in the "Selection Mode" of the browse options and try to access a read-only, existing file. Try changing it to "Existing". I've always thought that "New or exisitng" shouldn't behave this way. But just got on and worked around it. -
There is a property node under "Application>>Display" called "Primary Workspace". It will give you the Top,Left,Right and bottom of the screen.
-
I don't get what your saying here. They both seem ok to me If you want only certain things to scale then right click on the control or indicator and choose "scale object with pane".
-
A simpler way (and easier) is to use a good old fashioned data pool. Your UI is completely separated from the data therefore you can not only bolt on new user interfaces, but create different views of the same data.
-
I'd use FETS. Easy and cheap. http://www.national.com/an/AN/AN-32.pdf
-
Getting a new PC. How to reload 2009 and old versions?
ShaunR replied to george seifert's topic in LabVIEW General
Well. The terminology is clear. The licence says "computer" ( NI Licences ). I haven't read the full licence recently but based on that, I would be prepared to argue the case.