3 ms·
I'm sort of torn on using these magic operators in Ruby, and i've used ruby since the 1.4 days. For example this: some_var &&= replace_var() some_var
by mitchty 15y ago
I'm sort of torn on using these magic operators in Ruby, and i've used ruby since the 1.4 days.
For example this:
some_var &&= replace_var()
some_var ||= initialize_var()
versus a more conventional/idiomatic if:
some_var = (some_var) ? replace_var() : initialize_var()
||= turns out to be rather useful as a general assign once operator, but i'm having a hard time justifying use of &&=. That and I find myself after learning Erlang to try to assign only once when possible to make debugging easier.
While ||= isn't strictly needed, it makes assigning to class/module variables in a single line easier in general. I'm not sure I agree with the Python "always expand to an if statement" methodology though, it just seems like a bit of unneeded yak shaving. (note: i don't use rails so your post may be specific to web frameworks and I'm off my rocker, if so disregard. >.<)