The thinking about states in the FSM is similar to that in VFP. It is object-oriented style. The advantage of the FSM is the small size of the engine to drive it. One doesn't need a full blown OOP like VFP to write an app. Most of the logic is in arrays holding the state information. Note that moving from one state to the next also includes the ability to execute an output function just like in OOP so you need to code the output functions.

Another problem with thinking in VFP is that commercial frameworks are based on forms so now everything looks like a form. Not all apps require forms such as the examples I mentioned in my last note.

Nick Geti

----- Original Message ----- From: "Stephen Russell" <[email protected]>
To: "ProFox Email List" <[email protected]>
Sent: Thursday, December 19, 2013 11:46 AM
Subject: Re: Finite State Machine


On Thu, Dec 19, 2013 at 10:32 AM, Dave Crozier <[email protected]> wrote:

Stephen,
Yes, I believe this model is used in large tax systems as it is to process large "queueing" systems. We used it because it is flexible and we used to
call it "Dynamic Jump-pad"  programming used when memory is at a premium
and the coding you start off with in a process isn't necessarily the coding you end up with because the code in te State responses actually can modify
an existing set of response code.

At the time this really opened my eyes on two fronts.
a. The strength and versatility of assembler coding
b. The ability of a "program" to effectively "learn" by modifying itself.
This was necessary because we only had 8K of core in those days and so to
operate efficiently we didn't want to overlay code from disk back into
memory so we dynamically altered code whilst it was in memory.

The project was to write an operating system that supported Point of Sale
Tills as external nodes, each of which was firing transactions back to a
mainframe at any time so the mainframe had to be able to queue the
events/transactions effectively. Using conventional if...else topdown
technology would never have worked and would have become too large anyway.

We ended up streaming 4 FSM program models together in parallel in order
to process the transactions which effectively did away with the
conventional "polling technique" that most people would have used to create a solution. Funnily enough, OOP was only a glimmer in the sky at that stage
but to all intents and purposes we were using all the OOP techniques in
creating a solution to the problem.

It must have worked as it was only decommissioned 5 years ago after 25
years of operation on the same hardware!!!
-----------------



Awesome.

I bounce back and forth between easy code and workflow code.  We have an
asset approval process that s butt ugly in rules that use to be all hard
coded.  Now have modules that determine state and only get the rules that
pertain in this situation.  It take a bunch of sign-off here to buy
something.  # of people required  is determined by asset type and cost.


--
Stephen Russell
.

---
This email is free from viruses and malware because avast! Antivirus protection 
is active.
http://www.avast.com


_______________________________________________
Post Messages to: [email protected]
Subscription Maintenance: http://mail.leafe.com/mailman/listinfo/profox
OT-free version of this list: http://mail.leafe.com/mailman/listinfo/profoxtech
Searchable Archive: http://leafe.com/archives/search/profox
This message: 
http://leafe.com/archives/byMID/profox/14C4AA84D6F94EC69A1D47BB43E4F77A@dual
** All postings, unless explicitly stated otherwise, are the opinions of the 
author, and do not constitute legal or medical advice. This statement is added 
to the messages for those lawyers who are too stupid to see the obvious.

Reply via email to