The programming language Rust was created in 2007 with the intention of resolving a shortcoming that the C language had been grappling with for many years, without the hiccup of runtime pauses, as seen in languages that use a garbage collector (Java, Go).
The actual technical details of what these terms mean are not important. What stands out is a concept introduced and enforced in Rust through a compiler mechanism called the borrow checker.
Rust uses an ownership model, and the borrow checker verifies that ownership and borrowing rules are followed. If ownership becomes ambiguous or unsafe, it refuses to compile, come what may.
This forces the user to be clear about ownership and be accountable for that declaration. The C programming language, in contrast, trusts its writer.
It assumes the programmer will manage ownership as per their discretion, deferring the need for immediate declaration. This can be dangerous, as ambiguous ownership could mean nobody ends up taking responsibility, or everybody takes responsibility, which leads to fatal failures during runtime.
Don't we see such parallels in human behaviour as well? Problems remain unresolved due to a lack of ownership and accumulate like memory leaks, quietly consuming emotional bandwidth until, one day, they trigger a catastrophic failure that can permanently alter relationships and damage our decision-making.
A borrow checker approach to life increases the likelihood that all underlying issues are addressed with defined ownership and accountability, rather than deferring them for another day.
This does cause frequent conflicts and resistance in the short term, but in the long term, it makes sure one is always accountable for their actions. No acts or feelings go undefined or unresolved, leading to a safer and more stable relationship with oneself and others alike.
Comments
Post a Comment