6 ms·
Meanwhile I will never use Go until it has generics. I wonder if there is more of people like me or people like you...
by deanCommie 6y ago
Meanwhile I will never use Go until it has generics.
I wonder if there is more of people like me or people like you...
- leafboi 6y agoChange and human progress is an inevitability. More people are like you. Mind you, change is not necessarily always for the better but it always occurs no matter what. Adapt or die.
- axaxs 6y agoBased on the popularity of the language alone, I can say rather definitely the latter.
- MereInterest 6y agoI'm sure that being backed by the largest software/advertising company in the world has nothing to do with its adoption rate, and that popularity is a direct mapping of quality of a programming language.
- shirro 6y agoThe Google backing and hype kept me away from Go for years. After being stuck with a succession of scripting languages that weren't doing it for me and being frustrated at the time it takes to be as productive in something like c, Go is really the sweet spot of readability, reliability and productivity for me. I think the Google backing may not be as advantageous as some people think. Dart did not become a popular language and would probably have died out if Flutter hadn't come along.
- pansa2 6y agoYeah, Go being from Google is not necessarily a good thing. It means the language is under the control of a single company and, what's more, a company that is well-known for giving up on many of its projects.
- dhagz 6y agoAnd the open-source aspect of Go's development is managed entirely in Google services (the dev mailing list is a Google Group, you can't contribute without a Gmail address...the list is long). Sure it's hosted on GitHub, but the majority of the real conversations are elsewhere.
- Ericson2314 6y ago> frustrated at the time it takes to be as productive in something like c Don't worry, no is productive in something like c > After being stuck with a succession of scripting languages that weren't doing it for me I am saddened yet also consoled everyone that likes Go comes from the scripting languages. That's such a low bar to beat!
- geodel 6y agoRight. Programing languages by advertising companies have high adoption rate.
- coldtea 6y agoWell, dev-oriented projects by Google and Facebook fair well...
- takeda 6y agoYou're saying that as if it's not true How many languages are there released by advertising companies? Just to show the influence, python was an obscure programming language until Google started using it.
- albertsondev 6y agoA good example lies in Kotlin, as well.
- pjmlp 6y agoActually no, Zope was quite famous during the first .com wave. But Python has had many interesting sponsors throughout the years, not only Google.
- scarface74 6y agoI would think that would be a knock against it with the reputation of Google abandoning projects.
- ori_b 6y agoYeah. That's why it's about as successful as Dart.
- pjmlp 6y agoI guess the political wars of JavaScript vs Dart, ChromiumVM and Chrome team dropping Dart on the floor, causing the departure of the original design team, kind of helped to Dart's success. The political wars at Google with Dart are quite visible from outside, with Fuchsia picking up Flutter, and strangely the future of Android UI looks pretty much like Flutter, after too many times asking Android team about what was their opinion on Flutter for Android development at IO Fireside, meanwhile the developers' survey has had questions about how much we cared to see it supported on Kotlin multi-platform. So yeah, had Chrome decided to push Chromium VM no matter what, Dart would be as successful as Go by now, after all younger generations don't seem to have any problem being Chrome developers.
- imtringued 6y agoDart is an example of what happens to a language when corporate support is taken away. People lose confidence in the language.
- coldtea 6y agoThe popularity compared to what? How do the numbers stack up?
- axaxs 6y agoOh, I'm not by any means saying it's the most popular language. I'm just comparing strictly based on the comment, people who like go vs people who will never use it because of its lack of generics.
- mantap 6y agoJava has genetics and it is many times more popular than Go. I'm not sure absolute adoption of Go is a good way of divining programmers opinions on genetics.
- dpc_pw 6y agoTo be fair I will probably not use it even if it has generics, at least not if I can avoid it. It will still have nulls, lack sum types, have messed up dependency management and so on. Though in times when I have to use (because it was not in my control), I would rather have them.
- GolDDranks 6y agoYou summarised almost perfectly my gripes with Go. Thank you. Just to add one: any type has a "zero values" as a default value, and the compiler doesn't force you to initialize stuff. That single misfeature caused basically all of my grey hair, and I'm still young.
- marwan-nwh 6y agoWhat do you like to use?
- Diesel555 6y agoVisual Basic, strict mode.
- kerkeslager 6y agoI'm not a stickler for any specific features: it's more about having a group of features that synergize with each other. So far I've not found a language that does this perfectly, but I've found a few that I think do better than Go: 1. Elixir: Pros: Erlang threading model is clearly the best I've come across, expressive syntax, strong data structures and algorithms in standard library. Cons: Slow for some things, anemic standard library for common problem domains, small community. 2. Python: Pros: Strong standard library for common problem domains, supplemented by a strong community set of libraries. Generally intuitive. Cons: Slow for some things, poor threading, inconsistencies in syntax, general dominance of configuration-oriented programming frameworks rather than libraries in the community, types are just not quite strong enough. 3. C#: Pros: strong type system, speed. Cons: dependency injection hell, MS walled garden. I'd like to add Rust and/or OCaml, to this list, but I don't know either well enough to be confident.
- bcrosby95 6y agoA language can't be everything to everyone. Given its age it is very widely used. So I'm not sure the lack of genetics is really hurting adoption. You run the risk of driving away existing users but not attracting people that already wrote the language off. I say this as someone that doesn't use it for similar reasons as you. But I have ran into the above trap before.
- deanCommie 6y agoI don't know, in any production system without generics, the code just looks amateurish...
- pansa2 6y agoThe thing is, for people who want generics, sum types, non-nullability etc, there are plenty of other languages to choose from. For those who specifically want a simple language, Go is (was?) one of very few options.
- Ericson2314 6y agosum types and non-nullability are not complex.
- sa46 6y agoSure they are. Sum types usually mean a pattern matching syntax, destructuring, and a different declaration syntax. Rust’s match keyword, for example, is a powerful construct covering guards, destructuring, and different types of binding. Non-nullability requires generics for a result type which is a huge source of complexity. Generics impact parsing, code gen and runtime efficiency.
- entha_saava 6y ago1) Non nullability can be implemented in language without generics, and for all types instead of just pointer types. That can be used to enforce null checking with pattern like: if let var_name = nullable_var { // use var_name as non nullable } else { // nullable_var in null, handle null case } And any tagged union can be reduced to nullable of member type without pattern matching, with some specific syntax. It is not hard with an imperative language. 2) Without generics, you are probably reinventing the same code, or using reflection which is not even type safe, or worse, using code generation. For instance D has generics AND good compile times. I guess Nim compiles fairly well too. Or you can choose partially type erasure based generics with a different tradeoff. There is no point in not having useful generic functions on generic data structures in a language that came in 2000s. Once write Python or ruby or something and come back to Go. People without knowledge of other languages with generics tend to think you are writing for loop in while loop in if - else break monstrosity because native compilation and performance come with a cost in expressiveness, while it need not be.
- gjs278 6y agoI don’t know what a generic is and nobody can explain it correctly. the language is fine as is and can do anything you want. if it takes a bit more code to cover what generics would have done, I don’t care. if it’s preventing someone like you from using it, maybe that’s a good thing.
- badrequest 6y agoAs we all know, the only true value a programming language has is whether or not a majority of programmers align with its ethos.
- qtplatypus 6y agoGiven the Polls of go programmers have consistently shown that the lack of generics is a problem.
- lkramer 6y agoWhere do I participate in those polls? I'd like to put my voice against.