<div dir="ltr"><div class="gmail_extra"><div class="gmail_quote">On Fri, Sep 9, 2016 at 9:10 AM, Henry Baker <span dir="ltr"><<a href="mailto:hbaker1@pipeline.com" target="_blank">hbaker1@pipeline.com</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">There *is* such a computer language notion: so-called "linear" types.<br>
<br>
A "linear" object is one which has exactly one reference, and the language and type system conspire to ensure that this constraint is preserved.</blockquote><div><br></div><div>In Rust they're referred to as affine types, lifetimes, or region types. But they do exactly that. Unfortunately they don't zero-on-drop anymore, but that's semantics you can easily add through Rust's Drop trait, and there are many libraries for storing secrets which implement such semantics.</div><div> </div></div>-- <br><div class="gmail_signature" data-smartmail="gmail_signature">Tony Arcieri<br></div>
</div></div>