Very minor thing: but here an example Float64 (same thing for Float32):
CAS deprecated https://github.com/uber-go/atomic/blob/master/float64_ext.go#L49
Use of CAS (same file) https://github.com/uber-go/atomic/blob/master/float64_ext.go#L35
Extra note: CAS is implemented by using the suggested replacement CompareAndSwap
(same file) https://github.com/uber-go/atomic/blob/master/float64_ext.go#L50