There's only a small catch:
b cannot evaluate to a false value (false and nil), in all other cases, the two are nearly equivalent (The second one accumulates a little bit more overhead as it must evaluate the or clause, but the order of magnitude of the execution time are equivalent).