Live data from Hacker News

The Go Programming Language, or: Why all C-like languages except one suck.

syntax-k.de

21–30 of 110 posts

Re: The Go Programming Language, or: Why all C-like languages except one suck.

#21
post #2

So while C may be as lightweight as it can get, it's not really suitable for projects with more than 10k LOC. I believe John Carmack would have something to say about this. http://en.wikipedia.org/wiki/Id_Tech_3

There's a difference between being suitable and being the only alternative currently available given the other constraints. There's lots of big software written in C not because C is convenient or well-suited for writing that kind of software, but because performance trumped the other concerns. Particularly in 1995, when computers were slower and other language implementations were slower than they are today.

Re: The Go Programming Language, or: Why all C-like languages except one suck.

#24
post #22

I wouldn't like to base my stuff on a language that is there because of Microsoft's benevolent permission So, he chooses a language that is there because of Google's benevolent permission.

Go has been released with a BSD-style license including patent grants. If Google dropped it tomorrow they couldn't stop anyone else from just picking right up where they left off.

http://golang.org/LICENSE http://code.google.com/p/go/source/browse/PATENTS

Re: The Go Programming Language, or: Why all C-like languages except one suck.

#27
C, for the level of abstraction it targets is an extremely good language, and this is the reason why it is still alive, and why a lot of big successful projects are written using C. The problem is its standard library. The "get this new language" teams should instead focus on how to incrementally improve C. D was a (bad IMHO) attempt, just retry and make it better, a step after the other. If we will wait the ANSI committee we can all get old with strcpy().

IMHO one of the few things that should be addressed at language level is that structures with function pointer members should have a way to be called with the implicit structure pointer (something like "this") as argument. That's all we need from OOP for C. This makes you able to do:

    list *mylist = createList();
    mylist->push(foo);
    mylist->pop();
That's what currently you do like:

    mylist->ops->push(mylist,foo);

Re: The Go Programming Language, or: Why all C-like languages except one suck.

#28
I hope nobody reads this, is irritated by the listed criticisms of other C-like languages, and decides to avoid Go. Go is a very well-designed language. Instead of piling on features, they have optimized for practicality and productivity. After reading "The Practice of Programming", so much of the language is obvious.

Re: The Go Programming Language, or: Why all C-like languages except one suck.

#29
post #7

Earlier quoted context omitted.

Isn't the linux kernel more than 10k lines of code, too? And GIMP?

And numerous compilers and interpeters and other system-level software. The author might be talking about consumer-oriented software, but still saying that C isn't suitable for large codebases is very presumptuous . disingenuous was the wrong word

"And numerous compilers"

Like for instance, C compilers. Cripes that 10k figure is so absurd...

Re: The Go Programming Language, or: Why all C-like languages except one suck.

#30
post #2

So while C may be as lightweight as it can get, it's not really suitable for projects with more than 10k LOC. I believe John Carmack would have something to say about this. http://en.wikipedia.org/wiki/Id_Tech_3

C NOT GOOD FOR LARGE PROJECTS? MAKE QUAKE-C Though for Doom3 and on, they did switch to C++, which makes absolutely minimal usage of the language features, heh. I guess old habits die hard.

"they did switch to C++, which makes absolutely minimal usage of the language features"

This is true of almost every C++ project I've ever worked on. Unfortunately they all used a slightly different minimal set of language features...

Post reply on HN