Mali, YogeshVan Wyk, Eric2020-12-102020-12-102011International SPIN Workshop on Model Checking of Software (SPIN 2011)https://hdl.handle.net/11299/217403Associated research group: Minnesota Extensible Language ToolsThis paper describes how new language features can be seamlessly added to an extensible specification of Promela to provide new (domain-specific) notations and analyses to the engineer. This is accomplished using ableP, an extensible specification and implementation of Promela, the modeling language used by the SPIN model checker. Language extensions described here include an enhanced select-statement, a convenient tabular notation for boolean expressions, a notion of discrete time, and extended type checking. ableP and the extensions are developed using the Silver attribute grammar system and the Copper parser and scanner generator. These tools support the modular development and composition of language extensions so that independently developed extensions can be imported into ableP by an engineer with little knowledge of language design and implementation issues.Building Extensible Specifications and Implementations of Promela with AblePReport