Learn GO

user, why haven't you ditched C, C++, and Java for GO? It's way better.

Other urls found in this thread:

golang.org/doc/asm
golang.org/doc/faq#Is_Google_using_go_internally
talks.golang.org/2012/splash.article
nomad.so/2015/03/why-gos-design-is-a-disservice-to-intelligent-programmers/
twitter.com/SFWRedditGifs

Because fuck Google that's why.

w-why the hostility, user?

OK, so I'm learning C now. Should I try Go after I get the basics of C down? What can you do with Go compared to other languages?

Go is (nearly) unusable for most of the things people actually use C, C++, and Java for

not even Google uses it.

>user, why haven't you ditched C, C++, and Java for GO?
Why would I use something that has a featureset straight from 1970s and mid-1980s and also has a GC?

Golang's fucking antiquated garbage.

b-because it's better a-and open source

Aaron?

i agree with OP

How do embed asm in go?

Shit thread
Anyone who knows anything about programming knows how shit Go is

good for making APIs

No jobs in the area. If I got paid to I'd learn it

Name one thing legitimately wrong with garbage collection

Badoo does, tho.

What's wrong with it? I don't know it well enough to notice any flaws.

too slow

Because CL

Absolutely nothing user! It's a great language to learn, it IS the future.

Too busy being a fucking CUDA god. Go bitches can't even get on my parallel computing level.

...

>expecting Sup Forums to appreciate what Go brings to the table

You can't (to my knowledge) embed asm in the .go files themselves, but you can use the Go assembler in projects.
golang.org/doc/asm

>not even Google uses it.
golang.org/doc/faq#Is_Google_using_go_internally
talks.golang.org/2012/splash.article

>trying to use a GC'd language for real HPC
nah
stick to FORTRAN and c for that, my man.

why would anyone need Go when they have Scala, Elixir and Rust?

>why haven't you ditched C, C++, and Java for GO

>why would anyone need Go when they have Scala, Elixir and Rust?


You don't seem to understand that programming languages are only tools.

Go is not really comparable with C, C++, Java, Scala, Elixir and Rust. You can use is ALONG those languages, but not instead of them.

In the beginning people announced Go as "systems language", but it turned out that they couldn't make it fast enough. Maybe they will in the future, Go has a lot of potential. But right now it's a shiny little thing to make backends or some concurrent models and that's it.

It's neither "the next big thing" nor "a language for retards", it's just a clean and simple little language that's enjoyable and suits entry programmers pretty well.

Something they should use at university to teach people program.

go shill go, learn to use the languages based on usecase

Is Go a good replacement for PHP? It's the only thing I heard it's being used for

It's way worse.

What are you on about? Go isn't even meant to replace C. Neither is rust. Both are replacing c++

is it mature enough for webdev? what if I want to migrate a big Django/Python project to Go? How will it take if I am experienced in C but I know nothing about Go?

Can be used for just about anything.
Yes.
If you know C and are good at it it should take about 1-3 hours to pick up.
Maybe a day to get webdev down.

but I, for example, searched for example for a slugify library couldn't find but a couple of obscure github repos


Go is very tempting to me, a single binary in production with a performance comparable to c/c++, but I am afraid I will discover tons of dev shit in the way

Reminder that many useful features were deliberately not included in Go because the designers were afraid that retards working at Google wouldn't be able to comprehend them.

>big Django/Python project to Go
Assuming that your current codebase wasn't written by a bunch of incompetent retards your new Go codebase will be at least twice as big.
The reason why there's so many "success stories" from people who say that they migrated from X to Go is because they now have better understanding of the problems they are dealing with compared to when the original project started.
Any complete rewrite will usually result in better code regardless of which language you switch to.

because I work in a small team of competent peogrammers and not in a company with 200 retards

> learning a language specifically designed to maximize corporate profits by being as easy to use by literally retards as possible
nomad.so/2015/03/why-gos-design-is-a-disservice-to-intelligent-programmers/

You keep seeing claims that Go is less verbose than Java. Is it really though? I'm sceptical. What does Go have that makes it less verbose than Java 8?

