FTA: “In C, the following declares x to be a pointer, but (surprisingly at first!) y to be a normal integer:<p><pre><code> int* x, y;
</code></pre>
Whereas the equivalent in Go does what you’d expect, declaring both to be pointers:<p><pre><code> var x, y *int</code></pre>
”*<p>I don’t see how that’s an argument in favour of <i>`age int`</i> over <i>`int age`</i>. Both C could easily have picked the alternative semantics. Go could have, too:<p><pre><code> var x*, y* int; // two pointers
var x, y* int; // x is an int, y a pointer to int
</code></pre>
or<p><pre><code> var *x, *y int; // two pointers
var x, *y int; // x is an int, y a pointer to int</code></pre>