Why did you make the return of write discardable? Austral semantics require all 
linear types have _exactly one_ consumer, so discarding it would be a 
compile-time error.

I think the interesting part with the linear type mechanics is that the 
compiler forces proper use of a state machine. A file _must_ be closed, because 
the handle _must_ be consumed, and a mutable borrow allows changing an object 
but not the permit to destroy it. They don't have magic functions like 
=destroy, it's just the typing rule system that requires you to call a 
destructor-like function at some point.

Reply via email to