>the Sup Forums nyaameme project is written in meme golang
>it's a horrible mess of stinky shit and doesn't work right
Yeah i think i'll pass on go

>project made in go
>surprised that it looks like a mess

It works fine though. At least you can search for "k-on" unlike the other site.

>In my opinion Go has been designed by people who have been usingCall their lives and don’t want to try anything new.
I'm sold. Go is a language worth learning.

>You don't seem to understand that programming languages are only tools.
I do, and the tools I mentioned cover all of Go's potential usecases, so my question still holds.

1) You need significantly more memory to have a garbage collection system work okay in the first place
2) The pause times are undesirable (and awful in realtime programs)
3) Every time you trace you are wasting performance on tracing objects that shouldn't be collected
4) Less determinism - no destructors

THIS!

I don't need that shit. Google shit at itself when developing that vagina language.

The idea of having a GC is nice, but as some others mentioned before there are performance issues or a bad realtime behaviour. I want to add here it entraps some programmers to ignore memory management. This lowers code quality and can produce hard to find bugs.

I don't need helloworld server, thank you.

>implying some toy language is even in the same league as c++

Try writing a Restful API in Java without taking 2 months and getting depression in the process. In fact try getting anything done in Java. It's just good as an interview/competition language.

You should use C and C++ when you're looking for raw performance and really low level stuff. Go is basically a modern take on C, more convenient to write but not as performant.

Go is simply a modern reimagining of C. If you think C is antiquated already (protip: it's not) then Go will look antiquated to you as well.

>no generics

It's not really a problem when you can use empty interfaces. There are no generics in the traditional sense but you can still get the same functionality that you might get from having generics, you just write it a bit differently.

Usually the people who complain about Go not having generics either don't know much about Go or don't know much about generics.

>protip: it's not
protip: you're a fucking retard.

There are a bunch of frameworks to get stuff up and running quickly. I havent been keeping up but Im sure you can get a simple API off the ground with Spring Roo or Spring Boot or something in a day or so.

Anyway, I thought the selling point of Go was supposed to be no JVM pauses / low latency? You cant fool me that Go has a better ecosystem or 3d party libs because we all know deep down that Java is unrivalled in that area...

>slices are training wheels
>static arrays
>extremely verbose
>designed for retards

>triple dubs for true
Go is garbage

It\s not close to as convenient. Compare to Java where you could get same functionality with marker interfaces before Java 5 and then generics were introduced making the language actually usable.

>why haven't you ditched car for boat
>why haven't you ditched bicycle for snowboard
that's how you sound OP

Pokemon GO fuck yourself, botnet shill

it's too hard. I don't fuxking understand it!!!!

>more convenient to write
Debatable.
>but not as performant.
That's quite the understatement.

lolgenerics

Because Rust

Fucking this

>Go is basically a modern take on C, more convenient to write but not as performant.
No it isn't is extremely verbose and fuck slices. If you're already forcing people to use try/catch blocks every fucking where you could just force them to use them to access arrays too.

If you're just making an API Go will work out fine even though it's a ridiculously shitty language.

If you're doing template rendering, authorization and authentication, proper security (CSRF, XSS, CORS, session fixation etc.) and a lot of database work it will probably be a massive waste of time. Django does a lot that people take for granted.

99% of the build it all yourself shit that a lot of Go and Clojure programmers advocate end up being far, far worse than projects just done in one of the major frameworks and they usually have dozens of security problems to boot.

I'm not sure but I bet you could just double embed it by writing C for cgo and embedding the asm in that, although using the assembler and .s files directly might be better depending on your situation.

I don't work for Google that's why

Yeah, I use authentication, sessions, oAuth2, Redis caching for models (I do it manually) and Jinja2 for template rendering.

My main problem with Django is its shitty ORM, I've spent ridiculously long hours trying to figure out ORM lines that never gave me what I actually wanted. Slowness of Python is another thing but not my main concern here.

My biggest fear in Go is that most frameworks aren't popular enough so there can be many security bugs in them

>null references

It can Go in the garbage