Call it &quot;result&quot;:<p>- &quot;val&quot; in &quot;retval&quot; carries no meaning. Everything stored in a variable is a value.<p>- &quot;ret&quot; is an annoying abbreviation for &quot;return&quot; that makes it harder read.<p>- &quot;return&quot; focuses on an implementation detail—that the function produces its value using the language&#x27;s &quot;return&quot; statement. It doesn&#x27;t matter how the result is emitted, just that it is.<p>If a function is simple enough that the variable storing the result doesn&#x27;t need a more specific name, &quot;result&quot; is a good default. You could call it &quot;sum&quot; here, but that shadows the function itself—a common problem for result variables—and doesn&#x27;t really tell us anything we don&#x27;t already know. We know we&#x27;re inside a &quot;sum&quot; function.