Articulo de referencia

Parada por fallo

Un subconjunto de un lenguaje de programación que permite la detección y el seguimiento de errores es aquel que conserva la misma semántica que el original, salvo en caso de que...

Un subconjunto de un lenguaje de programación que permite la detección y el seguimiento de errores es aquel que conserva la misma semántica que el original, salvo en caso de que surja una condición excepcional . Este subconjunto debe informar de una condición excepcional siempre que el lenguaje que lo contiene lo haga, y además puede informar de una condición excepcional en otros casos.

Los lenguajes de detección de fallos se utilizan a menudo en sistemas informáticos donde la corrección es fundamental, ya que facilitan la detección rápida de fallos en dichos sistemas . Por ejemplo, el operador "+" en muchos lenguajes de programación no es asociativo debido a la posibilidad de desbordamiento de coma flotante . Modificar estos lenguajes para que detecten fallos rápidamente cuando no se cumplen las propiedades comúnmente asumidas facilita enormemente la escritura y verificación de código correcto.

Ejemplos

En muchos lenguajes de programación ampliamente utilizados, el siguiente código podría reducir el valor de la cuenta bancaria si el monto depositado o el valor anterior de la cuenta es muy grande, al provocar que se asigne un valor desbordado a new_bank_account_value.

new_bank_account_value = old_bank_account_value + amount_deposited // Ejemplo de cálculo con enteros con signo de 32 bits para demostrar, que desbordan por encima de 2.147.483.647 // -2.147.483.646 = 2.147.483.640 + 10

Pero en un lenguaje de programación que considera el desbordamiento como una condición excepcional, o bien es correcto, o bien finalizará con una condición excepcional.

Véase también