[Boards: 3 / a / aco / adv / an / asp / b / bant / biz / c / can / cgl / ck / cm / co / cock / d / diy / e / fa / fap / fit / fitlit / g / gd / gif / h / hc / his / hm / hr / i / ic / int / jp / k / lgbt / lit / m / mlp / mlpol / mo / mtv / mu / n / news / o / out / outsoc / p / po / pol / qa / qst / r / r9k / s / s4s / sci / soc / sp / spa / t / tg / toy / trash / trv / tv / u / v / vg / vint / vip / vp / vr / w / wg / wsg / wsr / x / y ] [Search | Free Show | Home]

Why do you hate Go?

This is a blue board which means that it's for everybody (Safe For Work content only). If you see any adult content, please report it.

Thread replies: 124
Thread images: 9

File: gopherbw.png (167KB, 3861x3861px) Image search: [Google]
gopherbw.png
167KB, 3861x3861px
Why do you hate Go?
>>
>>59577008
botnet language
>>
Lack of parametric polymorphism. Awful error checking.
>>
It has all the drawbacks of C with none of the benefits of C.
>>
I don't.
>>
>>59577038
wrong wrong wrong wrong
>>
>Go was born out of frustration with existing languages and environments for systems programming. Programming had become too difficult and the choice of languages was partly to blame. One had to choose either efficient compilation, efficient execution, or ease of programming; all three were not available in the same mainstream language. Programmers who could were choosing ease over safety and efficiency by moving to dynamically typed languages such as Python and JavaScript rather than C++ or, to a lesser extent, Java.

>Go is an attempt to combine the ease of programming of an interpreted, dynamically typed language with the efficiency and safety of a statically typed, compiled language. It also aims to be modern, with support for networked and multicore computing. Finally, working with Go is intended to be fast: it should take at most a few seconds to build a large executable on a single computer. To meet these goals required addressing a number of linguistic issues: an expressive but lightweight type system; concurrency and garbage collection; rigid dependency specification; and so on. These cannot be addressed well by libraries or tools; a new language was called for.
>>
>>59577247
He's right and you know it.
>>
File: dab.png (449KB, 605x746px) Image search: [Google]
dab.png
449KB, 605x746px
>>59577285
>hire the ""best and brightest"" to work at google
>forced to make a neutered programming language because your best and brightest are actually literal retards with college degrees
>>
>>59577038
More like it has most of the drawbacks of Java without most of the benefits of Java.
>>
slow as fuck
>>
>>59577008
Forced boilerplate literally everywhere. Annoying tooling. Insufferable community.
>>
>>59577341
It's not slow.
>>
>import from github is hardcoded into the language

this is basically leftpad all over again
nice job dating your language spec almost immediately
what happens when someone deletes a repo that thousands of go projects depend on?
>>
>>59577352
>boilerplate

You're either wrong or using this word incorrectly. Go doesn't have any standard boilerplate beyond "package main".
>>
I like Go

Package management is shit though
>>
>>59577008
It's basically Java with a smaller runtime but even less metaprogramming and worse tooling.
>>
>>59577441

> implying package management is a language problem
>>
>>59577483
it kind of is when you have to type go get xyz without any kind of versioning available
>>
>>59577008

It makes programming too easy for normies. Leads to performant and simple software so fucks with my job security
>>
>>59577483
OP didn't say anything about language related issues.
>>
>>59577401
>what is "if err := 0"

There's this wonderful concept called exception handling that apparently the go devs missed out on.
>>
90s: AOT
00s: JIT
10s: interpreted
20s: ?
>>
>>59577584

Why do you like exception handling more than checking errors? Honestly asking.
>>
>>59577584
Inline code that actually does something isn't boilerplate.

There's no consensus on proper error handling or that exceptions are the way to go, many C++ projects actively avoid them, Java added checked exceptions but no one can agree how to use them, Haskell had exceptions that turned vestigial with all the theoretically better alternatives they came up with, Swift and Rust intentionally left them out.

