@cstanhope Interesting, I didn't know that about Pascal!
Go does make returning an accumulator a little more concise. Compare with e.g. Python:
def foo():
res = [] # not needed in Go
for x in y:
if z:
res.append(x)
return res
That's the biggest advantage I can see though.
miniblog.
Related Posts
It's so strange that we talk about languages being slow, and have done for years. Computer performance has increased so much in this time.
https://hbfs.wordpress.com/2009/11/10/is-python-slow/ (shared on HN in 2009) discusses Python being slow. My underpowered Thinkpad has 20x the single-threaded performance! https://www.cpubenchmark.net/compare/73vs3766/AMD-Athlon-64-4000+-vs-AMD-Ryzen-5-PRO-4650U
Maybe *relative* performance of languages matters more?
I have mixed feelings about the equality trait in Rust.
I have types where sometimes I want to compare by structure, and sometimes compare by reference.
I can only implement Eq for one, so which do I pick?
Benchmarking the cost of array bounds checks in Rust code: https://blog.readyset.io/bounds-checks/
The author even patches rustc to make sure *all* bounds checks are gone, in order to compare the performance!

