Content deleted Content added
Added link to J. C. Reynolds |
Added short description Tags: Mobile edit Mobile app edit Android app edit App suggested edit App description add |
||
(24 intermediate revisions by 20 users not shown) | |||
Line 1:
{{Short description|Methodology of programming}}
'''Invariant
Writing invariants before program statements has been considered before in a number of different forms by, e.g, M.H. van Emden, [[Edsger Dijkstra|E.W. Dijkstra]], [[John_C._Reynolds|J.C. Reynolds]] and [[Ralph-Johan Back|R-J Back]].▼
▲
▲Most existing programming languages are not ideal for invariants-first programming, since the main organizing structures in algorithmic code are control flow blocks such as [[For loop|<tt>for</tt> loops]], [[While loop|<tt>while</tt> loops]] and [[If statement|<tt>if</tt> statements]]. This forces the programmer to make decisions about control flow before writing the invariants, which should be avoided. Furthermore, most programming languages do not have good support for writing specifications and invariants, since they lack quantifier operators and one can typically not express higher order properties such as permutation of arrays well.
==
* [[Eiffel (programming language)]]
== References ==
<references/>
[[Category:
[[Category:Programming paradigms]]
|