PlusCal algorithm language
E467808
PlusCal algorithm language is a high-level pseudocode-style language designed by Leslie Lamport for writing and reasoning about algorithms that can be automatically translated into TLA+ specifications.
Observed surface forms (1)
| Surface form | Occurrences |
|---|---|
| PlusCal | 1 |
Statements (48)
| Predicate | Object |
|---|---|
| instanceOf |
algorithm description language
ⓘ
formal specification-related language ⓘ pseudocode-style language ⓘ |
| canBeTranslatedTo | TLA+ NERFINISHED ⓘ |
| createdByOrganization | Microsoft Research (through work of Leslie Lamport) NERFINISHED ⓘ |
| designedBy | Leslie Lamport NERFINISHED ⓘ |
| designGoal |
bridge gap between informal pseudocode and formal specifications
ⓘ
make TLA+ accessible to programmers familiar with pseudocode ⓘ |
| documentation | The PlusCal Algorithm Language (by Leslie Lamport) NERFINISHED ⓘ |
| domain |
algorithm specification
ⓘ
concurrent system design ⓘ formal methods ⓘ |
| embeddedIn | TLA+ module comments ⓘ |
| executionModel | state-based ⓘ |
| hasControlConstruct |
for loops
ⓘ
goto-like jumps via labels ⓘ if-then-else ⓘ while loops ⓘ |
| hasDistributionForm | process-based syntax for concurrent processes ⓘ |
| hasFeature |
atomic blocks
ⓘ
fairness annotations ⓘ labels ⓘ macro definitions ⓘ nondeterministic choice ⓘ procedures ⓘ structured control flow ⓘ variables ⓘ |
| hasFullName | PlusCal algorithm language NERFINISHED ⓘ |
| isHighLevel | true ⓘ |
| languageFamily | algorithmic specification languages ⓘ |
| purpose |
reasoning about algorithms
ⓘ
writing algorithms in a high-level pseudocode style ⓘ |
| relatedTo |
TLA+ specification language
NERFINISHED
ⓘ
model checking ⓘ pseudocode ⓘ |
| semanticsDefinedBy | translation to TLA+ ⓘ |
| style | pseudocode-like ⓘ |
| supports |
concurrent algorithms
ⓘ
distributed algorithms ⓘ sequential algorithms ⓘ |
| supportsReasoningAbout |
liveness properties
ⓘ
safety properties ⓘ |
| toolSupport |
PlusCal translator
NERFINISHED
ⓘ
TLA+ Toolbox NERFINISHED ⓘ |
| translationTarget | TLA+ specification ⓘ |
| typicalUseCase |
specifying concurrent algorithms for verification
ⓘ
teaching formal specification of algorithms ⓘ |
| verificationVia | TLC model checker NERFINISHED ⓘ |
Referenced by (2)
Full triples — surface form annotated when it differs from this entity's canonical label.
this entity surface form:
PlusCal