Why invent a new language? Go creator explains
Saturday, 21 August 2010

Why Go? Do we need another language? One of the creators of Google's new language Go explains some of the inner reasons for inventing a new language - including boredom generated by waiting for code to compile.

Banner

 

It seems to be all too easy to invent a new language at the moment and as a result there are a lot of choices on offer. From having only a small number of languages that were "important" we now have  enough to make the beginner's question, "which language should I learn/use" a really difficult one.

As well as the long standing minority a languages such as Perl, and PHP, we now have Python, Ruby, Clojure, Scala, Erlang, F#, Objective C, D and so on. This list isn't accurate or authoritative it's just a list of languages that have been brought to my attention because of books, news items or general interest.

It has never been easier to create a language - the tools are more than ready - but does this explain why new languages are springing up like weeds? Another likley factor is dissatisfaction with the old languages. InformIT has an interesting interview with Rob Pike the designer of Google's Go language.

"The starting point was long compile times—for some of our big software at Google, build times can be unreasonably long, even with our large distributed compilation clusters. The dependency management (or lack thereof) in C and C++ results in far too much code going through the compiler.

You might say that Go was conceived while waiting for a big compilation."

So Go is a response to slow builds. (Read the rest of the interview: All Systems Are Go). The mainstream languages are bloated seems to be a common opinion - but there are reasons why they are "big" and it is a law of languages that new "small" languages grow to be "big" as they accrete features.

See what you think of the new v old argument as you watch Rob Pike's recent presentation at OSCOM.

 

New languages are fun but I Programmer's conclusion is that they divert valuable talent away from the real job in hand - getting the languages we already have into good shape.

 

Go

Further reading

Go with Google - Yet Another Language!

Getting started with Google's Go

Language Implementation Patterns

Banner


Azure AI And Pgvector Run Generative AI Directly On Postgres
26/03/2024

It's a match made in heaven. The Azure AI extension enables the database to call into various Azure AI services like Azure OpenAI. Combined with pgvector you can go far beyond full text search. Let's  [ ... ]



Avi Wigderson Gains Turing Award
16/04/2024

Israeli mathematician and computer scientist, Avi Wigderson, is the recipient of the 2023 ACM A.M Turing Award which carries a $1 million prize with financial support from Google.


More News

<ASIN:0763776270>

<ASIN:1590591348>

<ASIN:0805316701>

<ASIN:0471113530>

<ASIN:155860698X>

Last Updated ( Sunday, 21 April 2019 )