ContentsWhat is PlusCal? Obtaining PlusCal Papers About PlusCal Version History The Specification of the Translator
An algorithm language is for writing algorithms, just as a programming language is for writing programs. The introduction to the PlusCal manual (see below) explains how algorithms differ from programs, and how PlusCal differs from programming languages.
endinstead of the braces
}. There are separate versions of the manual for the two syntaxes, which are briefly compared in both versions.
Click HERE to download the c-version of the manual.
Click HERE to download the p-version of the manual.
Click HERE to download a TLA+ specification of the PlusCal to TLA+ translation.
The PlusCal translator is available as part of the TLA+ tool set.
Version 1.6 of July 2011
- Small change to the syntax for specifying fairness.
- Previously defined macros may not be called inside a macro definition.
Version 1.5 of March 2011
- Added a new way of specifying fairness, with:
* A fair keyword and + modifier for specifying weak and strong process fairness.
* + and - label modifiers for adjusting an atomic action's fairness.
- Improved the TLA+ translation to:
* Eliminate the
pc variable if it's
* Eliminate stuttering-on-termination when obviously never executed.
- Added a
-version option for maintining backwards compatability.
Version 1.4 of June 2010
- Added the
options statement and the
Version 1.3 of February 2008
- Added await as a synonym for when.
Version 1.2 of August 2007
defaultInitValue for uninitialized variables.
Version 1.1 of October 2006
- Added several options, including ones for adding missing labels.
- Added the c-syntax.
-version 1.4option. (The
-writeASToption does not work in the Toolbox.)