News for hackers. Stuff that matters.
Re:Idiomatic Generics in Go by zuzun on Tuesday September 30, 2014 @01:15PM (#8389446)
I'm sorry but this is utter nonsense and shows the quality of most "Go lacks generics" discussions. Go manages to do so many things so much better than C [0], the boldness of your statement leaves me speechless.

[0] Just to name a few: Go has packages instead of header files, one simple build command instead of Makefiles, embedded structs, interfaces, allows you to declare functions everywhere, multiple return values, panics, a huge (!) platform independent standard library, native platform independent concurrency, saner string handling, lists, dictionaries, iota, cross-platform and cross-architecture code via file names instead of macros + autotools, ...

I really can't understand how people dismiss all of this and claim a programming language is useless because it lacks a single feature.

Re:Idiomatic Generics in Go by norswap on Tuesday September 30, 2014 @06:23PM (#8391726)
You misunderstand me.

I am not saying C does things better than Go. I am saying it is less expressive.

In the sense that there are a lot of things you simply cannot implement in C, whereas you can implement them -- in an ugly and unsafe fashion, it is true -- in C.

Generics is not the only example. You can easily get exceptions in C with setjmp and longjmp for instance. You can even get garbage collection in C (and not only talking about the conservative Boehm stuff, you can use fat pointers -- yes it's unwieldy and ugly, but it works).

As for all the niceties, yes there are there, but you can implement most of them in C also (and, in fact, people have).

You'll notice I did not even say C was better than Go.

My actual thoughts on the matter is that they're not made for the same use cases -- albeit one of my problem with Go was always figuring its use case. Apparently I'm not the only one confused, because the language creators expected to get C users, they got Python user instead. As you said yourself, it has more niceties, so maybe it is kind of a middleground when more performance or concurrency is needed, but C is deemed to tricky or unsafe. As I have learned to navigate my ways around C's pitfalls (and boy, there are some pitfalls!), I don't think I'll ever be tempted to use Go (at least, if the language doesn't change significantly).

I'm also not some kind of C fanatic, I use Java, Ruby or Python if it gets the job done; and while I don't really use them for actual work, I have a soft spot for some functional languages.

Re:Idiomatic Generics in Go by bitg on Wednesday October 01, 2014 @12:46PM (#8395855)
You could compare any language to machine language and you can say that language is less powerful. Go is not even close to the power of C and assembly. I'm not gonna even try to argue.
Re:Idiomatic Generics in Go by pessimizer on Tuesday September 30, 2014 @01:23PM (#8389512)
I think that when you call something utter nonsense, and name a lot of reasons why you think it's utter nonsense, you should be obligated to explain at least one. It's not clear why the features you mention are better than their C equivalents.
Re:Idiomatic Generics in Go by NateDad on Tuesday September 30, 2014 @02:44PM (#8390241)
Uh, which of those aren't just blatantly obvious? (Totally serious question)
Re:Idiomatic Generics in Go by pessimizer on Wednesday October 01, 2014 @11:00AM (#8394907)
None of them are obvious to me at that level of detail. (Totally serious answer)