Would Go be a respectable programming language if it wasn't for this little shit?

Would Go be a respectable programming language if it wasn't for this little shit?

Attached: flat,550x550,075,f.u4.jpg (458x550, 23K)

Go has literally the worst package manager and does not contain classes for object orientation

npm is much worse

we use yarn instead sweetie, keep up
is this supposed to be covert shilling for the new logo
because, no, the new logo is also complete shit

Go was just created for a very specific type of googler that it lost sense of what the general "public" (not really, but you get what I mean) actually wants from a language.

It's not covert shilling, the new logo managed to be just as bad as this.

Modules are in beta and they are great

>complaining about classes and not the more obvious excluded feature; generics

It's not a real language without a funky mascot

Attached: lithp.png (256x223, 41K)

Gopher is cute, my favourite mascot.

>does not contain classes for object orientation
>t. pajeet, unable to comprehend how OO works with muh classes and muh virtual private friend inheritance singleton factory

>does not contain classes for object orientation
wtf I love google now

This. Go should not have classes, at all, ever. It's core design relies on having a different mechanism that does the same thing, and does that arguably better.

It already has structural subtyping with interfaces for when you need late-bound polymorphism and encapsulation. It has mixin-based inheritance with struct embedding for when you want a new type to automatically delegate all non-overridden operations to an instance of a previous type. This covers pretty much all cases that you would need classes for.

The primary issue with Go is the poor package management and the lack of generics. To a lesser extent, it also lacks a good mechanic for error handling, and it makes nil ridiculously pervasive in the language to an even larger extent than fucking Java.

These issues are enough for me to not bother with it because I absolutely need generics for what I do. But they don't matter too much for beginners who do work that Go is suited and has libraries for. Despite Go's flaws, I really like many of the decisions related to the language implementation, especially its approach to value types vs references, and concurrent GC with a stack for each goroutine & extensive escape analysis in the compiler to automatically avoid heap allocations.

Whenever you write a line of Go, you're supporting G*ogle.

no, it fucking isn't.

npm is a proper pdm. go has fuck all that even matches the quality of npm or to rustfags, cargo.

>that pic
Accurate considering it's a Jewish language.

>> Accurate considering it's a Jewish language.
Go back to Jow Forums with your nonsense. The only jewish languages are hebrew and yiddish.

CLISP is not Common Lisp

how come threads bashing go always bang on about meaningless shite?

"i-i don't like the mascot"
"i-i don't like checking for errors immediately, i prefer exceptions"
get fucked shitter

Forgive me, dear sirs, what ethnicity was McCarthy again? Because I'm having trouble remembering...

>MOMMY I NEED GENERICS I CAN'T USE AN EXTERNAL PREPROCESSOR MOMMY BABBY NEED GENERICS MOMMY WAAAAAAAAAAAAAH WAAAAAAAAAAAAAAH

What about when you post a WebM on Jow Forums?

Attached: babby.jpg (635x414, 15K)

>I CAN'T USE AN EXTERNAL PREPROCESSOR

you're a fucking mental nut. why do c fags feel they need to inject their incompetence in other languages?

Not an option. A major reason for having generics in my case is for memory alignment & avoiding heap allocations. A preprocessor that desugars everything into interface{} would mean a heap allocation for every member of a custom data structure, which is terrible.

There are several names for such approaches. Choose the one that doesn't make you feel stupid:
• having a 3-digit IQ
• being initiated to problem solving
• having basic cognitive abilities
• being intelligent enough to become an engineer
• being capable to get shit done
• using one's 150 trillion synapses for something other than wanking to nu-male-targeted cartoons

no, there are several anti-reasons for such approaches. if your shitty language isn't powerful enough to have metaprogramming without deferring to some shitty garbage amcro lang like c preprocessor, your language sucks ass. much like c does already.

>some shitty garbage amcro lang like c
Thank you for outing yourself.

At least it's not some kind of degenerate furry meme mascot though.
>"but gophers are furry..."
You know what I'm talking about.

Attached: download (22).jpg (143x144, 2K)

>ignoring the rest of the statement. figures, don't evne know how c preprocessor.

here's a protip faggot. no one wants to learn your shitty special snowflake Go preprocessor DSL because your fag lang isn't powerful enough to have compile time metaprogramming constructs.

t. intellectually incapable of solving problems

adding a preprocessor on a shitty language is not solving problems you fucking child.

why don't you go back to being the boomer senior software engineer of your irrelevent shitsville company where you can write aborted custom garbage-tools that no one fully understands or work correctly.

the grown ups will continue to use languages made in this century which have basic bitch metaprogramming constructs like templates/generics, constexprs and more.

Go is poorly designed; deal with it.

>go back to being the boomer senior software engineer
Tell me more about your Scaka/Haskell project.

Attached: flower.jpg (225x225, 17K)

That mascot makes it very hard to take it seriously.

>emulating generics with text substitution macros
jesus I thought only cniles were that desperate

Attached: vomit.png (389x213, 88K)

Does the job. Not my problem if rustlets like you are jealous for not being as clever.

Mostly, but there is also

Attached: 1507428132684.png (586x578, 37K)

>doesn't understand how to object orientation
>blames go
structs and methods are a thing. just because it doesn't have inheritance doesn't mean it isn't object oriented. inheritance is fucking retarded anyways

Rust has real generics and real (AST-aware) macros.

It also has REAL shitty syntax

OOP is garbage. OOP is an invention to make programming more in-sync with enterprises. You literally do not need OOP to do anything. You can use functional programming with structs to do everything. Go is an example of this.

fuck Go and fuck this little shit

>Go
>functional programming
you can't even write a map function, what the fuck are you talking about

I'm not but what are first class functions and why you can't write a map function with them?

>OOP is garbage
Found the Cnile. Go back to the psychiatric facility where you belong.

And there's example from first google search result:
func Map(vs []string, f func(string) string) []string {
vsm := make([]string, len(vs))
for i, v := range vs {
vsm[i] = f(v)
}
return vsm
}

here

>what are structs

Is there a real reason to learn Go especially if you've already learned Rust?

First class functions are functions which can be treated as values like ordinary data. They can be stored in variables and passed to other functions as arguments.
It's quite easy to emulate this in languages which don't have it, but do have objects. All you need to do is create an interface with a single method. IDK if Go has fist class functions, but if it doesn't then it doesn't matter horribly.
map is a generic function, that's the real problem. It takes a list of T, applies some function to every element in the list, and returns a list of U.

C programmers need to go back.