The go developers didn't miss out, they just didn't include features that haven't been proven in the several decades since they were invented.
>>
>>59577584
https://golang.org/doc/faq#exceptions
>>
>>59577057
This.
>>
>>59577008
Because it's shit.
>>
>>59577666
Because it properly propagates at the point where it happens instead of letting incorrect programs proceed into a completely broken state. It's also significantly less boilerplate to manage them than error codes.
>>
>>59577008
Because of that retarded mascot. My blood boils whenever I see that shit
>>
>>59578565
Same here. I tried getting over it but it turned out the language matched the mascot quite well.
>>
>>59578565
>>59578610
get over it, anime fags
>>
>>59577329
>hire "best and brightest"
>they're just pajeets
>>
>>59578688
that's what happens when you turn your hiring process into a mythical lottery and attract only retards and foreigners whose life goal is to work at google.
Why is their process so stringent?
Not everyone needs to be a chief engineer.
When you work in a large company like google, they put you in charge of a single menu item in one menu on one software project and that's literally the scope of your influence on the project as a whole.

They have college educated losers cleaning toilets for fucks sake.
>>
>>59577501

this basically. cant have people knowing programming is blue collar labor. Better to pretend its some intellectual pursuit to scare off the normies.
>>
>>59578993
because python isn't a thing already
>>
Goroutines suck. Their stacks are too big, defeating the silly idea that you could have zillions of them. Their split stacks implementation was promising, but they scrapped it and started copying stacks all over the place instead of just solving the problems. Asynchronous programming is still retarded.

It's just bad overall. Use it if you're a google intern fresh out of college I guess. That's the target audience.
>>
>>59577369
Appearantly its slower than Java nowadays. Then again the jvm is pretty impressive.
>>
>>59577584
Try Common Lisp's conditions and be enlightened.
>>
>>59579478
The JVM is the best virtual machine implementation available today. Any language that targets it is worth using due to the JVM alone... and then you realize you can interoperate with the mountains of code already written and tested in Java.

Microsoft CLR is great as well.
>>
>>59579521
>>
>>59579541
Due to the weird captcha i actually forgot to write my reply

>>59579521
I heard Javas arraycopy is faster than memcpy
>>
As if I even give Go a single thought.
>>
>>59579561
>arraycopy

Sure. Arrays never really overlap; it's a language and garbage collector guarantee.

Memcpy will copy the memory to a temporary buffer to handle the overlapping memory case. the real comparison should be with memove
>>
>>59579478
>>59579521

Huh? https://benchmarksgame.alioth.debian.org/u64q/go.html
>>
>>59579647
Ah must have missed something. Tbh when i wanted to check earlier that site was down.
>>
>>59579647
>microbenchmarks
>>
>Go
more like

Go die
lmfao
>>
Bad programmers only hate go because new languages scare them and make them feel inadequate.

Good programmers see that Go is the current best language that's the most fun, expressive, and fastest to work with.
>>
>>59577057
Glad to hear that /g/ is unanimous on the fact that Go is the most beautiful, cleanly designed language since C.
>>
So Goroutines are more like threads rather than an epoll instance? Why would they do this?
>>
Go. A language developed and invented by a retard who thinks C's flaws are great and C's strengths are useless, all-the-while advocating for the verbosity of java with an even slower vm, because he believes that's what's going to help pajeets keep on being pajeets.

Truly, only people who don't know how to put the poo in the loo can possibly like go.
>>
The binaries are huge. Huge.
I'm not touching it unless they fix this.
They've been trying for a while...
>>
>>59579969
>all-the-while advocating for the verbosity of java with an even slower vm

Go is a compiled language. Opinion discarded.
>>
>>59577008
It does nothing new.

It will not make you a better programmer.

Better off learning Closure or Elixir if you want to get good.
>>
Rust exists.
>>
>>59579874
>Good programmers see that Go is the current best language that's the most fun, expressive, and fastest to work with.

Go is boring as fuck. Literally nothing new or interesting about it. Expressiveness is meh, Java does a better job. Not much faster than Java either, can't really compete with Rust and gets blow out by C in almost all tasks.
>>
>>59580076
Thanks for proving that only retards like go.
>>
>>59580076
>compiled language

Yeah you're stupid enough to not know the difference between language and implementation. Please adopt a trip so I can filter your faggot ass
>>
>>59579991
Go is what Java would be if Java binaries somehow distributed the entire JVM along with them. Of course they're huge.

