Notice: This Wiki is now read only and edits are no longer possible. Please see: https://gitlab.eclipse.org/eclipsefdn/helpdesk/-/wikis/Wiki-shutdown-plan for the plan.
TCS
TCS (Textual Concrete Syntax) is an Eclipse/GMT component that enables the specification of textual concrete syntaxes for Domain-Specific Languages (DSLs) by attaching syntactic information to metamodels. With TCS, it is possible to parse (text-to-model) and pretty-print (model-to-text) DSL sentences. Moreover, TCS provides an Eclipse editor, which features: syntax highlighting, an outline, hyperlinks, and hovers for every DSL which syntax is represented in TCS.
Contents
Questions and Discussions About TCS Usage
Questions and discussions about the usage of TCS should take place on the eclipse.modeling.tmf Eclipse newsgroup of the TMF project, of which TCS is a component. Please, remember to prefix the subject of your TCS-related posts with [TCS].
Bug reports, and feature requests should be made on the bugzilla TMF/TCS component.
Information About TCS
Existing TCS Definitions
The TCS Zoo is a library of languages that have already been defined in TCS. More precisely, their abstract syntax has been defined in KM3, and their concrete syntax has been defined in TCS.
Publications
- Jouault, F, Bézivin, J, and Kurtev, I : TCS: a DSL for the Specification of Textual Concrete Syntaxes in Model Engineering. In: GPCE'06: Proceedings of the fifth international conference on Generative programming and Component Engineering. 2006.
- Jouault, F, and Bézivin, J : On the Specification of Textual Syntaxes for Models. Eclipse Modeling Symposium at the first Eclipse Summit Europe, Esslingen, October 11-12, 2006.
Presentations
Misc
Sample Projects
Note that the following files worked with older versions of ATL and AM3. For new versions, see the TCS Language Project page.
- TCS toolkit and AddressBook use case: (Obsolete) Project, Tutorial
- (Obsolete) Sample project to inject a TCS file
- ICFG Language: an adapted version of OCL for the ATL language
- Alloy Language: a TCS definition for a subset of the Alloy language