Rust is what C++ programmers made to replace C

Go is what C programmers made to replace C

Note: this isn't just an analogy, this is actually true

Rust was made by Mozilla, whose flagship product is written in C++

Go was made by the plan9 alumni, whose flagship product was written in C

Also the difference in quality between Firefox and plan9 is revealing in and of itself

@sir I'm not informed enough to tell about the quality of both. And I kind of want to play with too. But it still isn't clear for me what are it's "killing features" that distinguish it from the other languages/platforms, there must be some.

@amiloradovsky @sir isn't go's whole selling point *not* being featureful? It's all about being simple enough to scale to a codebase shared by lots of engineers.

Hence the whole "lol no generics" meme for the first few years of Go.


@max @sir I'd say "generics" ((type-)parametric structures/modules) is an important feature, although somewhat complex.
Being small and simple is an advantage, but only among the systems with roughly equivalent functionality. And there are languages/systems even simpler and smaller than it, yet more powerful.

@amiloradovsky @max I'm gonna be that fucking nerd who says that generics are dumb and go is better without them

@sir @max I value your opinion, honestly. Yet, many data-structures utilize them to a great benefit.

@amiloradovsky @max that's not really true. Data structures are just encoded into memory. What you mean is that their abstractions in programming languages often use generics

@sir @max How else would you define the type of a list or vector of elements of a fixed, but arbitrary, type?

@sir @max OK. It's built-in. But every possible parametric data-structure can't be built into the language.

@veer66 @amiloradovsky @max my concern is that this doesn't feel like a Go feature to me. Go has this awsome habit of sitting quietly on contentious features like generics for a while so all of the smart people involved in Go can have a good think on it, then finally coming out with an industry-shaking elegant solution to the problem. Go modules are a great example: it was shit for a long time and then a solution was found which puts every other dependency management solution to shame. I want to see the same thing happen for generics, and I'm prepared to wait as long as necessary for the right design to be found

@veer66 @amiloradovsky @max these proposals will work... but none of them have the elegance go is famed for

Sign in to participate in the conversation
Functional Café

The social network of the future: No ads, no corporate surveillance, ethical design, and decentralization! Own your data with Mastodon!