News for hackers. Stuff that matters.
Re:Go 1.19 Released by geodel on Tuesday August 02, 2022 @03:25PM (#32323146)
Yeah, everyone expected Go to never implement any optimization if it is not in v1.0.
Re:Go 1.19 Released by staticassertion on Tuesday August 02, 2022 @03:39PM (#32323299)
Not sure what your point is. Mine is that throwing out decades of compiler optimizations is a serious cost to pay.
Re:Go 1.19 Released by geodel on Tuesday August 02, 2022 @03:52PM (#32323462)
Thats a kind of gaslighting isn't it. Seem to be saying no one dare to write new compiler ever because v1 of new compiler will be very likely worse than v10 of existing compiler technology.

If they could have simply use LLVM they would be stuck with slow compilation that Rust folks are very fond of telling. And they would not be able to use segmented stack which was differentiating factor for language.

Re:Go 1.19 Released by steveklabnik on Tuesday August 02, 2022 @04:32PM (#32323912)
I thought Go removed segmented stacks in 1.3. Is that incorrect?
Re:Go 1.19 Released by coder543 on Tuesday August 02, 2022 @04:58PM (#32324220)
Go doesn’t use segmented stacks anymore, but it does still have resizable stacks that start small and are technically able to grow to any size.

IIRC, they were artificially capped at 1GB a few years ago since it was decided that stacks larger than that usually indicate an obvious bug, and if infinite recursion causes a goroutine stack to consume all memory on a machine, the OOM killer would make this harder to diagnose than a reproducible panic with a backtrace.

Re:Go 1.19 Released by staticassertion on Tuesday August 02, 2022 @03:54PM (#32323479)
I didn't say it was the wrong call. My favorite part about new languages is being able to look at their choices over the course of decades.
Re:Go 1.19 Released by geodel on Tuesday August 02, 2022 @04:05PM (#32323611)
Well it is implied, if one talk only about great cost but not benefits.
Re:Go 1.19 Released by staticassertion on Tuesday August 02, 2022 @04:07PM (#32323630)
The post is about the optimization being implemented now. The cost is that it wasn't implemented before. I find that interesting.
Re:Go 1.19 Released by morelisp on Tuesday August 02, 2022 @03:59PM (#32323544)
> Thats a kind of gaslighting isn't it.

No, jesus christ, not every bad take is gaslighting.

Re:Go 1.19 Released by pjmlp on Tuesday August 02, 2022 @03:58PM (#32323539)
Another one is adding yet another reason to keep writing code in C and C++.
Re:Go 1.19 Released by aliqot on Tuesday August 02, 2022 @03:36PM (#32323277)
Generics were a mistake. @ me in the parking lot about it.
Re:Go 1.19 Released by morelisp on Tuesday August 02, 2022 @03:40PM (#32323310)
I'm hoping atomic.Pointer's performance gain offsets the dependency of ours that rushed to switch to some generic slice function library and basically doubled memory allocations on a near-critical path.
Re:Go 1.19 Released by srpen6 on Tuesday August 02, 2022 @03:52PM (#32323457)
> dependency of ours

which one?

Re:Go 1.19 Released by morelisp on Tuesday August 02, 2022 @03:57PM (#32323523)
Why does it matter?

We didn't pay for it, so I'm not going to drag anyone personally for something that's a cultural issue. If you're worried because you might use it, you'll see it in your benchmarks just like we did. If you don't have benchmarks, it's the least of your performance concerns.

Re:Go 1.19 Released by srpen6 on Tuesday August 02, 2022 @05:05PM (#32324296)
why do you need to be so combative? I like to learn from others mistakes if I can. If you don't want anyone to learn anything from your issue, and force everyone to figure out everything for themself, thats your choice.
Re:Go 1.19 Released by morelisp on Wednesday August 03, 2022 @02:13AM (#32328216)
If you're interested in learning from the issue, ask "what's wrong with X?", not "who did X?"

In which case I'd recommend jerf's post at http://www.jerf.org/iri/post/2955, or my comments at https://news.ycombinator.com/item?id=30804253, or even just reasoning a bit from first principles about how intermediate slices would perform given Go's memory/execution model.

Re:Go 1.19 Released by toqy on Wednesday August 03, 2022 @09:43AM (#32331567)
Simply show us X then. Nobody cares who wrote it.
Re:Go 1.19 Released by morelisp on Wednesday August 03, 2022 @11:30AM (#32333075)
It's your lucky day! You're replying to exactly the comment where I did!
Re:Go 1.19 Released by nindalf on Tuesday August 02, 2022 @05:30PM (#32324525)
They've made it clear - they don't want to denigrate a library they're using, likely for free. Imagine the author of that library seeing such a comment. I'm sure you'd find it educational, but it's a terrible experience for the author.
Re:Go 1.19 Released by dw-im-here on Thursday August 04, 2022 @07:33AM (#32341587)
Should it be a parking lot for blue audis? Or a parking lot for red toyotas? or a parking lot for [Object object]? string? {}?