Why is this piece of shit silled so hard?

Why is this piece of shit silled so hard?

no dependency management, how is this even possible in a language developed in the 21st century (inb4 go.mod)?

every package must be FQDN path, WTF? Why the fuck must I make a local package as github.com/user/project/package to be imported in the same fucking project, even c is superior to this bullshit


no generics, I can't believe I have to do runtime checks on a switch statement with possible 1000 cases just to do the same function on each type


no enums, are you fucking kidding me? why do I have to create consts with

MuhEnumPossibilityOne =1
MuhEnumPossibilityTwo =2


imagine if I want to define multiple enums in the same package, what the hell


error handling is horrible, err!= nil everywhere pollutes the code and distracts the reader from the actual logic

defer statement is retarded and forgetting or misusing it leads to disasters, there should have been something like RAII or what Rust does to automatically release kernel resources upon leaving the current stack

goroutines give fake sense of concurrency, if you have a goroutine that use a blocking system call, the underlining thread will block and starve other goroutines, Node and even Python have a proper async to make your code blocking-free, how is Go seeking to compete in the cloud and web category which heavily relies on socket system calls without having a native non-blocking handling?


make, new, var are very confusing


channels are slow

FFI is slow

the language is slow compared to almost every other compiled language


It really saddens me when I see even experienced developers fall for this piece of shit of a language

Attached: 9827aff9b763917645b0b1157fc27e2eb6afad2da80ea1ca9a677c5d4bac0aed.png (600x600, 91K)

Other urls found in this thread:

blog.golang.org/error-handling-and-go
twitter.com/NSFWRedditImage

it's in development, backed by a major IT company and it's really good for concurrent programming

>every package must be FQDN path, WTF?
Because they built ONE standard that works well with git.
That's all there is to it. They force it onto you, because this way everything is standardized, and easy to get.
Just accept it and be glad that building stuff written in go is really fucking easy.

>I can't believe I have to do runtime checks on a switch statement with possible 1000 cases just to do the same function on each type
You don't. At all. You just have no idea about the alternatives because nobody taught them to you, since all you learned is OOP.
You are just a brainlet, but be glad that google wants go to become even more successful, which is why they will add generics.

>no enums
Just use iota. But you didn't know about it because you haven't actually used the language much.
const (
A = iota
C
T
G
)


>error handling is horrible,
No. it is explicit and simple, which is good.

>goroutines give fake sense of concurrency,
Bullshit.

>make, new, var are very confusing
Brainlet.

hipster java

not op
>>error handling is horrible,
>No. it is explicit and simple, which is good.
Error handling is terrible i would prefer a separate file were everything gets managed there instead of having to fill my code with ifs statments

>>goroutines give fake sense of concurrency,
>Bullshit.
i think he might be correct

Go fuck yourself Java hipster.
Slow??? See Java, that is slower than your intelligence.
No proper error handling?
Well, in your fucking Java you have that useless shit, that makes it so slow.
See: blog.golang.org/error-handling-and-go

javajeet.

I forget something:
> make, new, var are very confusing
var is confusing for you?
better go to Java and program a brain for yourself.
Oh! That's why your low intelligence and non-sense rant.

It's always sad to see people try to justify their wasted time to others. In reality they are only trying to justify things to themselves.

Soo, what is your so "favorite" language?
You have shame to say it?
Your programming language is so bad that you have shame to say it?

>Java hipster

Attached: 69FDA66A-961C-4299-92FF-B1B4BA69E7AD.png (545x530, 234K)

which is allocated in stack and which is allocated in heap? you low IQ NEET

C

I personally like Java for most applications that aren't resource intensive.
C++ is great for applications that are.
C is ideal for systems and embedded programming.

Rust exists somewhere between C++ and C. I read through the manual and decided I will take a wait and see approach.

Use Erlang / Elixir instead of shitty fucking Go

>No. it is explicit and simple, which is good.
Literally just use monads. Explicit without being boilerplatey.

C has enums

Because (((GOOOOOGLE)))

good idea

>Because they built ONE standard that works well with git.


WTF has the FQDN package path with git? do you even know what's the difference between git and github?

