Live data from Hacker News

Hacking Go's runtime with generics

dolthub.com

41–50 of 113 posts

Re: Hacking Go's runtime with generics

#41

Earlier quoted context omitted.

Yea - but that's offered by all modern languages, and they're not tied to one particular IDE since LSP took off.

> that's offered by all modern languages I see you've yet to meet Scala. > they're not tied to one particular IDE since LSP took off. There's at least one language server for Kotlin. I'm not even a interested in (let alone a user of) Kotlin, but you seem to have a very not-objective view of it for some reason.

Are you saying Scala has bad code analysis? I recall it being as good as Java's. Anyway, that's just a matter of defining "modern languages" then.

> There's at least one language server for Kotlin.

I didn't say there is none, I said that any modern language has one. An IDE is not a selling point anymore, in my humble opinion.

> you seem to have a very not-objective view of it for some reason

I just think that shoehorning Kotlin into "the go niche" is absurd , and that the "good code analysis" argument is moot.

Re: Hacking Go's runtime with generics

#42
post #28

Earlier quoted context omitted.

Then use an AOT compiler, plenty of those for JVM since 2000. While one can excuse themselves that they were commercial, GraalVM native image, and OpenJ9 offer free beer alternatives.

You're totally missing the point of the niche in question.

Indeed, compiling to native code is missing the question apparently.

Or is the niche not being able to understand JVM languages, that expect developers to have PhD skill levels, as per Rob Pike's own words?

Re: Hacking Go's runtime with generics

#43
post #25

Earlier quoted context omitted.

Unfortunely that isn't always a choice that we can influence, project => language, and in some cases that implies using a language that we dislike, regardless of how we feel about it. One can go job hoping as alternative, but then good luck jumping jobs everytime one has to deal with stuff we dislike.

I hopped jobs to go from using Go to Rust, I was sad and bored, now I'm happy and energized. Always going to be things you dislike for sure, but life's to short to be using a language that's making you miserable.

Which is true, assuming the job market is great on the area, which even on IT isn't the case.

Thankfully I seldom have to deal with Go anyway.

Re: Hacking Go's runtime with generics

#44
post #40
post #25

Earlier quoted context omitted.

Unfortunely that isn't always a choice that we can influence, project => language, and in some cases that implies using a language that we dislike, regardless of how we feel about it. One can go job hoping as alternative, but then good luck jumping jobs everytime one has to deal with stuff we dislike.

True, but can you really work day by day in a language and still not understand its appeal? I mean, not like it, but at least understand why others might choose to use it? And, if you really can't bring yourself to see the positive sides of a language you have to use (and any mainstream language has to have positive sides, otherwise it wouldn't be mainstream), maybe it's really time to consider switching jobs...

I see Go's appeal as a better C for userspace code, and the language is quite nice had it been released during the days Oberon and Limbo mattered in the mid-1990's.

As post 2000 language, its design isn't that appealing.

The language would have been as mainstream as Oberon and Limbo were, if the authors weren't working at Google.

Re: Hacking Go's runtime with generics

#45
post #5

I do not understand the appeal of go. > The proposal argues that Golang developers are forced to work around language when writing hash-based data structures like Tries or concurrent hash maps. Developers who want an efficient hash-based data structure have only the builtin map to choose from. When this issue was originally created in 2017, Golang didn't have generics And then the author goes to tell us about how thi…

> I do not understand the appeal of go.

I am an amateur dev developer and used to use untyped languages (Python and JS, mostly).

At some point Python was annoying in docker environments (especially for APIs) and I gave a try to Go. Initially I hated it, then learned to like it more and now I kinda like it.

- typed (this is a game changer)

- compiles to a single self-contained binary (easy with Docker)

- great for APIs without the worries of gunicorn and whatnot

I also discovered TypeScript to help with JS.

So the forst one would be "typed language". I have Python for the rest ("the 2nd best language for any task") and since I am an amateur dev, I do not have the time to dig into many languages to find the pearl.

Re: Hacking Go's runtime with generics

#46
post #15
post #5

I do not understand the appeal of go. > The proposal argues that Golang developers are forced to work around language when writing hash-based data structures like Tries or concurrent hash maps. Developers who want an efficient hash-based data structure have only the builtin map to choose from. When this issue was originally created in 2017, Golang didn't have generics And then the author goes to tell us about how thi…

What I do not understand is why on every article about Go someone needs to extol their dislike of Go. If you don't understand its appeal, then either you should give it a (serious) try and see if you like it, or if you are unable to bring yourself to do that, just use those better (according to your opinion) languages.

It's like a hackernews meme at this point, complete with "I used Go before and my life was a meaningless void and then Rust came into my life and now I see the light." It's all so predictable and boring and derails nearly every Go thread.

Re: Hacking Go's runtime with generics

#48
post #15

Earlier quoted context omitted.

What I do not understand is why on every article about Go someone needs to extol their dislike of Go. If you don't understand its appeal, then either you should give it a (serious) try and see if you like it, or if you are unable to bring yourself to do that, just use those better (according to your opinion) languages.

It's like a hackernews meme at this point, complete with "I used Go before and my life was a meaningless void and then Rust came into my life and now I see the light." It's all so predictable and boring and derails nearly every Go thread.

The hackernews meme a few years ago was about how Go could do no wrong, and any perceived deficiencies was it due to being opinionated. Maybe this is a backlash?

Re: Hacking Go's runtime with generics

#50

Honest question: isn't Go a bit of a weird choice for a database given the GC? Why not C/C++/Rust?

Why can't a database be written in a garbage collected language?

I believe you usually want as much control of memory management as possible as it can be a great place for finding performance improvements and also help in delivering very consistent performance. Automatic memory management is a great aid in reduction of the complexity you have to deal with, but you presumably want to deal with that completely in the context of a database.

Seems like this: https://www.cockroachlabs.com/blog/why-go-was-the-right-choi... and more specifically this: https://www.cockroachlabs.com/community/tech-talks/challenge... would be good to explore for how cockroach has made it work w/ Go+GC.

Post reply on HN