back

by signa11·16y ago·view on hn ↗
imho, arguing that java and c++ both have the same deficiencies is not totally accurate. java seems to be no where as complex as c++ even with generics. however, java to me seems more complex because it is verbose. and it is verbose because it is too simple. when the language is made simple, the complexity gets pushed into the user code a.k.a the "waterbed theory of complexity".

not sure if Go programs would still read like "quiet conversations between a well-spoken research worker and a well-studied mechanical colleague" in a decade or so of some real world usage. a fine line to walk between increased sophistication & noise...

1 comments
Go might have a chance, I think, particularly because of its interface system. Defining interfaces based on an object's methods gives the programmer compile-time assurance that objects can do what they'll need to without requiring an unstable, ever-growing tower of types. It may be simple like Java, but its central abstraction is less rigid.

More info: http://golang.org/doc/effective_go.html#interfaces_and_types

Add to this Go's garbage collection and clean built-in concurrency model, and you've eliminated much of what bugs me in day-to-day C++. Go could still blow it with a poor treatment of generics, but I think it stands a good chance of doing Java and C++'s jobs in a much more concise, 'quiet' style.