25.07.2014 Views

VDM-10 Language Manual

VDM-10 Language Manual

VDM-10 Language Manual

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

Appendix A. The Syntax of the <strong>VDM</strong> <strong>Language</strong>s<br />

A.9.5<br />

A.9.6<br />

The Nondeterministic Statement<br />

nondeterministic statement = ‘||’, ‘(’, statement,<br />

{ ‘,’, statement }, ‘)’ ;<br />

Call and Return Statements<br />

In <strong>VDM</strong>-SL a call statement looks like:<br />

call statement = name, ‘(’,<br />

[ expression list ], ‘)’ ;<br />

In <strong>VDM</strong>++ and <strong>VDM</strong>-RT a call statement looks like:<br />

A.9.7<br />

A.9.8<br />

A.9.9<br />

call statement = [ object designator, ‘.’ ],<br />

name, ‘(’, [ expression list ], ‘)’, ;<br />

object designator = name<br />

| self expression<br />

| new expression<br />

| object field reference<br />

| object apply ;<br />

object field reference = object designator, ‘.’, identifier ;<br />

object apply = object designator, ‘(’, [ expression list ], ‘)’ ;<br />

return statement = ‘return’, [ expression ] ;<br />

The Specification Statement<br />

specification statement = ‘[’, implicit operation body, ‘]’ ;<br />

Start and Start List Statements (<strong>VDM</strong>++ and <strong>VDM</strong>-RT)<br />

start statement = ‘start’, ‘(’, expression, ‘)’ ;<br />

start list statement = ‘startlist’, ‘(’, expression, ‘)’ ;<br />

The Duration and Cycles Statements (<strong>VDM</strong>-RT)<br />

duration statement = ‘duration’, ‘(’, numeric literal, ‘)’,<br />

statement ;<br />

cycles statement = ‘cycles’, ‘(’, numeral, ‘)’,<br />

statement ;<br />

195

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!