Fail-stop
This article may contain original research. (May 2026) |
A fail-stop subset of a computer language is one that has the same semantics as the original, except in the case where an exceptional condition arises. The fail-stop subset must report an exceptional condition whenever the superset language reports one, but may additionally report an exceptional condition in other cases.
Fail-stop languages are often used in computer systems where correctness is very important, since it is easier to make such systems fail-fast. For example, the "+" operator in many programming languages is not associative because of the possibility of floating-point overflow. Repairing these languages to fail fast when commonly assumed properties do not hold makes it much easier to write and verify correct code.
Examples
In many widely used programming languages the code below might reduce the bank account value if the deposited amount or old account value is very large, by causing an overflowed value to be assigned to new_bank_account_value.
new_bank_account_value = old_bank_account_value + amount_deposited
// example calculation with 32-bit signed integers to demonstrate, which overflow above 2,147,483,647
// -2,147,483,646 = 2,147,483,640 + 10
But in a fail-stop language that treats overflow as an exceptional condition, it is either correct, or will terminate with an exceptional condition.
See also
Content Disclaimer
Informasi ini disarikan dari Wikipedia dan disajikan kembali untuk tujuan edukasi. Konten tersedia di bawah lisensi CC BY-SA 3.0. Kami tidak bertanggung jawab atas ketidakakuratan data yang bersumber dari kontribusi publik tersebut.
- The information displayed on this website is sourced in part or in whole from Wikipedia and has been adapted for the purpose of restating it. We strive to provide accurate and relevant information, however:
- There is no guarantee of absolute accuracy. Wikipedia is an open, collaborative project that can be edited by anyone, so information is subject to change.
- It is not intended to constitute professional advice. The content displayed is for informational and educational purposes only. For important decisions (e.g., medical, legal, or financial), please consult a professional.
- Content copyright. Wikipedia is licensed under the Creative Commons Attribution-ShareAlike License (CC BY-SA). This means that content may be reused with appropriate attribution and shared under a similar license.
- Responsible use. Any risk arising from the use of information from this website is entirely the responsibility of the user.