Some Eclipse Foundation services are deprecated, or will be soon. Please ensure you've read this important communication.

Bug 341698

Summary: minimal version of detail level language
Product: [Modeling] eTrice Reporter: Thomas Schuetz <ts>
Component: CoreAssignee: Thomas Schuetz <ts>
Status: RESOLVED WONTFIX QA Contact:
Severity: enhancement    
Priority: P3    
Version: unspecified   
Target Milestone: ---   
Hardware: PC   
OS: Windows 7   
Whiteboard:

Description Thomas Schuetz CLA 2011-04-02 09:09:44 EDT
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()
	}
Comment 1 Henrik Rentz-Reichert CLA 2012-02-27 13:07:46 EST
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
Comment 2 Henrik Rentz-Reichert CLA 2012-02-27 13:09:19 EST
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
Comment 3 Henrik Rentz-Reichert CLA 2018-08-17 03:29:46 EDT
outdated bug - re-open if still relevant