Hacker Read top | best | new | newcomments | leaders | about | bookmarklet login

Being able to do a trivial hello world doesn't make a language elegant.


sort by: page size:

It's still a vastly simpler language than pretty much any other widely used language out there. Consistency is superseded by pragmatism in the language design.

All the examples where they're useful are contrived.

And simplicity is an actual goal of computer language design.


There is a verbose and enterprisy smell to the language itself. Just compare the hello worlds in java and python...

Apart from that, I agree with you.


The language is simple, the implementation is anything but.

Because of the decades of things not displacing it - when someone suggests "oh we'll just do it simpler" they often are not seeing the forest for the trees.

Simpler languages have been shipped dozens if not hundreds of times, and they generally tend towards expressing the things they missed or not giving enough functionality for the things they missed.

I am not saying its impossible, but you're going to have to do a lot more than hand waving to justify the reverse position.


Those three flaws are brought up repeatedly because they are a sad regression from the current state of the art in programming language construction. It could've been a much nicer language with very little effort, but its designers chose not to do so.

At the risk of inviting a flame-war, it's distressing to me that a language this recent, with such a purported focus on simplicity, has design-problems this fundamental

They can simplify code, but they don't simplify the language.

It’s too simple and refuses to offer any sort of syntactical sugar. Error handling requires lots of boilerplate. No enumerations. Etc etc.

My point is that this weakens the argument that having a complicated language isn't such a big deal since you can just use a subset of the language.

There's a lack of language features that result in verbosity, boilerplate, less performance and/or less type safety.

Oodles of boilerplate to do stuff that's a (simple and understandable) one-liner in several other languages.

It's a dumbed down language, not a simplified language.


Just because a language makes it easy to create and maintain interfaces doesn't mean that interface was a good idea to begin with.

The implementation being clever in parts does nothing for the language itself.

I don't like people pretending that the language is simple, and commenters berating other languages for being complex while the language they promote and defend has quite a few of complex things and awkward workarounds for no reason.

Some of those features are just some fancy libraries, or syntactic sugar that you can ignore, if you want to. They don't make the language itself more complicated.

I don't like the idea of a language encouraging sloppy coding.

Language design is hard, but... Jesus Christ, Go really just threw away 50 years of CS language research/experience in the name of “simplicity”.

It’s simplicity is also it’s crutch. It lacks so many niche things (like math) that every implementation have their own syntax.
next

Legal | privacy