CoFIMain Page | About | Help | FAQ | Special pages | Log in

Printable version | Disclaimers | Privacy policy

Origins of CASL

From CoFI

Casl, The Common Algebraic Specification Language

The specification language developed by CoFI is called Casl: the Common Algebraic Specification Language. Its main features are:

The Casl design effort started in September 1995, as a common effort of the Compass Working Group [28] and IFIP WG1.3 (Foundations of System Specification). An initial design was proposed [12] in May 1997 (with a language summary, abstract syntax, formal semantics, but no agreed concrete syntax) and tentatively approved by IFIP WG1.3.

The report of the IFIP referees [24] on the initial Casl design proposal suggested reconsideration of several points in the language design, and requested some improvements to the documents describing the design; the response by the language designers to the referees [13] indicates the improvements that were made in the revised language design and its documentation. Apart from a few details, the design was finalized in April 1998, with a complete draft language summary available, including concrete syntax. Casl version 1.0 was released in October 1998, and Casl version 1.0.1 was officially approved by IFIP WG1.3 in April 2001. The present version 1.0.2 is documented in the Casl Reference Manual, and illustrated in the Casl User Manual (both published by Springer in LNCS in 2004).

Casl subsumes many previous languages for the formal specification of functional requirements and modular software design. Tools for Casl are interoperable, i.e. capable of being used in combination rather than in isolation. Casl interfaces to existing tools extend this interoperability.

Even though the intention was to base the design of Casl on a critical selection of concepts and constructs from existing specification languages, it was not easy to reach a consensus on a coherent language design. A great deal of careful consideration was given to the effect that the constructs available in the language would have on such aspects as the methodology and tools. A complete formal semantics for Casl was produced in parallel with the later stages of the language design (in fact Casl had a formal semantics even before its concrete syntax was designed [15]), and the desire for a relatively straightforward semantics was one factor in the choice between various alternatives in the design.

Retrieved from ""

This page has been accessed 13,528 times. This page was last modified 03:23, 17 August 2007.


Main Page
Recent changes
Random page
Wiki help
CASL Extensions
Basic Libraries
Case Studies
Mailing Lists
View source
Editing help
This page
Discuss this page
Post a comment
Printable version
Page history
What links here
Related changes
My pages
Log in / create account
Special pages
New pages
File list
Bug reports