&gt; Code can only tell you about the implementation - never the intent.<p>Maybe in some purely technical sense this is true, but in a meaningful one it isn&#x27;t.  At an absolute minimum, names reveal intent -- which is why naming is so important.<p>Regarding your other example, you are always free to wrap what you don&#x27;t control in objects that have the intention-revealing semantics (read: correctly named behavior) that you desire.<p>It&#x27;s impossible to tell from that single line of code if there are other options as well (the surrounding context is missing, and that&#x27;s where meaning comes from), but you always have some options.  I&#x27;ll grant that in some cases the cure is worse than the disease -- that is, the changes needed to truly reveal your intent in the code would lead to over-engineered complexity.  But typically I find that is not the case.