Difference between or and || when setting variables
ruby
Solution
`or` has lower precedence than `=`.
test = nil or true
is the same as
(test = nil) or true
which is `true`, while setting `test` to `nil`.
`||` has higher precedence than `=`.
test = nil || true
is the same as
test = (nil || true)
which is `true`, while setting `test` to `true`.
Problem
I was under the impression that `||` and `or` were synonymous. Setting variable with `or` does not hold value; why? ``` >> test = nil or true => true >> test => nil >> test = false or true => true >> test => false ``` Works 'as expected' with `||` ``` >> test = nil || true => true >> test => true ```