ThesaHelp: references a-b
Topic: dangling pointers
Topic: aliasing
Topic: safe use of pointers
Topic: initialized constants
Topic: static single assignment; SSA
Topic: undefined, null, and other signal values
Topic: program proof via assertions
Topic: error messages
| |
Reference
Boyland, J.,
"Alias burying: unique variables without destructive reads",
Software--Practice and Experience, 31, 6, pp. 533-553, May 2001.
Google
Quotations
534 ;;Quote: use alias burying to avoid destructive reads of 'read-once' variables; aliases must be dead when reading a unique field of possibly shared objects; static enforcement by restricting aliases across procedure calls
| 538 ;;Quote: a borrowed variable (a dynamic alias) is never stored in a field; owned elsewhere; may be used for computation or local variable, but it is never returned
| 538 ;;Quote: with dynamic aliases there may be data dependencies between writes through a unique field and reads through a dynamic alias
| 539 ;;Quote: using borrowed variables and annotations, defer read nullification until the variable becomes dead; need annotations on fields and method interfaces
| 543 ;;Quote: alias burying guarantees that aliases are never used; fields are never null unless explicitly set
| 545 ;;Quote: for alias burying, annotate parameters, return values, and fields as unique or borrowed; restricts use; need to analyze local variables
| 551 ;;Quote: alias burying my be used with existing compilers and run-time systems
| 551+;;Quote: alias burying requires a complex, intraprocedural analysis; minor source-level changes may lead to confusing error messages
|
Related Topics
ThesaHelp: references a-b (396 items)
Topic: dangling pointers (13 items)
Topic: aliasing (28 items)
Topic: safe use of pointers (102 items)
Topic: initialized constants (12 items)
Topic: static single assignment; SSA (19 items)
Topic: undefined, null, and other signal values (34 items)
Topic: program proof via assertions (61 items)
Topic: error messages (37 items)
|