As I wrote elsewhere, garbage collection - manual memory management correspond to intuitionistic logic - linear logic. So garbage collection is a technology with logical implications.

There are further technologies (compiler algorithms) behind perennialisation - linear logic admits exponentials, and indeed languages such as C have perennially typed values (for instance, of type int) which are stack-allocated or placed in registers.

Liveness Analysis - Register Allocation

Liveness analysis, spilling are technologies behind the "finger of Thomism" that lets register-bound and stack-allocated values be perennial - a C value of type int can be reused freely.


Type theoretic decisions require backing in the compiler.

The complexity of such algorithms matters; if liveness analysis were \(O(2^n)\), perennial types would hardly be viable.