New Control Flow and Error Handling in 8.0

Version 8.0 of Kapow Katalyst introduces a new way to display a robot's control flow and contains extensive changes to the way errors are handled. This affects all robots, even those built with previous versions, meaning that although they still work in the same way, these robots will look differently when opened in version 8.0 or newer. For the benefit of users of the earlier versions of Kapow Katalyst, this chapter will give examples of the differences.

Branch Points and Try Steps

The most visible change is that ordinary steps now can have only one outgoing connection. If the step has more than one step following it, an explicit branch point (a small circle) or a Try step is inserted after it. These new steps are the only ones that can have more than one connection going out from them.

This also means that the "Branching Mode" property has disappeared from the step configuration. If a step previously had the "All Branches" branching mode, it will now be followed by a branch point as seen in the following example. First a snippet of a robot as it looked in version 7.2:

In version 8.0, the same robot now looks as follows:

Of course a branch point is only inserted after a step if it has more than one step following it.

If the step previously had the "Until Successful Branch" branching mode, it will now be followed by a Try step rather than a branch point. This step is a core component of the new way to handle errors and is described in Error Handling; at this point we will merely show an example of what it looks like. Consider the following part of a version 7.2 robot:

When you open this robot in version 8.0, it will look this this:

End Steps

The introduction of End steps is a small but important change. An End step does nothing (in particular it does not end robot execution), but it provides an explicit and automatically inserted "last step" on each and every branch in the robot. This means that if you click on an End step (in Design Mode), all of the branch will be executed. Previously, Do Nothing steps were often added manually to serve the same purpose. This is no longer necessary.

A single explicit "begin robot" marker (a right-pointing triangle) is also displayed in each robot. It is provided merely for balance, and because it makes a robot a bit more similar to a group step (another new feature).

The following complete robot shows both End steps and the marker at the beginning of the robot. In version 7.2, the robot looked like this:

And when opened in version 8.0, the same robot looks like this: