&gt; That&#x27;s also completely clear in the Julia version, if you learn a little Julia.<p>In every language I&#x27;ve used, the default is for a &quot;rand&quot; function to return random floats between 0 and 1, and given arguments it returns floats between the arguments. I don&#x27;t think it has to do with learning Julia, it is just that including &quot;integer&quot; in the function name makes it clear the function returns integers.<p>&gt; This is why I think the Julia approach is better. If I write `a == 7`, am I testing whether `a` is 7 or whether any of the elements of `a` are 7?<p>I think this is more of a comment about mixing arrays and scalars in a dynamic language. I made my comment assuming you are performing operations on arrays. If you are comparing two <i>arrays</i>, I think the default of element-wise operations makes more sense.