Ask HN: Why Isn't Go Functional?
1–10 of 20 posts
Re: Ask HN: Why Isn't Go Functional?
#2Re: Ask HN: Why Isn't Go Functional?
#3Re: Ask HN: Why Isn't Go Functional?
#4Re: Ask HN: Why Isn't Go Functional?
#5Re: Ask HN: Why Isn't Go Functional?
#6Murray Hill gathered together people focused on solving real problems for the most distributed industry in the last 150 years. They had the opportunity to witness technologies and solutions that worked. And I quite sure that they suffer those that doesn’t.
From my humble point of view, Go is a compromise of what works in real life, the first time I see the go compiler, I traced it back to the good things of Limbo, C, object oriented programming and the adding of a simple syntax to create CSP concurrency made it a killer application.
Re: Ask HN: Why Isn't Go Functional?
#7Hence, I think the first sentence of your question has no effect on the question. For the question of >why isn't it functional? I think current state of Go is performing enough for Google's problems.
Re: Ask HN: Why Isn't Go Functional?
#81) Who said that what you "keep reading" about functional language is true?
2) Even if true, who said that what you "keep reading" about functional language is true in all cases?
3) Who said other factors don't come at play, and might be even more important?
4) Who said a language has to adopt functional principles wholesale, and isn't it enough that it has some (as languages increasingly get)?
5) Doesn't the IT industry always find some methodology to hype as the silver bullet, much akin to the diet industry? Maybe functional programming is one of them?
6) If you don't have personal experience with functional languages or can't personally appreciate whether they really do make "reasoning about code easier", why take what you read about them at face value? Perhaps they miss something?
7) To argue on the other side, who said that when a large company builds something, they get it right? Often it's the inverse.
8) Who said Go was built "by Google" in the strong sense? Go was a rogue project from a small team AT Google. It wasn't an official Google effort (the way Java was for Sun, .NET for MS, and so on) to make an official Google language. It's just that that group was concerned with "what language features would be a good fit for the work with do here at Google" -- but the inverse is not true, Google as a company/management/etc wasn't concerned with building such a language. They just went ahead with people devoting time to the project.
9) Who said the Go team has kept with the times (or even with older but still relevant PL research)?
What I write above are not answers and are not meant to be "the truth", they're meant to make one see the situation more critically.
Re: Ask HN: Why Isn't Go Functional?
#9Because they wanted it to be actually usable by the vast majority of programmers developing real world solutions? Not saying that functional programming doesn't have a place but if it was as wonder as some people say it is it would take over the world because the shops that used it would way outperform those who don't but for most things that doesn't appear to happen.
Functional programming is certainly better in a lot of ways, but Google wasn't trying to build a "good" language, they were trying to build a "good enough" language, which is why it doesn't really innovate, but merely pulls in familiar features into a simple package. Go isn't the best at anything, it's just good enough at several things, and very simple to learn, and that's exactly why Google uses it.