Rust Traits and Generics

In this lesson we will be introduced to the concept of traits in rust, which enables you to write data structures that might be composed differently, but provide similar interfaces, enabling the implementation of generic types, which in turn allows for composing libraries that are easy to maintain and don't require complex rewrites to handle different forms of data that would otherwise have similar methods, i.e. behaviour.