Is Go bad?

I've heard snide comments here and there, mostly related to it being overly simple.But is there anything actually wrong with it? Is it the worst thing ever? Is it JavaScript bad?

Other urls found in this thread:

dartlang.org/
reddit.com/r/programmingcirclejerk/
github.com/ksimka/go-is-not-good
docs.microsoft.com/en-us/dotnet/framework/net-native/
twitter.com/SFWRedditGifs

for what it is, it's pretty damn good. for .NET or Java or C++ people it's not nearly enough.

therefore it entirely depends on whether you think it's a one-size-fits-all language or not.

>static types, but no generics
>no exception
>verbose
would rather use javascript/10

t. pajeet

>everyone I don't agree is pajeet
t. pythonista

It's only good if you want to write small concurrent networking software. And even then its usefulness is debatable.

>would rather use a language with no concurrency
t. pajeet

generics are a crutch

exceptions are an awful, overly verbose, obfuscated approach to error handling

verbosity is lesser than in any other C derivative

It would be ignored like an undergraduate's toy language if Google weren't pushing it. But all the deficiencies in the language itself (which is a boatload, believe me) are more than compensated by its god-tier tooling and libraries. You can write super fast code super quickly, which is why some of the most intelligent programmers in the open source community are writing impressive software in it (e.g. Ethereum, IPFS, Caddy, Docker, etc.).

>It would be ignored like an undergraduate's toy language if Google weren't pushing it.
Then why didn't dart take off?

Because it started with the laughable goal of displacing JavaScript. Its early adopters realized they were sold a pipe dream when the Chrome team refused to integrate Dart VM into the browser, then promptly abandoned it.

People dislike the error handling. But in comparison to C it's glorious.
Due to lack of generics it's not good at writing collections. Sometimes impossible to DRY.
C, C++, Rust, D: all beat it at number-crunching.
Lack of standard package manager, but there is gpm - 100loc shell script using git to fetch and version-control dependencies. Personally prefer it over non-transparent package managers of other languages because you can just read it in 10 minutes and know exactly what it does, and it does all I want.
CG is tunable for lower latency. Can be statically compiled and is easily portable.
Basically enforces certain codestyle. I use BSD KNF which is nearly the same, but fags putting parenthesis on next line and not using 8-tab indent have butthurt.
Less verbose than C. Big standard library and many mature libraries.

So it's great language that however does not fulfill every usecase and many people dislike it for retarded reasons.

Go isn't that bad, but I don't trust google enough to use it

...

>with the laughable goal of displacing JavaScript.
Now that wasm is taking off what's stopping them?

this is cute, ty

>WASM
>displacing JS
you need to have written more than hello world to post in this thread

this WASM is DOA

how to admit you got completely and utterly wrecked: the post

wasm is a target language it's not meant to replace JS but rather allow things beside JS in web front end development

>yet

Its pretty good, senpai.

>generics are a crutch
I love dynamic


dispatch it's so fast and very good for


performance

Seriously though, who the fuck though "let's make one language to rule them all in 10 days time and not allow any other language to be used on browsers hereafter". Goddamn web devs are fucking retarded. The earlier user critized Go for being the brainchild of some dumb undergrad, well guess what JS is? What's worse than an undergrad hotshot?

This is probably the most fair critique I've seen. Most people are little bitches when it comes to languages that aren't like their most known language. Some thing are killer though in a modern language, like no generics. Collection libraries are VERY IMPORTANT. An associative array, standard arrays, and objects are "enough" to build the most other data structures, but fuck, maybe convenience is worth a simple generics implementation.

Dart is still being developed and used by Google internally.

dartlang.org/

Type erasure is great

Very good for safety and

Debugging

>he thinks Java generics are the only generics

What is interface?
void*

Just as bad as Java generics, except they don't even have the pretense of type safety.

It's fun to learn, but after a while you realize that there's a lot of better languages

There aren't a lot of options if you want:

> garbage collection
> statically typed
> fast compile times and static binaries
> decent concurrency and parallelism
> good standard library that is supported on all three major operating systems

That's why Go is gaining a lot of popularity.

That's Java and C#, except they also have generics and exceptions.

>static binaries
I don't think so

Neither Java nor C# compile to static binaries on all three major operating systems without purchasing a closed source compiler.

Fuck. I read static linking, in hindsight that makes no sense. Even still, static compilation is becoming a meme as jitting gets better and better.

If someone were absolutely autistic enough, they could make a MSIL to native compiler. The spec is open.

Try it or you'll never know. Start with the tour.

It's pretty sweet. Kinda like Reversi but you have to think more

Reminder that this retard is unironically a redditor
reddit.com/r/programmingcirclejerk/

>Generics?! Just use Interface and then do type assertions at runtime!

I mean, how fucking inane do you even have to be as a language designer to make a statement like that?
Whom did they learn from? PHP?

C. I hope you love void*.

Its creator literally stated that it's designed for halfwits
>The key point here is our programmers are Googlers, they’re not researchers. They’re typically, fairly young, fresh out of school, probably learned Java, maybe learned C or C++, probably learned Python. They’re not capable of understanding a brilliant language but we want to use them to build good software. So, the language that we give them has to be easy for them to understand and easy to adopt.
- Rob Pike

That hardly counts, that language was made super early.

Go has no excuse.

Also, technically, C has the _Generic keyword now which allows you to create type aware macros. Though, Macros are a horrible crutch and probably the reason why huge C codebases are so incredibly difficult to understand because of all the magic.

>They’re not capable of understanding a brilliant language
Only Pike could be self-unaware enough to constantly call everyone who isn't him a retard and wonder why no one takes his ideas very seriously.

github.com/ksimka/go-is-not-good

_Generic is a misnomer, it resembles function overloading more than it does templating or generics. Also C's type system sucks so any kind of inference is prone to give you the wrong result.

craaaaawling iiiiin my skiiiin

Rob "Go suck a Dick" Pike

>weird mascot
quality list

A Company called "Microsoft" is autistic enough.

docs.microsoft.com/en-us/dotnet/framework/net-native/

>100 LOC
>known purpose
>read in 10 minutes

lmao low brain detected

How did you find this?

Just use Rc in Rust, that's close enough