UoY-RoboStar / robosim-textual

This repository contains the plugins for the RoboSim textual editor.
Eclipse Public License 2.0
0 stars 0 forks source link

Semantics of software operations in RoboSim #4

Open pefribeiro opened 4 years ago

pefribeiro commented 4 years ago

Here is a potential issue to consider regarding software operations in RoboSim. In RoboChart such an operation can be defined a state machine, and so we would expect to be able to define the same kind of software operation in RoboSim.

Observe, however, that a RoboSim state machine (SimMachineDef) has quite a different semantics from RoboChart state machines. If we take the interpretation that the semantics is simply that given to a RoboSim SimMachineDef, then it includes things like a cycle of its own, and so forth, which is not really the intended use for a software operation in RoboSim. Not to mention, that it needs to define inputs/outputs via Contexts.

On the other hand, if we view such a software operation in RoboSim as having a semantics similar to a RoboChart state machine, but with the understanding it is defined in RoboSim, we still need to take into account that it can only use RoboSim primitives, but it has no input/outputs explicitly defined. Hence, it is a hybrid between RoboSim and RoboChart.

Observe that although this is a semantics problem, it also has an impact regarding the type of Operation in the metamodel that may be used in a RoboSim model, so I'm recording this issue in this repository.