Deriving borrowing from destructor-based linearity

Determine whether and how borrowing of resources can be derived in a principled way from the destructor-based notion of linearity (ownership) introduced in the paper’s framework for ordered call-by-push-value with exceptions and the allocation monad, so that resources can be used between allocation and deallocation without consumption while preserving the established resource-safety properties.

Background

The paper models resources as first-class values equipped with destructors and integrates exceptions within an ordered call-by-push-value setting via a slice category over TI and an allocation monad. This framework yields resource-safety guarantees: resources are released exactly once, in LIFO order in the ordered fragment and in arbitrary order in the linear fragment.

While the paper focuses on allocation and deallocation, it acknowledges that practical systems (e.g., Rust) support borrowing, which allows non-consuming use of resources between allocation and deallocation. The authors note that existing works address borrowing with different methodologies, but they pose the specific challenge of deriving borrowing directly and principledly from their destructor-based linearity/ownership perspective.

References

As we already mentioned, various works account for borrowing using different approaches, but it remains to be seen whether and how borrowing may be derived in a principled way from a concept of linearity (ownership) arising from destructors.

Linear effects, exceptions, and resource safety: a Curry-Howard correspondence for destructors  (2510.23517 - Congard et al., 27 Oct 2025) in Conclusion and future work (Borrowing), Section 6