Jump to content
Bob W Edwards

Is a baked-in Actor Framework on the drawing board?

Recommended Posts

This question aimed at NI: There are many frameworks some stable and others still emerging for building an application from messaging Actors - which is great. They all of them suffer from one overriding issue, that of being more complex than one could wish for. One of the basic aims of LabVIEW was to allow non-programmers to achieve their goals with a minimum of fuss. None of the existing frameworks can claim this, so the user stays focussed on the application and doesn't get diverted by the complex syntax.

Is it likely we'll see a baked-in messaging Actor feature with a simple api in LabVIEW sometime? OR are we better off continuing to refine the above frameworks for a little while longer?

Regards, Bob (Being retired I use home LabVIEW at the moment but looking forward to the free community edition next year)

Share this post


Link to post
Share on other sites

A first-class, baked-in, messaging framework of some sort is on my personal roadmap. I have multiple design documents, use cases, customer feedback, etc.  It is priority number two on my list of future language advancements that I want to work on.

But I have yet to convince NI that it is a priority.

So, for now, the Actor Framework remains my team's best effort -- through the support in the project tree and the documentation tools -- to create a messaging system with minimal diversion into syntax. It is a mixed bag of a success. It has inspired several other similar frameworks, each with its own tradeoffs.

Even if I were to convince The Powers That Be, such effort would almost certainly be directed to LabVIEW NXG, not LabVIEW 20xx -- arguing for 20xx is an even harder argument to win. I would recommend continuing to refine the various frameworks for the foreseeable future. That's my personal opinion from the trenches. If something better is important to you, please use various customer channels to communicate your desire to NI. The Powers listen better to customers directly than to me saying things on behalf of customers.

Share this post


Link to post
Share on other sites

No interest in NXG from this neck of the woods would be the feedback to the Powers that Were.

Share this post


Link to post
Share on other sites
4 hours ago, Aristos Queue said:

... It is priority number two ...

What's number one?

Share this post


Link to post
Share on other sites
1 hour ago, DTaylor said:

What's number one?

Hopefully TLS1.3 :D

Share this post


Link to post
Share on other sites
13 hours ago, X___ said:

No interest in NXG from this neck of the woods would be the feedback to the Powers that Were.

Lol. Sorry for sidetracking, but I tried to get it to even open and it crashes on my machine. If you believe a KB, at some point someone before me installed a beta version of nxg on what is now my laptop (seems unlikely). The fix is to uninstall nxg, uninstall ni package manager, "Remove any supporting NXG files in the root directory, removing any trace of LabVIEW NXG from the machine" and reinstall everything. I asked NI support what "the root directory" is I'm supposed to delete NXG stuff from and they told me it meant the C drive 😕. Find an unspecified leftover NXG file somewhere on the C drive and delete it. What a joke.

11 hours ago, ShaunR said:

Hopefully TLS1.3 :D

Lol

Edited by smithd

Share this post


Link to post
Share on other sites

a) TLS support would be a library, not a language feature.

b) I wouldn't expect to have anything to do with such a project... networking protocol code is a long way from my areas of both knowledge and interest.

c) Your timing is impeccable. Status changed to In Development (should've been set that way six months ago... we missed it in the list):
https://forums.ni.com/t5/LabVIEW-Idea-Exchange/SSL-TLS-Support/idi-p/3314187

Share this post


Link to post
Share on other sites

I'm guessing #1 is some sort of native Character Lineator framework.  It'd solve a lot of busywork when serializing labview data for other languages.

Share this post


Link to post
Share on other sites
14 hours ago, smithd said:

Lol. Sorry for sidetracking, but I tried to get it [NXG] to even open and it crashes on my machine.

NXG is not my area of concern at this time. I can see it approaching in the rear view mirror, but my job is to hold the accelerator down on the current product as long as possible... NXG is a much larger dev team... they'll overtake my team eventually... but today isn't that day. 🙂

  • Like 1

Share this post


Link to post
Share on other sites
22 hours ago, DTaylor said:

What's number one?

Well, it isn't interfaces... those are at "priority zero... in beta... conditions look good for launch in T-minus 4.5 months."

Share this post


Link to post
Share on other sites
26 minutes ago, Aristos Queue said:

c) Your timing is impeccable. Status changed to In Development (should've been set that way six months ago... we missed it in the list):

https://forums.ni.com/t5/LabVIEW-Idea-Exchange/SSL-TLS-Support/idi-p/3314187

Finally!

4 minutes ago, Aristos Queue said:

Well, it isn't interfaces... those are at "priority zero... in beta... conditions look good for launch in T-minus 4.5 months."

!!! Is there anywhere we can read about specifics?

You've given us priority #0 and #2, are you unable to share #1?

Share this post


Link to post
Share on other sites
11 minutes ago, DTaylor said:

Finally!

!!! Is there anywhere we can read about specifics?

You've given us priority #0 and #2, are you unable to share #1?

Unwilling, not unable. I'm proposing it as a research vein over the next couple weeks. If The Powers tell me there's zero chance, I won't even bother getting into it ... it's a brainstorming rabbit hole that I think has benefit, but few others agree with me, even among customers. If I get a go ahead for it, I'll probably be discussing it at the CLA Summit in September.

Share this post


Link to post
Share on other sites
17 minutes ago, DTaylor said:

!!! Is there anywhere we can read about specifics?

https://ni.com/beta

And there's a CLA Summit presentation from September that I gave that is videotaped and archived somewhere in the CLA forum... I don't have that link handy at the moment.

Share this post


Link to post
Share on other sites
2 hours ago, Aristos Queue said:

a) TLS support would be a library, not a language feature.