>You don't. At all. You just have no idea about the alternatives because nobody taught them to you, since all you learned is OOP.
You are just a brainlet, but be glad that google wants go to become even more successful, which is why they will add generics

I don't? so I have to rewrite a 100 lines of code into 2000 lines with runtime checks just because I don't have to use generics?


>Just use iota. But you didn't know about it because you haven't actually used the language much

what kind of excuse is this shit? are you even serious? where is the fucking enum type?

>No. it is explicit and simple, which is good

explicit is good? I agree. but it pollutes the code to a degree that makes the risky try/catch looks like a masterpiece of beauty


>Bullshit

lol, no argument? is that hard for you?

>Brainlet
if you ever programmed in c/c++, you will understand, but you never did, because you're the brainlet one here

just use Nim

Any other answer is wrong.

Elixir and Go are very different languages for different use cases. While I can agree with you that golang is somewhat shitty, I'm not a huge fan of elixir either. I can't wrap my head around the fact that Elixir is supposed to be used for projets that need very high concurrency, so probably not your usual shitty startup, while being dynamically typed, which disqualified it as a language you want to use for projects that really need discord-like concurrency.

>dynamically typed
So fucking tired of this meme

>I like Java for most applications
System.getTheFuck.out()

what do you mean by that?

Give me a reason.

I am tired of the rise of dynamically typed languages for the reason you have mentioned.

i don't usually accuse of reddit spacing but YIKES

please stop calling everyone you disagree with a "brainlet".

>made by googlel
>good
pick one

1.Stupidly verbose. It practically forces you to use an IDE to develop in. Very repetitive.
2. OO programming isn't the solution to every problem. Forcing you to make everything a class is dumb. Yes, I know there are ways around this, but they are even more verbose and ugly.
3. Java feels repetitive. You feel like you just keep seeing the same things over and over again.
4. Boilerplate. Writing the same class over and over again. You feel like you just keep seeing the same classes over and over again.
5. Jar hell.Ever tried to migrate from two different j2ee containers? Spending hours, if not days, messing around with different jar versions and adding/removing is pretty common.
6. Compile once debug everywhere.

Go is going to be the language that replaces Java when the paid license for the Oracle Java JDK kicks in. This thread is probably a Oracle shill trying to save a language that is already well obsolete compared to modern languages.

Go is going to win over other modern languages like Swift, D, Rust because the Go package/interface systems replicates the forced OO that has made both Java and C# so easy to work with in large enterprise applications. Unlike Java there is no more OO boiler plate to kill efficient programming by having to instantiate objects every where to do simple things. The Go interfaces will be so much more simple and clear.

Java is dead, long live Go!
(every point brought up by OP is a lie, FUD and stupid bait that is not worth taking even slightly serious)

not with that shitty non-generational non-compacting high overhead GC it won't, also go is just as verbose as java except no option of scala/kotlin

>FUD FUD FUD
all your lies have already been addressed in this thread, just repeating the same bullshit over and over is a tactic used by jews and housewives and so go ahead and cling to your ancient language. I will mention though that Go is not object oriented, it very rarely uses gc compared to a language like Java where everything is an object on the heap that constantly needs to be scanned. So, good luck on your FUD campaign.

excuses, excuses, ok it's so bad, don't use it.

Compile once pay Oracle forever.

>it very rarely uses gc compared to a language like Java where everything is an object on the heap that constantly needs to be scanned.
I'd be surprised if Java doesn't stack allocate as frequently as Go desu. Escape analysis is pretty mature these days. Go needs to do it anyway, since if a reference escapes the current scope then without interprocedural optimization it becomes a necessity to heap allocate the object.

Isn't it Go that constantly scans the heap?

Go is not object oriented, there are never any objects created, unlike Java where every class has to be instantiated to be used. Using classes for modularity is pure bloat, Java and C# are both bloated languages that will never get faster than they are now despite thousands of man years of compiler optimization.

ok awalterschulze

But discord literally uses elixir

The biggest concurrency apps I can think of don't use Go. If anything, Erlang is the king (Whatsapp and Discord)

nobody ever mentions couchdb when talking about erlang :(

I know that avoiding a language just because of the community is stupid, but holy shit, I can't bear this hysterical shilling