Community
Participate
Working Groups
To enable code completion and refactoring, a minimal version of a detail level language shoul be implemented. Requirements: - Mix with generated detail level language should be possible - sending of messages should be supported (port.message(argumentlist)) In the Fischertechnik demo model almost 100% of the implementation level code (e.g. Java) could be expressed only by adding port.message(argumentlist) Examples: State LinearUnitBackwards { entry { "drive.changeDirection(true);" "drive.start();" "timeout.Start(3000);" "sensorBack.getStatus();" } } -> could be expressed directly: State LinearUnitBackwards { entry { drive.changeDirection(true) drive.start() timeout.Start(3000) sensorBack.getStatus() } } A mix with the implementation level code could look like this: action { "if(x) lr.setOn();" "else lr.setOff();" } -> could be expressed like this: action { "if(x)" lr.setOn() "else" lr.setOff() }
As a first step an interface for detail code translation is provided. For Java nothing is translated, for C port.message() is translated. Done with 2eef2a2c385bd5a3716cd390f7c14e6374f8cd5d
We proposed a full solution of this subject as idea for the 2012 Google Summer of Code on http://wiki.eclipse.org/index.php?title=Google_Summer_of_Code_2012_Ideas#Generic_Action_Code_Language
outdated bug - re-open if still relevant