&gt; The point is to sell Swift. In the C++ example, he didn&#x27;t cast each integer to int64, but he manufactured a reason to do it in Go and Swift.<p>Wow, the crazy is strong with this one. The reason for the cast is that C++ follows C in implicitly converting between integer sizes but neither Swift nor Go do, remove the casts and the code <i>doesn&#x27;t compile</i>:<p><pre><code>    &gt; swiftc -O test.swift -o test_swift
    test.swift:8:18: error: cannot convert value of type &#x27;Int&#x27; to expected argument type &#x27;Int64&#x27;
            x.append(i);

    &gt; go build test.go
    # command-line-arguments
    .&#x2F;test.go:12: cannot use i (type int) as type int64 in append
</code></pre>
And while the correct fix was probably to type the loop variable as an int64 (which incidentally is ugly and non-obvious in Go, you have to convert one of the for loop&#x27;s bounds to an int64 were Swift will just let you explicitly type the loop variable to Int64) it also changes jack shit to the runtime:<p><pre><code>    &gt; time .&#x2F;test-go-type
    9999010000
    .&#x2F;test-go-type  10.88s user 0.86s system 153% cpu 7.660 total

    &gt; time .&#x2F;test-go-cast
    9999010000
    .&#x2F;test-go-cast  11.04s user 0.87s system 154% cpu 7.699 total</code></pre>