Efficient Deconstruction with Typed Pointer Reversal
The resource-management model of C++ and Rust relies on compiler-generated destructors called predictably and reliably. In current implementations, the generated destructor consumes stack space proportionally to the depth of the structure it destructs. We describe a way to derive destructors for algebraic data types that consume a constant amount of stack and heap. We discuss applicability to C++ and Rust, and also some implication for anyone wishing to extend an ML-style language with first-class resources.
Thu 22 Aug
|13:30 - 13:55|
Steven CheungUniversity of Birmingham, UKFile Attached
|13:55 - 14:20|
Jean-Baptiste JeanninUniversity of Michigan, USAFile Attached
|14:20 - 14:45|