Vis enkel innførsel

dc.contributor.authorKats, Lennart C. L.eng
dc.contributor.authorKalleberg, Karl Trygveeng
dc.contributor.authorVisser, Eelcoeng
dc.date.accessioned2015-04-07T09:23:38Z
dc.date.available2015-04-07T09:23:38Z
dc.date.issued2010-09-17eng
dc.identifier.issn1571-0661en_US
dc.identifier.urihttps://hdl.handle.net/1956/9721
dc.description.abstractModern IDEs increase developer productivity by incorporating many different kinds of editor services. These can be purely syntactic, such as syntax highlighting, code folding, and an outline for navigation; or they can be based on the language semantics, such as in-line type error reporting and resolving identifier declarations. Building all these services from scratch requires both the extensive knowledge of the sometimes complicated and highly interdependent APIs and extension mechanisms of an IDE framework, and an in-depth understanding of the structure and semantics of the targeted language. This paper describes Spoofax/IMP, a meta-tooling suite that provides high-level domain-specific languages for describing editor services, relieving editor developers from much of the framework-specific programming. Editor services are defined as composable modules of rules coupled to a modular SDF grammar. The composability provided by the SGLR parser and the declaratively defined services allows embedded languages and language extensions to be easily formulated as additional rules extending an existing language definition. The service definitions are used to generate Eclipse editor plugins. We discuss two examples: an editor plugin for WebDSL, a domain-specific language for web applications, and the embedding of WebDSL in Stratego, used for expressing the (static) semantic rules of WebDSL.en_US
dc.language.isoengeng
dc.publisherElsevieren_US
dc.rightsAttribution-NonCommercial-NoDerivs CC BY-NC-NDeng
dc.rights.urihttp://creativecommons.org/licenses/by-nc-nd/3.0/eng
dc.subjectDomain specific languageeng
dc.subjectintegrated development environmenteng
dc.subjecteditor plugineng
dc.titleDomain-Specific Languages for Composable Editor Pluginsen_US
dc.typePeer reviewed
dc.typeJournal article
dc.description.versionpublishedVersionen_US
dc.rights.holderCopyright 2010 Elsevier B.V.en_US
dc.identifier.doihttps://doi.org/10.1016/j.entcs.2010.08.038
dc.source.journalElectronic Notes in Theoretical Computer Science
dc.source.40253
dc.source.147
dc.source.pagenumber149-163


Tilhørende fil(er)

Thumbnail

Denne innførselen finnes i følgende samling(er)

Vis enkel innførsel

Attribution-NonCommercial-NoDerivs CC BY-NC-ND
Med mindre annet er angitt, så er denne innførselen lisensiert som Attribution-NonCommercial-NoDerivs CC BY-NC-ND