blob: bd952f1451a82492c79394abcb155fabbf7ebffa (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
|
Types of crashes/errors
=======================
These are easy to catch at compile time, and will definitely be catch in
SLUL:
* Memory corruption
* Null pointer
* Uninitialized value
These are hard to catch at compile time, and generally not caught by safe
languages:
* Stack overflow
* Out of memory
* Non-termination
* Value errors:
- Integer range error
- Index out of bounds
- "Semantic type confusion"
- For example, if you have a list of "Red","Green","Blue"
and you put "Long" inside it, you might have semantic
type confusion.
- Paired value mismatch
- For example, taking x and y coordinates from different
`Point` objects.
- Unsanitized data
- Temporally wrong state
- The object state could be correct at some other point in time,
but isn't correct now.
- Structurally wrong state
- The object should never be in this state.
|