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?
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.
>>61854176
>static types, but no generics
>no exception
>verbose
would rather use javascript/10
>>61854245
t. pajeet
>>61854261
>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.
>>61854245
>would rather use a language with no concurrency
t. pajeet
>>61854273
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.).
>>61854358
>It would be ignored like an undergraduate's toy language if Google weren't pushing it.
Then why didn't dart take off?
>>61854368
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.
>>61854176
Go isn't that bad, but I don't trust google enough to use it
>>61854383
>with the laughable goal of displacing JavaScript.
Now that wasm is taking off what's stopping them?
>>61854460
this is cute, ty
>>61854463
>WASM
>displacing JS
you need to have written more than hello world to post in this thread
>>61854502
this WASM is DOA
>>61854460
how to admit you got completely and utterly wrecked: the post
>>61854517
wasm is a target language it's not meant to replace JS but rather allow things beside JS in web front end development
>>61854502
>yet
>>61854176
Its pretty good, senpai.
>>61854320
>generics are a crutch
I love dynamic
dispatch it's so fast and very good for
performance
>>61854502
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 anon critized Go for being the brainchild of some dumb undergrad, well guess what JS is? What's worse than an undergrad hotshot?
>>61854431
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.
>>61854383
Dart is still being developed and used by Google internally.
https://www.dartlang.org/
>>61854642
Type erasure is great
Very good for safety and
Debugging
>>61854848
>he thinks Java generics are the only generics
>>61854867
What is interface?
void*
>>61854899
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
>>61854958
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.
>>61855050
That's Java and C#, except they also have generics and exceptions.
>>61855607
>static binaries
I don't think so
>>61855607
Neither Java nor C# compile to static binaries on all three major operating systems without purchasing a closed source compiler.
>>61855651
>>61855656
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.
>>61854176
Try it or you'll never know. Start with the tour.
>>61854176
It's pretty sweet. Kinda like Reversi but you have to think more
>>61854245
>>61854460
Reminder that this retard is unironically a redditor
https://www.reddit.com/r/programmingcirclejerk/
>>61854176
>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?
>>61856084
C. I hope you love void*.
>>61856084
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
>>61856102
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.
>>61856134
>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.
https://github.com/ksimka/go-is-not-good
>>61856157
_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.
>>61855050
craaaaawling iiiiin my skiiiin
>>61856134
Rob "Go suck a Dick" Pike
>>61856185
>weird mascot
quality list
>>61855872
A Company called "Microsoft" is autistic enough.
https://docs.microsoft.com/en-us/dotnet/framework/net-native/
>>61854431
>100 LOC
>known purpose
>read in 10 minutes
lmao low brain detected
>>61856065
How did you find this?
>>61855050
Just use Rc<Lul> in Rust, that's close enough