5 ms·
I'm sorry, but the world does not need another company-controlled, corporate programming language. .Net (Microsoft), Java (Oracle) and now Go (google). All of
by 16s 13y ago
I'm sorry, but the world does not need another company-controlled, corporate programming language. .Net (Microsoft), Java (Oracle) and now Go (google).
All of these compilers or JIT interpreters are implemented in C or C++ (which are open languages with ISO standards).
It bothers me to no end to see corporations taking control of the fundamental building blocks (programming languages) of technology and then to see technologists and developers go on and on about how wonderful and better these corporate languages are.
With C and C++ and Python and Ruby and Perl we have freedom. With Go, .Net and Java, etc. we do not.
Google already control your search, your browser, your phone, your email and in some cases your OS (Chrome) why would you want them to control you programming language as well? The idea boggles my mind.
I wish others felt as strongly about this as I do. If you want to control your future, then use C or C++ or some other ISO standardized language with lot's of free compilers available, do not use a corporate controlled programming language.
There is a reason go compilers are C and C++.
- tptacek 13y agoI too am upset at the prospect of annoying little text ads popping up in my source code. DOWN WITH GOLANG.
- joshbaptiste 13y agoheh.. classic response
- _pmf_ 13y ago> I too am upset at the prospect of annoying little text ads popping up in my source code. You are not using the correct term. In Web 2.0, these are not called "annoying", but "unobtrusive".
- exch 13y agoGo is completely open source. The primary devs just happen to work at Google. That is all. If anything, the Google name attachment may only serve to help convince management that Go is a safe, long-term bet. If you don't like the Google attachment, you are entirely free to fork the language and make it your own.
- _ak 13y agoPlus there exists not one, but two implementations that fully conform to the spec. So you're not even bound to one specific compiler implementation.
- whyrusleeping 13y agoSoon to be three, llgo is getting closer!
- gingerlime 13y ago> If anything, the Google name attachment may only serve to help convince management that Go is a safe, long-term bet. I'm generalizing, but given "management" lack of technical understanding, and the (general) knowledge that Google shuts down services left right and center, then I'm not sure this is necessarily perceived as such a safe, long-term bet... But I wouldn't have thought that the choice of language is necessarily something that management typically cares about.
- jackielii 13y agoGo is open source: http://golang.org/LICENSE http://golang.org/LICENSE
- 16s 13y agoI never mentioned closed source or open source in my comment. I mentioned "corporate" languages. Go is Google's just as much as .Net is Microsoft's.
- Jtsummers 13y agoA major difference (re dependency on the producer) is that go is a language while .net is a platform. It would be (relatively) easy for users of golang to step away from Google if they became a problem while retaining their codebases. Moving from MS's platform is harder (mono is out there, but is it sufficiently complete at this point?).
- deleted 13y ago[deleted]
- ma2rten 13y agoI don't see the big deal. What the heck are you afraid of? Is Google going to put user tracking into the Go spec? Go has two compilers, both of which are open source and open to external contributions.
- untog 13y agoThe irony of your statement is that Go is open source, and C# is an ISO standard. Those were proactive choices by the companies, and they should really be considered the leading stewards of the language- but not the owners.
- 16s 13y ago1. I never mentioned closed source or open source in my comment. 2. Only a portion of C# is standardized. """The C# language definition and the CLI are standardized under ISO and Ecma standards that provide reasonable and non-discriminatory licensing protection from patent claims. However, Microsoft uses C# and the CLI in its Base Class Library (BCL) that is the foundation of its proprietary .NET framework, and which provides a variety of non-standardized classes (extended I/O, GUI, Web services, etc.). Some cases where Microsoft patents apply to standards used in the .NET framework are documented by Microsoft and the applicable patents are available on either RAND terms or through Microsoft's Open Specification Promise that releases patent rights to the public,[38] but there is some concern and debate as to whether there are additional aspects patented by Microsoft that are not covered, which may deter independent implementations of the full framework.""" source - http://en.wikipedia.org/wiki/C_Sharp_%28programming_language%29#Standardization_and_licensing http://en.wikipedia.org/wiki/C_Sharp_%28programming_language...
- icebraining 13y agoOnly a portion of C# is standardized. And none of Python, Perl or Ruby are.
- TheCoelacanth 13y agoRuby has an ISO standard.
- icebraining 13y agoSo it does, I wasn't aware. Though, is the version submitted still supported by any modern interpreter?
- coldtea 13y ago>I'm sorry, but the world does not need another company-controlled, corporate programming language. .Net (Microsoft), Java (Oracle) and now Go (google). The world begs to differ. For one, Java and the JVM have a huge ecosystem, and nobody's complaining. And .NET is huge on Windows, and nobody's complaining their either. Actually, they rather like it that MS is in charge. [For the conversational english challenged, "nobody" means "a few outliers don't count"]. Oh, and Go is open source with a large community. >All of these compilers or JIT interpreters are implemented in C or C++ (which are open languages with ISO standards). Which is beside the point. Almost all compilers and JITs are written in C/C++. So what? >With C and C++ and Python and Ruby and Perl we have freedom. With Go, .Net and Java, etc. we do not. With those you have SOME freedoms. With .NET and Java you have OTHER freedoms. E.g I have the freedom to take advantage of a huge collection of libraries, with top-notch commercial support for a lot of them, and use them in around 4-5 top notch languages like Clojure, Scala, JRuby etc, with the most performant JIT in town. All the other options you mention don't give me THAT freedom. >There is a reason go compilers are C and C++. Portability, familiarity and low-levelness? Also, you DO know that C (and IIRC C++) were once created and controlled by a corporation (AT & T) too, right?
- MetaCosm 13y agoBut for those who choose languages for pragmatic rather than cultural (religious) reasons, Golang is a fairly good egg. Liberally licensed (BSD Style + Patent Grant). Focused on the problems of modern large scale systems. With modern message passing, great build / deploy tooling, an opinionated structure and formatting standard -- it really makes putting together LARGE system with many moving pieces much easier.
- laumars 13y ago> I'm sorry, but the world does not need another company-controlled, corporate programming language. .Net (Microsoft), Java (Oracle) and now Go (google). .NET isn't a language and Java and Go are both open (but with the main contributers being employees from the aforementioned corporations). > All of these compilers or JIT interpreters are implemented in C or C++ (which are open languages with ISO standards). Layers of abstraction are there for convenience otherwise we'd also shortcut C++, C and even assembly and would be writing everything in machine code. > Google already control your search, your browser, your phone, your email and in some cases your OS (Chrome) why would you want them to control you programming language as well? The idea boggles my mind. I actually do get the Google paranoia. It's why I cut down on my dependence on them as well. But Go doesn't up-sell Google's services like Chome (which isn't an OS by the way - you must be thinking of ChromeOS), Android, Gmail and so on. And let's be honest, other popular languages have born out from businesses: C from AT&T, Borland lead the charge with Pascal, Microsoft had their version of BASIC bundled with many of the most popular micro PC's of the 80's. Need I go on? > There is a reason go compilers are C and C++. Yes, but it's not the reason you're thinking of. The problem was one of the chicken and the egg. It's all well and good writing Go's compiler in Go, but then how are you going to compile it? A language needs to reach a certain threshold before it becomes possible to write a compiler in it's own language. C had the same problem when it was young too. > I wish others felt as strongly about this as I do. If you want to control your future, then use C or C++ or some other ISO standardized language with lot's of free compilers available, do not use a corporate controlled programming language. The reason people don't agree with you is because: a) C++ would be overkill for a web framework (which is one popular application) and b) half your points are based on misinformation.
- bentcorner 13y ago> It's all well and good writing Go's compiler in Go, but then how are you going to compile it? A language needs to reach a certain threshold before it becomes possible to write a compiler in it's own language. Is Go not at this point yet? I only have casual knowledge of the language, but it sure sounds like it is capable of building itself.
- 13y ago
- icebraining 13y agoI think your point is a little incoherent, since C# is an ISO standard, while Python, Perl and Ruby aren't, nor do they have "lots of free compilers available". Personally, I don't use Gmail, Android, Chrome or ChromeOS, for real reasons pertaining to data ownership, privacy and maintenance of services, but I see no reason not to use their fully BSD licensed tools that I can run on my own hardware. If Golang 2.0 suddenly prevents you from making HTTP requests to any server outside the Google networks I'll be pretty pissed, but I find that pretty unlikely.
- 16s 13y agoOnly part of C# is standardized. The majority of it is not. http://en.wikipedia.org/wiki/C_Sharp_%28programming_language%29#Standardization_and_licensing http://en.wikipedia.org/wiki/C_Sharp_%28programming_language... There are several free Python and Ruby interpreters and they are not corporate controlled. Ruby does have an ISO standard (ISO/IEC 30170:2012).
- icebraining 13y agoThere aren't "several" free Python interpreters. PyPy is still in an early stage and Jython still doesn't have a stable version supporting Python 2.7. Golang has two different implementations (6/8g and gccgo), one of which part of the GNU project, so it's not particularly behind.
- whyrusleeping 13y agodont forget llgo!
- azakai 13y ago> PyPy is still in an early stage That's unfair.
- tezza 13y agoIf they're as nasty as you say... please don't look at the major contributors to your OSS toolchain. You'll find the $EVIL_COMPANY quite well represented there too.
- rbehrends 13y ago> With C and C++ and Python and Ruby and Perl we have freedom. With Go, .Net and Java, etc. we do not. Unfortunately, there is an important language design space that is not covered by C, C++, Python, Ruby, and Perl, which is that of statically typed, imperative languages with automatic memory management. C/C++ give you static typing, but not automatic memory management; Python, Ruby, and Perl give you automatic memory management, but not static typing. And unfortunately, while there are quite a few languages with these features, only few have the critical mass, long term support, and infrastructure to justify investing in them for serious development.
- pjmlp 13y agoOberon, Oberon-2, Component Pascal, Active Oberon, Modula-3, ...
- rbehrends 13y agoIs this agreement or disagreement? Because all these languages don't have high critical mass, long term support, or a great ecosystem.
- pjmlp 13y agoSorry, I missed your comment > And unfortunately, while there are quite a few languages with these features, only few have the critical mass, long term support, and infrastructure to justify investing in them for serious development. So I guess I agree with you. I started coding in 1986, on those days C was just another language and OS were written in Assembly, PL/I, Pascal, Modula-2 and probably many others we never heard of. I always used C only when required to do so, hoping a stronger type language would take its place. And jumped into C++ as a better C as soon I discovered the language in 1992, but given its C roots many problems still persist nonetheless. The problem is that a language to gain critical mass needs a corporation that pushes it into the mainstream, or a framework/library that makes developers want to use the language.
- zobzu 13y agosounds like rust
- pjmlp 13y agoC and C++ are corporate languages as well, ask AT&T.
- scott_s 13y agoAll of these compilers or JIT interpreters are implemented in C or C++ (which are open languages with ISO standards). Both of which originated in AT&T Bell Labs.
- binarycrusader 13y agoNot quite true. Microsoft has an undue amount of influence over both C and C++ thanks to the Windows platform and their questionable lack of full support for the relevant language standards. Ultimately, what controls a language is who controls the market and who employs most of the people implementing the most popular compilers/interpreters for it. The only reason C++ lives on is because platform holders have been willing to support it; and those platform holders are large corporations.
- gngeal 13y agoAll of these compilers or JIT interpreters are implemented in C or C++ (which are open languages with ISO standards). Technically, if I'm not mistaken, Go is (currently!) implemented in Plan 9 C, which is not the same thing as ISO C. Also, Go is very different from .NET and Java. For starters, it was published in source pretty soon after it had been announced. You have your freedom right there.