Rust: Borrow handler got mad at you for asking
(I’d assume)
It’s either a reference to an object instance, or the instance itself (depending on whether you specified
&mut self
,or just
self
).
Partially unrelated to the meme, but I find it almost malicious how some python keywords are named differently from the nearly universal counterpart of other languagues.
This/self, continue/pass, catch/except and they couldn’t find a different word for switch so they just didn’t implement it.
It’s as if the original designers purposefully wanted to be different for the sake of it.
PHP naming “::” a Paamayim Nekudotayim is also pretty infamous.
When I’m designing shit, I’m pretty zealous about borrowing terminology from anything even vaguely related to avoid this.
Iv come to loathe the “pythonic way” because of this. They claim they wanted to make programming easier, but they sure went out of their way to not follow conventions and make it difficult to relearn. For example, for me not having lambdas makes python even more complex to work with. List operations are incredibly easy with map and filter, but they decided lambdas weren’t “pythonic” and so we have these big cumbersome things instead with wildly different syntax.
Speaking of big cumbersome things with wildly different syntax have you tried a ternary operation in python lately? Omg that thing is ugly. JavaScripts is hard to beat.
uglyTernary = True: if python_syntax == “shit” else: False prettyTernary = javascript_syntax == “pretty” ? true : false
That’s just because you’re used to it. The pythonic ternary is structured like spoken language, which makes it easier to read, especially if you nest them.
Is there an objective argument for the conventional ternary, other than „That’s how we’ve always done it!“?
The conventional ternary is structured like a normal if-else. In fact, in many languages with functional influence, they’re the same thing.
For example, you can write this in Rust:
let vegetable = if 3 > 4 { "Potato" } else { "Tomato" };