2,814 karma · joined August 2, 2019
This definitely relaxes my ai-hype anxiety
uninitialized memory, illegal writes, etc... There's a lot of good stuff that could be discovered.
The older I get the more I value commit messages. It's too easy to just leave a message like "adding valgrind support", which isn't very useful to future readers doing archaeology.
The revelation that the ground does not stay where I left it was quite disturbing.
Given how some of the other ergonomic changes in go have gone (closures capturing loop variables, for instance), I'd support a change to lexical scoped defers if it were on the table.
was being called paranoid not also predictable?
hopefully both gccgo and any llvm backed implementations eventually mature to production grade. I think the thing that'll hold them back is that the toolchain is (by definition) completely different. 'go build .' is pretty nice.
the biggest value they bring is that unclear parts of the specification=be brought to light and clarified.
That was my biggest problem, that and I wasn't actually on-board for the skip. Educators need to learn how to admit when they fucked up and learn how to improvise a new strategy.
My middleschool principal thought it'd be a good idea to skip me over pre-algebra into alg 1.
Turns out that doesn't work great, and I still have confidence issues because I have a hard time remembering the properties of addition & multiplication by name. I know the rules.
cut it anyway then deal with the 'consequences' in court. obviously.
I'm curious if you could speak more to this? Is the concern that operations may get reordered?
> To put it in perspective, until 2021 Go was always passing the data on the stack on function calls. It has improved since then but the overall design aims to ensure common scenarios are fast (e.g. comparisons against string literals are unrolled) but once you venture outside that or if it's an optimization that requires more compiler complexity - Go is far less likely to employ it.
I agree with this assesment.
The individual operations in the repository (e.g., dot product) look like they could be autovectorized. I'm assuming they aren't because of the use of a slice. I'm mildly curious if it could be massaged into something autovectorized.
Most of my observations re: autovectorization in go have been on fixed sized vectors and matrices where SSE2 instructions are pretty readily available and loop unrolling is pretty simple.
I'm curious what it would produce with the matrix in a single slice rather than independent allocations. Not curious enough to start poking at it, just curious enough to ramble about it conversationally.