b) I wouldn't expect to have anything to do with such a project... networking protocol code is a long way from my areas of both knowledge and interest.

c) Your timing is impeccable. Status changed to In Development (should've been set that way six months ago... we missed it in the list):
https://forums.ni.com/t5/LabVIEW-Idea-Exchange/SSL-TLS-Support/idi-p/3314187

It was a gentle reminder of a question I asked you a couple of months ago ;)

So will the distributed LabVIEW OpenSSL binaries be updated to  1.1.x anytime soon? (that's the version  minimum to support TLS1.3) Can anyone confirm the version in the Beta?

1 hour ago, Aristos Queue said:

If The Powers tell me there's zero chance, I won't even bother getting into it

To be honest. I'm surprised you aren't one of "The Powers". You've done your time and given impeccable service.

 

Edited by ShaunR

Share this post


Link to post
Share on other sites

Aristos,

Thanks for the insight into the status of Actor programming within NI. The case for building Actors into the language would have to be compelling given the amount of work involved. I was just curious to know if a more elegant feature was imminent. For now I'll continue with Messenger Library in my little retirement project (a software defined ham radio).

Bob G4BBY

Share this post


Link to post
Share on other sites
On 1/3/2020 at 1:24 PM, Aristos Queue said:

Unwilling, not unable. I'm proposing it as a research vein over the next couple weeks. If The Powers tell me there's zero chance, I won't even bother getting into it ... it's a brainstorming rabbit hole that I think has benefit, but few others agree with me, even among customers. If I get a go ahead for it, I'll probably be discussing it at the CLA Summit in September.

Sounds interesting. I'd love to hear what it was even if it gets shot down.

Do you have any stories of ambitious/controversial proposals that never had a chance?

Share this post


Link to post
Share on other sites
3 hours ago, DTaylor said:

Do you have any stories of ambitious/controversial proposals that never had a chance?

There’s three that come to mind. 
 

No one but me liked my Recursion structure node as an alternative (improvement, in my opinion) over just allowing a VI to call itself as a subVI. I took a rather radical position that recursion should have a compiler-provable base case as part of its declaration, and that raw function recursion, though critical in math, is not healthy in a programming environment because compilers cannot really prove (in most cases) that it doesn’t blow up the stack. But every other language just has recursion... my structure node was too different. 

I had a really bad design for sets and maps back in 2001 that I pushed hard for: a complete by-reference design that I’d worked out. That one got me a lecture from Jeff K that rings in my ears to this day on the value of by-value. There was a good-natured-but-insistent afternoon of all the senior devs basically taking turns showing all the really bad architectures my API enabled until I finally got the point. 🙂 Eighteen years later, I lead the effort to put the by-value API in. 
 

I have a bunch of NXG designs that were too radical to gain traction. Most notable of those was formalizing the error propagation and handling to wipe error wires out of most diagrams. I and two other researchers worked on that for almost a year, and we were really excited by the design, but the shipping timetable didn’t allow us to do it... so they implemented the same error cluster. We were told that we could do it later, but now it would be a breaking diagram change... bigger hurdles. Unlikely to happen now.  
 

There’s more. Those are the ones that come to mind easily. 

  • Like 1

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.


×
×
  • Create New...

Important Information

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