Up Next
Go up to Top
Go forward to 2 Input Syntax

1 Introduction

Concrete syntax involves both input syntax (for writing and editing, and subsequent parsing) and display format (for browsing on the screen, and publication on paper). The input syntax should preferably be easy to relate to the display format, and sufficiently readable for use in (plain-text) e-mail messages.

Section 2 below provides a context-free grammar for the proposed CASL input syntax. It has been derived systematically from the `abbreviated' abstract syntax grammar in [LD98]--mainly just by replacing the prefix constructors of the latter by mixfix notation.

Section 3 provides precedence rules for disambiguation.

Section 4 specifies the lexical symbols of the proposed concrete syntax.

Section 5 indicates how each input symbol might be displayed when formatted for printing using LaTeX. (Some mathematical symbols are simply displayed as the corresponding input symbols in this HTML version.)

Finally, Section 6 shows how comments and various kinds of annotations might be written.

Acknowledgements: This proposal for the concrete syntax of (basic and structured) specifications in CASL has been developed from the earlier proposals from Bremen [KB97] and Paris [VBC97]. The authors thank Anne Haxthausen, Till Mossakowski, Don Sannella, and Andrzej Tarlecki for their reactions to previous proposals. Discussions of concrete syntax with the participants of the CoFI task group meetings in Amsterdam (27 September 1997) and Bremen (9-11 January 1998) were very helpful too. Thanks also to Mark van den Brand and Bjarke Wedemeijer for producing a prototype parser for CASL using ASF+SDF.


CoFI Document: CASL/SyntaxIssues --Version 0.99-- 17 February 1998.
Comments to cofi-language@brics.dk

Up Next