>>59579874
>u only hate it cuz u dont undrstand

Go kill yourself.

>>59579908
They're more like a thread pool interface. They did it that way because they're all fucking retarded. People actually think you can have millions of these "lightweight" routines without consuming an absurd amount of RAM.
>>
>>59581054
>thread pool interface
a thread pool is when you spawn as many threads as you have cores and you poll events on each thread

that is the most efficient way of doing things (if Go implements it this way)
>>
I saw some Go code importing something from github repos. Apparently this is standard. Can someone explain why this is acceptable?
>>
>>59581094
Last time I checked, a number of goroutines (let's say 100k) will be mapped by the Go runtime onto a much smaller number of actual threads for actual execution.

Their stacks are page aligned. For every virtual memory page allocated by the OS, only one go stack will be present. So, if you have 100k goroutines, then at least 100k virtual memory pages will be allocated. On Linux, PAGE_SIZE is often 4KB by default.

That equals 400 fucking megabytes just for those 100k fucking goroutines. Want one million of them? Better have more than 4 GB of RAM asshole... Cause shit's about to get swapped.

So NOT ONLY do you NOT get the benefits of threads, you incur their stupidly high costs!

Great job faggots...
>>
>>59581124
because modern programming dogma scorns developers who "roll their own libraries" for any reason if a solution already exists

this is why we had the leftpad fiasco where one npm user deleted their account and took down every repo with it because 50,000 software projects had leftpad as a hard dependency
>>
>>59577329
More like hire the """diversity quota""" nignogs then wonder how could you make it easier for them to program.
>>
>>59581184
>modern programming dogma scorns developers who "roll their own libraries"

Good god I really fucking hate those "don't reinvent the wheel" faggots...

But the leftpad fiasco happened because people were stupid enough to depend on a package hosted on some outside repository always being available. They were depending not just on that package, but also on npm hosting it also on the guy's account being valid. It's because JS people are shitty devs who can't see the consequences of the choices they made. This problem doesn't happen with debian packages because they're vastly more competent
>>
>go programmers and advocates

https://dave.cheney.net/2015/06/13/listen-up
>>
Actual google engineer here, I've been working with go on a project for the last year.
>>59577329
>forced to make a neutered programming language because your best and brightest are actually literal retards with college degrees
Most of the code inside Google is either C++, Java or Python or bastardized version of it.
Most people still make memory management mistakes, yes even the non retarded greybeards, and only a turbo autist would stick with assembly of C instead of trying to create some better tooling.

That being said the amount of fucking retarded college students with reasonable algorithms knowledge but no practical low level experience angers me.

The real issues I have with go are, and the reason why C# is best language are:
> if err := someshit(); err != nil {
> painful to do typed errors
> no decent map function/operator, for loops everywhere
> no fucking generics or templating

Most of the go community seems to be aware of these problems though, they are just taking their sweet ass time to fix them.
>>
>>59581343
>C# is best language

I actually really like C# and CLR, but always felt like it'd lock me into Windows when all my tools target Linux. I hear it's cross platform now. Is that right?

What's the most minimal C# development environment I can setup right now? Do I actually need visual studio?
>>
>>59581343
>why C# is best language
Hello sir, I am a witness of Rust and I would like to tell you the good news.
>>
>>59581343
>lack of proper error handling
>lack of functional constructs
>lack of generics
This is the truth.
If they fix all three, they've won me over and I won't use Java ever again for server code.
>>
>>59581383
My C# experience is from when I was at Microsoft. I've never touched the cross platform stuff.

To me most of the cross platform stuff is high class memetics. VS code seems like a good place to start though.
>>
>>59581385
>sir

jeetpah pls
>>
>>59581406
>poojeets
>christian
pick one
>>
>>59581385
I was scared off by the apparent SJW shit in the community. Most of my personal projects are Windows of embedded, so I don't really need to touch a language like that outside of an enterprise environment.
>>
>>59581054
Go allocates N kernel threads, and then schedules M goroutines on top of those N threads. By M read many more, for M >> N.
>>
>>59581429
>the apparent SJW shit in the community

Please do tell the story

I basically collect open source drama, these should make nice additions to my bookmarks
>>
>>59581429
Most of the lunatics have left because nobody was giving them any attention. The only thing they did was give us bad PR.

You should probably look into the language for embedded programming, I know there are people working on libs for that as we speak. C is still king but if someone has a chance of disrupting that space it's Rust.
>>
>>59581451
Go can't do parallelism.
>>
>>59581460
Only things I remember is some people wanting gender neutral philosophers for the example dining philosopher implementation.

That and the CoC bullshit that nobody ever uses (thankfully).

If you look into the people that wanted it you might find some interesing drama, but i'm not really concerned with these politics, I just like to code in peace and have my PRs merged on technical merits.
>>
>>59581460
Things like this:
https://github.com/rust-lang/rust/pull/25640
https://github.com/rust-lang/rust-buildbot/issues/2

The best part about non corporate communities fostering a language is that it doesn't have to be design-by-committee space where everything needs to be sanitized for brand safety. My experience with the rust community was that they voluntarily do this kind of shit, the absolute madmen/women/people/apache attack helicopters.
>>
File: 4k.jpg (584KB, 3840x2160px) Image search: [Google]
4k.jpg
584KB, 3840x2160px
>>59581505
https://github.com/rust-lang/rust/pull/25640

God damn this is gold...

>I just like to code in peace and have my PRs merged on technical merits.

Hahaha time to learn the linux kernel work flow then because Github is fucking dying. Seriously.

What was once a 100% horizontal company full of intelligent developers who just worked has turned into a piece of shit full of managers and with a literal SJW troll openly policing projects and developers on their thought crime.
>>
>>59581471
I probably will eventually, I don't really have enough experience with the language to say there is actually anything technically wrong with rust.
>>
>>59577008
I don't.
It's not very good though. better than C, for one/
>>
forced code formatting is autistic as hell
>>
>>59581545
Hi

great project!! I have one observation and a suggestion. I noticed that you have rejected some pull requests to add some good django libraries and that the people submitting thsoe pull requests are POCs (People of Colour). As a suggestion I recommend adopting the Contributor Code of Conduct (http://contributor-covenant.org) to ensure everyone’s contributions are accepted regarless of their sex, sexual orientation, skin color, religion, height, place of origin, etc. etc. etc. As a white straight male and lead of this trending repository, your adoption of this Code of Conduct will send a loud and clear message that inclusion is a primary objective of the Django community and of the software development community in general. D.
>>
>>59581719
This is incredibly racist on multiple levels.
>>
>>59581749
Here's the full archive with the developer's heroic response.

https://archive.is/dgilk

That issue was deleted because the owner of the project reported it to GitHub as abuse/racism, and they simply deleted the entire issue since it hurts their agenda.
>>
>>59577333
Java has benefits?
>>
>>59581790
The JVM and multiple mountains of existing code are serious benefits.
>>
>>59581763
>they simply deleted the entire issue since it hurts their agenda.

It was an obvious troll.
>>
>>59581540
https://github.com/rust-lang/rust/issues/28059

Rust should be renamed to something which does not discriminate against noble metals. Not all metals corrode, such as ruthenium, rhodium, palladium, silver, osmium, iridium, platinum, and gold, and yet they still make significant contributions to society and thus should not be ignored or bullied. Please change the name of Rust to something that does not discriminate against noble metals. This would also conform better to the Code of Conduct:

We are committed to providing a friendly, safe and welcoming environment for all.
>>
File: 348s.jpg (21KB, 348x348px) Image search: [Google]
348s.jpg
21KB, 348x348px
you can't make your video games with go
>>
>>59581834
kek
Although, I think Rust was named after the type of fungus.
>>
>>59581877
>Rust was named after the type of fungus.

What fungus is named rust
>>
>>59581890
Quick wikipedia search gives a result...
https://en.wikipedia.org/wiki/Rust_(fungus)
>>
>>59581890
Also proof it was named after fungus
https://en.wikipedia.org/wiki/Rust_(programming_language)#History
https://www.reddit.com/r/rust/comments/27jvdt/internet_archaeology_the_definitive_endall_source/
>>
SJWs follow this manual to the letter without even realizing it.

http://svn.cacert.org/CAcert/CAcert_Inc/Board/oss/oss_sabotage.html
>>
File: wtf.jpg (29KB, 439x480px) Image search: [Google]
wtf.jpg
29KB, 439x480px
>>59581545
>with a literal SJW troll

https://twitter.com/CoralineAda/status/702594868984459264

This person is employed by the company to troll project maintainers.
>>
>>59582062
>community management and anti-harassment tools

Jesus fucking christ we're paying them to do this now?
>>
No fucking while loops
>>
File: GnmXnqI.png (35KB, 779x396px) Image search: [Google]
GnmXnqI.png
35KB, 779x396px
>>59581817
The right thing to do is to troll them right back
>>
barely used the language itself so I can't really comment, no strong feelings
I hate it because of the retarded gopher logo
>>
>>59582308
ABSOLUTE MADMAN
>>
File: glenda.jpg (144KB, 1528x1950px) Image search: [Google]
glenda.jpg
144KB, 1528x1950px
>>59582308
>not admiring the fine art and graphic design of Renee French

disgusting
>>
yet another meme language that wouldn't exist if it weren't for LLVM

LLVM is the devil.
>>
>>59582387
>wouldn't exist if it weren't for LLVM

what
>>
>>59582387
On the contrary.

LLVM is God and clang is but one of his prophets.
>>
>>59582387
nevermind, I'm wrong
it's even worse than LLVM
>>
>>59582241
for(;;) {
someCodeForever()
}
>>
>>59581834
as a metal who has challenges rusting, I find the attitude of the project maintainers offensive and I am literally shaking.
>>
Love it.
Much better than any other modern language.
Simple, sane.
Still has a few issues but those can be worked out later.
>>
>>59577666
As if those are the only two options.
>>
>>59577008
Installing software is a bitch.
>>
File: slow.png (66KB, 663x363px) Image search: [Google]
slow.png
66KB, 663x363px
Basically http://sitr.us/2017/02/21/changes-i-would-make-to-go.html .
Oh, it's also slow.
>>
>>59577008
I play Pokemon Go everyday though.
>>
>>59577008
Its good for currency, a lot of people are excited about it. It'll be dead in sometime. Stack less python is something one should go for.
>>
>>59583688
wait wtf? RUST is that fast?
>>
>>59584201
Why wouldn't it be? Most of its abstractions are zero-cost.
>>
>>59584225
did not expect it to be faster than C/C++
>>
>>59584225
Jokes on abstraction on C++ is also zero-cost!
>>
Ubuntu,lubuntu,mint for os
Steam has also a linux/steamso version,not all the games are on there but a big amount.Also PlayOnLinux is a good one
>>
>>59581460
Are you the guy behind https://github.com/nikolas/github-drama ?
>>
>>59584280
I think it's that fast because when you provide higher-level abstractions, you can optimize them further than if you give users lower-level tools to build these abstractions, since you already know what the user is using these abstractions for.
Thread posts: 124
Thread images: 9


[Boards: 3 / a / aco / adv / an / asp / b / bant / biz / c / can / cgl / ck / cm / co / cock / d / diy / e / fa / fap / fit / fitlit / g / gd / gif / h / hc / his / hm / hr / i / ic / int / jp / k / lgbt / lit / m / mlp / mlpol / mo / mtv / mu / n / news / o / out / outsoc / p / po / pol / qa / qst / r / r9k / s / s4s / sci / soc / sp / spa / t / tg / toy / trash / trv / tv / u / v / vg / vint / vip / vp / vr / w / wg / wsg / wsr / x / y] [Search | Top | Home]

I'm aware that Imgur.com will stop allowing adult images since 15th of May. I'm taking actions to backup as much data as possible.
Read more on this topic here - https://archived.moe/talk/thread/1694/


If you need a post removed click on it's [Report] button and follow the instruction.
DMCA Content Takedown via dmca.com
All images are hosted on imgur.com.
If you like this website please support us by donating with Bitcoins at 16mKtbZiwW52BLkibtCr8jUg2KVUMTxVQ5
All trademarks and copyrights on this page are owned by their respective parties.
Images uploaded are the responsibility of the Poster. Comments are owned by the Poster.
This is a 4chan archive - all of the content originated from that site.
This means that RandomArchive shows their content, archived.
If you need information for a Poster - contact them.