Object-Z
is an
object-oriented
Object-oriented programming (OOP) is a programming paradigm based on the concept of "objects", which can contain data and code. The data is in the form of fields (often known as attributes or ''properties''), and the code is in the form of pro ...
extension to the
Z notation
The Z notation is a formal specification language used for describing and modelling computing systems. It is targeted at the clear specification of computer programs and computer-based systems in general.
History
In 1974, Jean-Raymond Abrial ...
developed at the
University of Queensland
, mottoeng = By means of knowledge and hard work
, established =
, endowment = A$224.3 million
, budget = A$2.1 billion
, type = Public research university
, chancellor = Peter Varghese
, vice_chancellor = Deborah Terry
, city = B ...
,
Australia
Australia, officially the Commonwealth of Australia, is a Sovereign state, sovereign country comprising the mainland of the Australia (continent), Australian continent, the island of Tasmania, and numerous List of islands of Australia, sma ...
.
Object-Z extends Z by the addition of
language construct
In computer programming, a language construct is a syntactically allowable part of a program that may be formed from one or more lexical tokens in accordance with the rules of the programming language.
The term "language construct" is often used ...
s resembling the
object-oriented
Object-oriented programming (OOP) is a programming paradigm based on the concept of "objects", which can contain data and code. The data is in the form of fields (often known as attributes or ''properties''), and the code is in the form of pro ...
paradigm, most notably,
classes. Other object-oriented notions such as
polymorphism and
inheritance
Inheritance is the practice of receiving private property, Title (property), titles, debts, entitlements, Privilege (law), privileges, rights, and Law of obligations, obligations upon the death of an individual. The rules of inheritance differ ...
are also supported.
While not as popular as its base language Z, Object-Z has still received significant attention in the
formal methods
In computer science, formal methods are mathematically rigorous techniques for the specification, development, and verification of software and hardware systems. The use of formal methods for software and hardware design is motivated by the expec ...
community, and research on aspects of the language are ongoing, including hybrid languages using Object-Z,
tool support (e.g., through the
Community Z Tools The Community Z Tools (CZT) initiative is based around a SourceForge project to build a set of tools for the Z notation, a formal method useful in software engineering. Tools include support for editing, typechecking and animating Z specifications. ...
project) and
refinement calculi.
See also
*
Z++
References
External links
The Object-Z Home PageCommunity Z Tools (CZT) project
Z notation
Specification languages
Formal specification languages
Object-oriented programming
University of Queensland
{{compu-lang-stub