- They try to trademark the words "Rust" and "Cargo" which are common words in the English language
- You can not use "rust" in your domain name(?!), course name, video name, whatever, unless approved by the foundation
- Trying to impose a "Rust Foundation" approved CoC to all on- and off-line communities or events revolving around the language (the language, not foundation!)
- All off-line events about Rust need to ban their participants from carrying firearms
- Overrule any existing fair-use rights by prohibiting any modification (other than scaling) to the logo
- You need to constantly state that you are not affiliated or endorsed by the Rust Foundation when talking about the language (e.g. you want to write a tutorial, book or even answer on Stack Overflow?)
Needless to say that most, if not all, of those rules will be impossible to enforce. The foundation can try by spending all their funds and energy to fight lawsuits because some kid in India used "Rust" in their domain name or a bunch of rednecks hold a conference with guns in their pockets, but that time and energy could be better used elsewhere.
There are two important concepts that can be generalized: - Substitution, the method of renaming and replacing variables - Abstraction, replacing a variable with another term (function) that can also serve as output
This should give you a more natural feel to concepts like parametrization or what it means that the solution to one function may be another function. Perhaps you might even look a bit into the simply typed lambda calculus which has given me yet more perspectives on the fundamentals of mathematics.