Z++

{{Short description|Object-oriented extension to the Z specification language}}

{{Distinguish||text=the Z++ that is a version of the C++ programming language}}

{{Use dmy dates|date=April 2022}}

{{no footnotes|date=January 2013}}

Z++ (pronounced zed, or zee in American pronunciation, plus plus) is an object-oriented extension to the Z specification language.

Z++ allows for the definition of classes, and the relation of classes through inheritance, association, or aggregation. The primary construct of Z++ is a class. A Z++ class consists of a number of clauses which are optional.

Z++ class structure

CLASS ClassName

[OWNS List_of_attributes]

[FUNCTIONS constant_definitions]

[TYPE type_declaration]

[ENTENDS list_of_super_classes]

[OPERATIONS list_of_state_change_operations_definitions]

[RETURNS list_of_query_operations_definitions]

[ACTIONS all_operations_declarations]

[INVARIANT predicates]

[HISTORY RTL_predicates]

END CLASS

See also

References

{{refbegin}}

  • Lano, K.C., Z++, an Object-Oriented Extension to Z. Z User Workshop, Oxford 1990, Springer, Workshops in Computing, 1991, pp. 151–172.
  • Lano, K.C., Formal Object-Oriented Development. Springer-Verlag, London, 1995.
  • AAOB - Thesis 2009.

{{refend}}

Category:1990 introductions

Category:Specification languages

Category:Z notation

Category:Object-oriented programming

{{compu-lang-stub}}