Open MattWindsor91 opened 3 years ago
I quite like the idea of having a notion of inheritance:
sequence group Base : module -> world {
}
instantiate NoPid: Base {
AnglePID::P and AnglePID::D and SpeedPID::P and SpeedPID::I and RotationPID::D set to 0
}
then ideally you'd be able to distinguish the Base
instantiations from the NoPid
instantiations, but I'm unsure precisely how one would do that in EMF.
Currently, targets have a default instantiation that can only be overridden in assertions. However, there is at least one scenario where I can imagine it being useful to be able to define a sequence group that is exactly the same as an existing sequence group modulo further instantiations: being able to template up properties of the Segway then test them on lots of PID settings.
This might also make it easier to mix targets/sequences into CSP refinements, but I'm increasingly less convinced that having that functionality is good (after talking with Ana, and also after spending a lot of time trying to work out what it'll look like). Hmm.